Guardian CI API Tests(Manual) #152
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Guardian CI API Tests(Manual) | |
on: | |
workflow_dispatch: | |
inputs: | |
tags: | |
type: string | |
description: Tags for run(smoke, accounts, firstPool and etc.) | |
default: 'all' | |
description: 'Manual run' | |
jobs: | |
buildAndTest: | |
name: Build and Test (Manual) | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [ 20.10.0 ] | |
steps: | |
- name: Harden Runner | |
uses: step-security/harden-runner@63c24ba6bd7ba022e95695ff85de572c04a18142 # v2.7.0 | |
with: | |
egress-policy: audit | |
- name: Checkout Code | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- name: Setup Yarn | |
uses: Borales/actions-yarn@3766bb1335b98fb13c60eaf358fe20811b730a88 # v5.0.0 | |
with: | |
cmd: install | |
- name: Install dependencies | |
run: yarn install | |
- name: Build | |
run: | | |
yarn | |
pushd interfaces | |
yarn run build | |
popd | |
pushd common | |
yarn run build | |
popd | |
pushd logger-service | |
yarn run build | |
popd | |
pushd notification-service | |
yarn run build | |
popd | |
pushd frontend | |
npm install | |
npm run build | |
npm run build:prod | |
npm run build:demo | |
popd | |
pushd auth-service | |
yarn run build | |
popd | |
pushd policy-service | |
yarn run build | |
popd | |
pushd guardian-service | |
yarn run build | |
popd | |
pushd worker-service | |
yarn run build | |
popd | |
pushd api-gateway | |
yarn run build | |
popd | |
env: | |
CI: true | |
NODE_OPTIONS: --openssl-legacy-provider | |
- name: Detect secrets | |
run: | | |
yarn run detect-secrets | |
env: | |
CI: true | |
NODE_OPTIONS: --openssl-legacy-provider | |
- name: Lint | |
run: | | |
pushd interfaces | |
npm run lint | |
popd | |
pushd common | |
npm run lint | |
popd | |
pushd logger-service | |
npm run lint | |
popd | |
pushd notification-service | |
npm run lint | |
popd | |
pushd auth-service | |
npm run lint | |
popd | |
pushd policy-service | |
npm run lint | |
popd | |
pushd guardian-service | |
npm run lint | |
popd | |
pushd worker-service | |
npm run lint | |
popd | |
pushd api-gateway | |
npm run lint | |
popd | |
env: | |
CI: true | |
NODE_OPTIONS: --openssl-legacy-provider | |
- name: Test | |
run: | | |
pushd common | |
npm run test | |
popd | |
pushd policy-service | |
npm run test | |
popd | |
pushd guardian-service | |
npm run test | |
popd | |
env: | |
CI: true | |
NODE_OPTIONS: --openssl-legacy-provider | |
OPERATOR_ID: ${{ secrets.CI_HEDERA_ACCOUNT }} | |
OPERATOR_KEY: ${{ secrets.CI_HEDERA_PRIV_KEY }} | |
- name: Run tests with Cypress | |
run: | | |
pushd e2e-tests | |
npm install --force | |
npx cypress run --env "portApi=3002,operatorId=${{ secrets.CI_HEDERA_ACCOUNT }},operatorKey=${{ secrets.CI_HEDERA_PRIV_KEY }},grepTags=${{ inputs.tags }},grepFilterSpecs=true" --spec cypress/e2e/api-tests/**/*.cy.js | |
popd | |
- name: Publish API Test Results | |
uses: EnricoMi/publish-unit-test-result-action@170bf24d20d201b842d7a52403b73ed297e6645b # v2.18.0 | |
if: always() | |
with: | |
files: e2e-tests/cypress/test_results/**/*.xml |