Skip to content

Merge branch 'master' into feat/list-sharing-dialog #436

Merge branch 'master' into feat/list-sharing-dialog

Merge branch 'master' into feat/list-sharing-dialog #436

name: 'dhis2: verify (app)'
on: push
concurrency:
group: ${{ github.workflow}}-${{ github.ref }}
env:
GIT_AUTHOR_NAME: '@dhis2-bot'
GIT_AUTHOR_EMAIL: '[email protected]'
GIT_COMMITTER_NAME: '@dhis2-bot'
GIT_COMMITTER_EMAIL: '[email protected]'
D2_VERBOSE: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v3
with:
node-version: 16
- uses: c-hive/gha-yarn-cache@v1
- run: yarn install --frozen-lockfile
- name: Build
run: yarn d2-app-scripts build
- uses: actions/upload-artifact@v2
with:
name: app-build
path: |
**/build
!**/node_modules
retention-days: 1
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v3
with:
node-version: 16
- uses: c-hive/gha-yarn-cache@v1
- run: yarn install --frozen-lockfile
# Can be removed if translations aren't required for tests,
# or if not using the App Platform
- name: Generate translations
run: yarn d2-app-scripts i18n generate
- name: Lint
run: yarn d2-style check
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v3
with:
node-version: 16
- uses: c-hive/gha-yarn-cache@v1
- run: yarn install --frozen-lockfile
- name: Test
run: yarn d2-app-scripts test --coverage
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1
e2e:
runs-on: ubuntu-latest
if: "!github.event.push.repository.fork && github.actor != 'dependabot[bot]'"
strategy:
fail-fast: false
matrix:
containers: [1, 2]
steps:
- name: Checkout
uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: 16
- name: End-to-End tests
uses: cypress-io/github-action@v5
with:
# This should be a command that serves the app.
start: yarn d2-app-scripts start
wait-on: 'http://localhost:3000'
wait-on-timeout: 300
record: true
parallel: true
env:
BROWSER: none
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
CYPRESS_dhis2BaseUrl: https://debug.dhis2.org/dev
CYPRESS_dhis2Username: ${{ secrets.CYPRESS_DHIS2_USERNAME }}
CYPRESS_dhis2Password: ${{ secrets.CYPRESS_DHIS2_PASSWORD }}
CYPRESS_dhis2ApiVersion: 40
CYPRESS_networkMode: live