kochetkovma/allure-server

By kochetkovma

Updated 7 months ago

https://github.com/kochetkov-ma/allure-server

Image
12

1M+

Allure Portal (Allure Report Server)

See example on allure.iopump.ru or allure-server.herokuapp.com
Run container
docker pull kochetkovma/allure-server:latest
docker run -p 8080:8080 kochetkovma/allure-server:latest

Or use docker-compose.yml

docker-compose up -d

Got to http://localhost:8080 - will redirect to OpenAPI (Swagger UI)

To store all data on your local file sytem mount volume:
docker run -p 8080:8080 -v /allure-server-store:/allure kochetkovma/allure-server:latest

Upload results

Only allure2 supported
Make some allure results and create zip archive with these results, for example allure-results.zip in your root dir

curl --location --request POST 'http://localhost:8080/api/result' \
--form 'allureResults=@/allure-results.zip;type=application/zip'

Response:

{
    "fileName": "allure-results.zip",
    "uuid": "1037f8be-68fb-4756-98b6-779637aa4670"
}

Save uuid
Don't forget specify form item Content type as application/zip. Server works with zip archives only!

Generate report

For generate new report execute POST request with json body:

curl --location --request POST 'http://localhost:8080/api/report' \
--header 'Content-Type: application/json' \
--data-raw '{
  "reportSpec": {
    "path": [
      "master",
      "666"
    ],
    "executorInfo": {
      "buildName": "#666"
    }
  },
  "results": [
    "1037f8be-68fb-4756-98b6-779637aa4670"
  ],
  "deleteResults": false
}'

Response:

{
    "path": "master/666",
    "url": "http://localhost:8080/allure/reports/master/666/index.html"
}

Memorize url

WARNING: Generated Reports, and their History are grouping by path key. This key means something like project or job or branch. The latest report with the same path will be active: It is not a real path - it's a logical path. The same situation with path column in GUI!

Access to generated reports

After generating you can access the report byhttp://localhost:8080/allure/reports/master/666/index.html

You may get all reports

curl --location --request GET 'http://localhost:8080/api/report'

Or by path as branch name master

curl --location --request GET 'http://localhost:8080/api/report?path=master'

You may get all uploaded results:

curl --location --request GET 'http://localhost:8080/api/result'

Clear results or reports:

curl --location --request DELETE 'http://localhost:8080/api/result'
curl --location --request DELETE 'http://localhost:8080/api/report'
GUI

Allure Server provide WEB UI to access to reports and results.
By default WEB UI is available on path /ui and there is redirection from / to /ui
Example: http://localhost:8080/ui
WEB UI provides the same functions as a REST API
WEB UI is implemented with Vaadin 14

WARNING: Generated Reports, and their History are grouping by path key. This key means something like project or job or branch. The latest report with the same path will be active: It is not a real path - it's a logical path. The same situation with path column in GUI!

Main PageMain Page

See example on allure.iopump.ru or allure-server.herokuapp.com
See

https://github.com/kochetkov-ma/allure-server

Docker Pull Command

docker pull kochetkovma/allure-server