Report Portal organized into multiple repositories.
Application Core based on micro-services architecture and includes next mandatory services:
ReportPortal server side consists of the following services:
service-authorization
Authorization Service. In charge of access tokens distributionservice-api
API Service. Application Backendservice-ui
UI Service. Application Frontendservice-index
Index Service. Info and health checks per service.service-analyzer
Analyzer Service. Finds most relevant test fail problem.gateway
Traefik Gateway Service. Main entry point to application. Port used by gateway should be opened and accessible from outside network.rabbitmq
Load balancer for client requests. Bus for messages between servers.minio
Attachments storage.
Available plugins developed by ReportPortal team:
plugin-bts-jira
JIRA Plugin. Interaction with JIRA. Link to downloadplugin-bts-rally
Rally Plugin. Interaction with Rally. Link to downloadplugin-saucelabs
Rally Plugin. Interaction with Rally. Link to download
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 viaclient-*
logger-*
- Logging integration. Logger appenders, which help to collect logs, bind it with test-case item viaagent-*
and send to server viaclient-*
Other repositories stored according to next rules
service-*
- micro-services which are a part of Applicationcommons-*
- common libraries, models, etc., used by micro-services
Best for demo purposes and small teams. MongoDB database included into the compose.
- Install Docker (Engine, Compose)
- Download Example of compose descriptor to any folder
$ curl https://raw.githubusercontent.com/reportportal/reportportal/master/docker-compose.yml -o docker-compose.yml
- Deploy ReportPortal using
docker-compose
within the same folder
$ docker-compose -p reportportal up
To start ReportPortal in daemon mode, add '-d' argument:
$ docker-compose -p reportportal up -d
- Open in your browser IP address of deployed environment at port
8080
$ http://IP_ADDRESS:8080
- Use next login\pass for access:
default\1q2w3e
andsuperadmin\erebus
.
Please change admin password for security.
Mentioned compose file deploy all available Bug Tracking System integrations, which not always needed, but use resources
For production usage we recommend to:
- deploy MongoDB database at separate environment, 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
You should add Client Side code inside your test automation. It consists 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 viaclient-*
logger-*
- Logging integration. Logger appenders, which helps to collect logs, bind it with test-case viaagent-*
and send to server viaclient-*
Integration steps and documentation
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.
- Slack chat
- Security Advisories
- GitHub Issues
- Stackoverflow Questions
- VK
- YouTube Channel
Report Portal is Apache 2.0.