Host Allure reports on the web with History, Retries, Report Aggregation, and Slack integration.
Supported Deployment Targets:
- GitHub Pages
- Firebase Hosting
Supported Runners:
ubuntu-latest
macos-latest
windows-latest
Self-hosted runner
. Ensure you have a Java runtime installed and firewall rules configured.
jobs:
gh-pages:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/[email protected]
- name: Run test
run: #Run test and create allure results
- name: Deploy Reports to GitHub pages with History and Retries
uses: cybersokari/[email protected]
with:
target: 'github'
github_token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
github_pages_branch: 'gh-pages'
allure_results_path: 'allure-results'
show_history: 'true'
retries: 5
Example test run: actions/runs/12783827755
jobs:
firebase:
runs-on: ubuntu-latest
steps:
- uses: actions/[email protected]
- name: Run test
run: #Run test and create allure results
- name: Deploy Reports to Firebase with History and Retries
uses: cybersokari/[email protected]
with:
target: 'firebase'
allure_results_path: 'allure-results'
google_credentials_json: ${{ secrets.GOOGLE_APPLICATION_CREDENTIALS }}
storage_bucket: ${{vars.STORAGE_BUCKET}}
show_history: 'true'
retries: 5
Example test run: actions/runs/12783830022
on:
pull_request:
jobs:
allure-pr:
runs-on: ubuntu-latest
permissions:
pull-requests: write # For when `pr_comment` is `true`
issues: write # For when `pr_comment` is `true`
steps:
- uses: actions/[email protected]
- name: Run test
run: #Run test and create allure results
- name: Deploy Reports to GitHub pages on Pull Request
uses: cybersokari/[email protected]
with:
pr_comment: 'true'
github_token: ${{ secrets.GITHUB_TOKEN }}
target: 'github'
allure_results_path: 'allure-results'
show_history: 'true'
retries: 5
Pull request comment example
📊 Test Report: https://your-example-url.web.app
| ✅ Passed | ⚠️ Broken |
|----------|-----------|
| 15 | 2 |
jobs:
aggregate-allure:
runs-on: ubuntu-latest
steps:
- uses: actions/[email protected]
- name: Run test in multi-module project
run: # Run test and create multiple allure results directories
- name: Deploy Reports
uses: cybersokari/[email protected]
with:
target: 'firebase'
allure_results_path: 'allure-results_1,allure-results_2,allure-results_3'
google_credentials_json: ${{ secrets.GOOGLE_APPLICATION_CREDENTIALS }}
storage_bucket: ${{vars.STORAGE_BUCKET}}
show_history: 'true'
retries: 5
jobs:
aggregate-allure:
runs-on: ubuntu-latest
steps:
- uses: actions/[email protected]
- name: Run test in project
run: # Run test and create allure results directory
- name: Deploy Report, notify Slack
uses: cybersokari/[email protected]
with:
target: 'github'
github_token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
github_pages_branch: 'gh-pages'
allure_results_path: 'allure-results'
show_history: 'true'
retries: 5
slack_channel: ${{ secrets.SLACK_CHANNEL }}
slack_token: ${{ secrets.SLACK_TOKEN }}
Name | Description | Default Value | Required? |
---|---|---|---|
allure_results_path |
Path(s) to Allure results. Separate multiple paths with commas. | allure-results |
Yes |
target |
Deployment target: firebase or github . |
None | Yes |
google_credentials_json |
Firebase credentials to enable History, Retries, and Firebase Hosting. | None | No |
github_token |
GitHub token or personal access token to enable GitHub pages hosting and pr_comment |
None | No |
report_name |
Custom name/title for the report. | Allure Report |
No |
storage_bucket |
Google Cloud Storage bucket name for History and Retries when target is firebase . |
None | No |
show_history |
Display history from previous runs. | true |
No |
retries |
Number of previous runs to display as retries. | 0 | No |
output |
Directory to generate the Allure report in. | None | No |
slack_channel |
Slack channel ID for report notifications. | None | No |
slack_token |
Slack app token for sending notifications. | None | No |
pr_comment |
Post report information as a pull request comment. | true |
No |
github_pages_branch |
Branch used for GitHub Pages deployments. | gh-pages |
No |
gcp_bucket_prefix |
Path prefix for archived files in the GCP storage bucket when target is firebase . |
None | No |
Name | Description |
---|---|
report_url |
URL of the test report. |
- Firebase Hosting:
Export a service account JSON file from your Firebase Console. - Slack Integration:
Create a Slack app, and generate a token for notifications. - Pull Request Comments:
Ensuregithub_token
permissions includepull_requests: write
andissues: write
.
For more information, refer to the documentation.
- License: BSD-3 License. See the License file for details.
- Contributing: Contributions are welcome! Open issues or submit pull requests to help improve this action.