All Projects β†’ pbylicki β†’ rfhub2

pbylicki / rfhub2

Licence: Apache-2.0, Unknown licenses found Licenses found Apache-2.0 LICENSE Unknown LICENSE.rst
Rewrite of rfhub with FastAPI

Programming Languages

python
139335 projects - #7 most used programming language
typescript
32286 projects
RobotFramework
109 projects
Mustache
554 projects
HTML
75241 projects
Dockerfile
14818 projects

rfhub2

Build Status codecov image image image Docker Cloud Automated build Docker Cloud Build Status

Introduction

RfHub2 is an opensource project aimed to provide nice and easy way of collecting, browsing and sharing documentation of existing keywords written in RobotFramework and python. Built with Material-UI and FastAPI, served by Uvicorn.
Project is inspired by robotframework-hub created by Bryan Oakley and can be treated as its spiritual successor.

RfHub2 is hosted on GitHub, where sourcecode, current issues and additional documentation can be found.

Installation

As python package

latest version can be installed from PyPi:

pip install rfhub2

or directly from source code:

python setup.py install

With docker

pull docker image with SQLite:

docker pull pbylicki/rfhub2

or PostgreSQL:

docker pull pbylicki/rfhub2:postgres

With helm chart

create app on kubernetes cluster

helm upgrade --install rfhub2 helm/rfhub2 -n [NAMESPACE] 

will create all needed resources with configuration from values.yaml

Starting application

Run application (web server)

To run with default (SQLite) database:

rfhub2

To run with PostgreSQL database:

RFHUB_DB_URI=postgresql://postgres:postgres@localhost:5432/postgres rfhub2

To run application using docker image with default (SQLite) database:

docker run -it -p 8000:8000 pbylicki/rfhub2

To run application using docker image with Postgres database:

docker run -it -p 8000:8000 --network=host -e RFHUB_DB_URI="postgresql://postgres:postgres@localhost:5432/postgres" pbylicki/rfhub2:postgres

Populate application with keywords documentation

To populate application running on localhost:

rfhub2-cli ../your_repo ../your_other_repo

To populate app running on another host, with non-default credentials:

rfhub2-cli -a http://your_host:8000 -u user -p password ../your_repo ../your_other_repo

To populate app but to skip loading RFWK installed libraries:

rfhub2-cli --no-installed-keywords ../your_repo ../your_other_repo

To populate app only including or excluding keywords with tags matching custom patterns (more information on the include/exclude feature here):

# Including keywords containing tag "your-tag" and not containing tag "your-other-tag":
rfhub2-cli --include your-tag --exclude your-other-tag ../your_repo ../your_other_repo

# To populate app only with keywords containing either tag "πŸ’‘" or "πŸ”§", and tag "πŸ€–":
rfhub2-cli --include πŸ’‘ORπŸ”§ANDπŸ€– ../your_repo ../your_other_repo

# To populate app only with keywords containing tags starting by "important-tag-":
rfhub2-cli --include important-tag-* ../your_repo ../your_other_repo
Rfhub2-cli for keywords documentation can be run in three load-modes:
  • merge, default mode, updates only matched collections, does nothing with not matched ones rfhub2-cli --load-mode=merge ../your_repo ../your_other_repo
  • insert, that will clean up existing collections app and load all collections found in provided paths rfhub2-cli --load-mode=insert ../your_repo ../your_other_repo
  • append, which will only add collections from provided paths rfhub2-cli --load-mode=append ../your_repo ../your_other_repo
  • update, which will compare existing collections with newly found ones, and update existing, remove obsolete and add new ones rfhub2-cli --load-mode=update ../your_repo ../your_other_repo

Populate application with keywords execution statistics

To gather keywords execution statistics:
rfhub2-cli --mode=statistics ../your_execution_dir ../your_other_execution_dir

Since execution statistics from specific run does not change over time, there is no load-mode needed. Application will scan all of the executions and try to send aggregated data from each run to application. rfhub2-cli will complain that there are existing statistics for particular timestamp, and will proceed with next ones.

License

RfHub2 is an open source software provided under the Apache License 2.0

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].