Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dhis2/workflows
DHIS2 GitHub Workflow templates
https://github.com/dhis2/workflows
actions synced-settings workflows
Last synced: 8 days ago
JSON representation
DHIS2 GitHub Workflow templates
- Host: GitHub
- URL: https://github.com/dhis2/workflows
- Owner: dhis2
- License: mit
- Created: 2019-11-27T07:47:20.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-05-15T08:12:03.000Z (6 months ago)
- Last Synced: 2024-05-16T20:57:41.059Z (6 months ago)
- Topics: actions, synced-settings, workflows
- Language: Shell
- Size: 305 KB
- Stars: 1
- Watchers: 25
- Forks: 5
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# DHIS2 Workflows for GitHub Actions
This repository provides a centralized location for GitHub Actions workflows that can be utilized across various DHIS2 repositories.
## Directory structure:
**ci**: Solutions for Continuous Integration.**automation**: Solutions for automating workflows.
## Consuming the Workflows:
Workflows in this repository can be utilized in other repositories by either copying them or by calling them directly if they support the `workflow_call` event.### Consuming the e2e-prod Workflow:
The `e2e-prod` workflow provides an end-to-end testing solution, running Cypress E2E tests against various production versions of DHIS2.#### Requirements:
To utilize this workflow:In the DHIS2 repository where you wish to implement this workflow, create a new workflow file (e.g., `.github/workflows/use-e2e-prod.yml`).
Use the following template to call the central `e2e-prod` workflow:```yaml
name: Use e2e-prodon: [push, pull_request] # or any other GitHub event
jobs:
e2e-tests:
uses: dhis2/workflows/.github/workflows/analytics-e2e-tests.yml@main
secrets:
baseurl: ${{ secrets.BASEURL }} # e.g. BASEURL = https://test.e2e.dhis2.org/analytics-dev
username: ${{ secrets.USERNAME }}
password: ${{ secrets.PASSWORD }}
recordkey: ${{ secrets.RECORDKEY }}
reportportal_api_key: ${{ secrets.REPORTPORTAL_API_KEY }}
reportportal_endpoint: ${{ secrets.REPORTPORTAL_ENDPOINT }}
reportportal_project: ${{ secrets.REPORTPORTAL_PROJECT }}
# Add any other required secrets
```Ensure the required secrets (`baseurl`, `username`, `password`, `recordkey`, etc.) are set in the repository settings that is consuming the workflow.
Description:
The `e2e-prod` workflow facilitates Cypress E2E tests across different versions of the DHIS2 backend. Here's how it operates:1. **Computing Production Versions**: The workflow uses the [dhis2/action-supported-legacy-versions ](https://github.com/dhis2/action-supported-legacy-versions "dhis2/action-supported-legacy-versions ")GitHub Action to determine which DHIS2 backend versions the app will be tested against. This ensures tests are executed against all relevant DHIS2 instances.
2. Runs E2E tests on various container setups for each backend version, ensuring the application's compatibility across all of them.
3. Provides a summary of the test results.
4. Optionally, if provided with the `reportportal_api_key`, `reportportal_endpoint`, and `reportportal_project` secrets, it can send test results to the [DHIS2 Report Portal Dashboard](https://test.reports.dhis2.org/ "DHIS2 Report Portal Dashboard").