/reportportal

Main Repository. Report Portal starts here - see readme below.

Primary LanguageShellGNU General Public License v3.0GPL-3.0

Join Slack chat! stackoverflow GitHub contributors Docker Pulls License Build with Love

Report Portal organized into multiple repositories.

Application Core based on micro-services architecture and includes next mandatory services: structure

Repositories structure

ReportPortal server side consists of the following services:

  • service-authorization Authorization Service. In charge of access tokens distribution
  • service-gateway Gateway Service. Main entry point to application. Port used by gateway should be opened and accessible from outside network.
  • service-api API Service. Application Backend
  • service-ui UI Service. Application Frontend
  • service-jira JIRA Service. Interaction with JIRA
  • service-rally Rally Service. Interaction with Rally

Client side adapters related repositories:

  • client-* - API integrations. Http clients, which process HTTP request sending.
  • agent-* - Frameworks integration. Custom reporters/listeners, which monitor test events and trigger event sending via client-*
  • logger-* - Logging integration. Logger appenders, which help to collect logs, bind it with test-case item via agent-* and send to server via client-*

Other repositories stored according to next rules

  • service-* - micro-services which are a part of Application
  • commons-* - common libraries, models, etc., used by micro-services

Installation steps

Simple set with Docker

Best for demo purposes and small teams. MongoDB database included into the compose.

  1. Install Docker (Engine, Compose)
  2. Download Example of compose descriptor to any folder
$ curl https://raw.githubusercontent.com/reportportal/reportportal/master/docker-compose.yml -o docker-compose.yml
  1. Deploy ReportPortal using docker-compose within the same folder
$ docker-compose up

To start ReportPortal in daemon mode, add '-d' argument:

$ docker-compose up -d
  1. Open in your browser IP address of deployed enviroment at port 8080
$ http://IP_ADDRESS:8080
  1. Use next login\pass for access: default\1q2w3e and superadmin\erebus.

Please change admin password for security.

Mentioned compose file deploy all available Bug Tracking System integrations, which not always needed, but use resources

Production-ready set and Custom deployment with Docker

For production usage we recommend to:

  • deploy MongoDB database at separate enviroment, and connect App to this server. MongoDB is mandatory part.
  • choose only required Bug Tracking System integration service. Exclude the rest

To customize deployment and make it production-ready please follow customization steps and details

Integration. How to get log data in

You should add Client Side code inside your test automation. It consits of:

  • client-* - API integrations. Http clients, which process HTTP request sending. E.g. for Java (client-java-*)
  • agent-* - Frameworks integration. Custom reporters/listeners, which monitor test events and trigger event sending via client-*
  • logger-* - Logging integration. Logger appenders, which helps to collect logs, bind it with test-case via agent-* and send to server via client-*

Integration steps and documentation

Contribution

There are many different ways to contribute to Report Portal's development, just find the one that best fits with your skills. Examples of contributions we would love to receive include:

  • Code patches
  • Documentation improvements
  • Translations
  • Bug reports
  • Patch reviews
  • UI enhancements

Big features are also welcome but if you want to see your contributions included in Report Portal codebase we strongly recommend you start by initiating a chat through our Team in Slack.

Contribution details

Documentation

Community / Support

License

Report Portal is GNU General Public License v3.0.