only unit tests

This commit is contained in:
Marco Carrozzo
2023-01-20 13:59:54 +01:00
parent fe9dd5af34
commit 972a9fb1cc
+290 -290
View File
@@ -70,84 +70,84 @@ env:
DOCKER_REPOSITORY: "${{ secrets.DOCKER_REPOSITORY_DOMAIN }}/alfresco/demo-shell"
jobs:
check-if-pr-is-approved:
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0
# check-if-pr-is-approved:
# runs-on: ubuntu-22.04
# steps:
# - name: Checkout repository
# uses: actions/checkout@v3
# with:
# fetch-depth: 0
- name: Check if PR is approved
id: action
if: ${{ github.event_name != 'schedule' }}
uses: kamatama41/get-pr-number-action@v0
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
# - name: Check if PR is approved
# id: action
# if: ${{ github.event_name != 'schedule' }}
# uses: kamatama41/get-pr-number-action@v0
# with:
# github_token: ${{ secrets.GITHUB_TOKEN }}
- name: Show the number
env:
GH_TOKEN: ${{ github.token }}
DEVEL_FLAG: ${{ inputs.skip-pr-approve }} #put it to true if you need to develop the pipeline on your own branch. before the final merge put it to false
shell: bash
if: ${{ github.event_name != 'schedule' }}
run: |
if [[ "$DEVEL_FLAG" = false ]] ; then
echo "PR number is: ${{ steps.action.outputs.number }}"
prNumber=${{ steps.action.outputs.number }}
checkApproval=$(gh api /repos/Alfresco/alfresco-ng2-components/pulls/$prNumber/reviews | jq '.[] | select(.state == "APPROVED") | .user.login')
if [[ $checkApproval ]]; then
echo "PR approved"
else
echo "PR not approved yet"
exit 1
fi
else
echo "you are on your branch: skipping the check. REMEMBER to put DEVEL_FLAG to FALSE before the final merge!"
fi
# - name: Show the number
# env:
# GH_TOKEN: ${{ github.token }}
# DEVEL_FLAG: ${{ inputs.skip-pr-approve }} #put it to true if you need to develop the pipeline on your own branch. before the final merge put it to false
# shell: bash
# if: ${{ github.event_name != 'schedule' }}
# run: |
# if [[ "$DEVEL_FLAG" = false ]] ; then
# echo "PR number is: ${{ steps.action.outputs.number }}"
# prNumber=${{ steps.action.outputs.number }}
# checkApproval=$(gh api /repos/Alfresco/alfresco-ng2-components/pulls/$prNumber/reviews | jq '.[] | select(.state == "APPROVED") | .user.login')
# if [[ $checkApproval ]]; then
# echo "PR approved"
# else
# echo "PR not approved yet"
# exit 1
# fi
# else
# echo "you are on your branch: skipping the check. REMEMBER to put DEVEL_FLAG to FALSE before the final merge!"
# fi
setup:
# long timeout required when cache has to be recreated
timeout-minutes: 30
name: "Setup"
runs-on: ubuntu-22.04
needs: [check-if-pr-is-approved]
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0 # Fetch all history for all tags and branches
- uses: ./.github/actions/setup
id: setup
with:
use-gh-nx-cache: false
use-gh-node-modules-cache: true
- name: run ci
if: steps.setup.outputs.cache-hit != 'true'
run: npm ci
- run: nx run cli:bundle
- run: nx run testing:bundle
- uses: ./.github/actions/upload-cache-and-artifacts
with:
packages: 'dist node_modules'
- name: show files
run: |
pwd
ls -lha
echo "====DIST===="
find dist -maxdepth 1 -type d || true
echo "====NXCACHE===="
find nxcache -maxdepth 1 -type d || true
echo "====ADF===="
find node_modules/@alfresco/ -maxdepth 1 -type d || true
echo "====NX===="
find node_modules/nx/ -maxdepth 1 -type d || true
# setup:
# # long timeout required when cache has to be recreated
# timeout-minutes: 30
# name: "Setup"
# runs-on: ubuntu-22.04
# needs: [check-if-pr-is-approved]
# steps:
# - name: Checkout repository
# uses: actions/checkout@v3
# with:
# fetch-depth: 0 # Fetch all history for all tags and branches
# - uses: ./.github/actions/setup
# id: setup
# with:
# use-gh-nx-cache: false
# use-gh-node-modules-cache: true
# - name: run ci
# if: steps.setup.outputs.cache-hit != 'true'
# run: npm ci
# - run: nx run cli:bundle
# - run: nx run testing:bundle
# - uses: ./.github/actions/upload-cache-and-artifacts
# with:
# packages: 'dist node_modules'
# - name: show files
# run: |
# pwd
# ls -lha
# echo "====DIST===="
# find dist -maxdepth 1 -type d || true
# echo "====NXCACHE===="
# find nxcache -maxdepth 1 -type d || true
# echo "====ADF===="
# find node_modules/@alfresco/ -maxdepth 1 -type d || true
# echo "====NX===="
# find node_modules/nx/ -maxdepth 1 -type d || true
unit-tests:
timeout-minutes: 30
name: "Unit tests: ${{ matrix.unit-tests.name }}"
runs-on: ubuntu-22.04
needs: [setup]
# needs: [setup]
strategy:
fail-fast: false
# max-parallel: 4
@@ -182,226 +182,226 @@ jobs:
with:
persistent-packages: 'nxcache'
cache-key-suffix: ${{ matrix.unit-tests.name }}
lint:
# long timeout required when cache has to be recreated
timeout-minutes: 30
name: "Lint"
runs-on: ubuntu-22.04
needs: [setup]
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0 # Fetch all history for all tags and branches
- uses: ./.github/actions/setup
with:
use-gh-nx-cache: false
use-gh-node-modules-cache: true
cache-key-suffix: lint
- uses: ./.github/actions/download-cache-and-artifacts
with:
packages: 'node_modules'
persistent-packages: 'nxcache'
- run: nx affected --target=lint $NX_CALCULATION_FLAGS
- uses: ./.github/actions/upload-cache-and-artifacts
with:
persistent-packages: 'nxcache'
build-libs:
# long timeout required when cache has to be recreated
timeout-minutes: 30
name: "Build libs"
runs-on: ubuntu-22.04
needs: [setup]
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0 # Fetch all history for all tags and branches
- uses: ./.github/actions/setup
with:
use-gh-nx-cache: false
use-gh-node-modules-cache: true
cache-key-suffix: build-libs
- uses: ./.github/actions/download-cache-and-artifacts
with:
persistent-packages: 'nxcache'
- run: nx affected:build $NX_CALCULATION_FLAGS --prod
- run: nx build demoshell --configuration production
- run: nx affected --target=build-storybook $NX_CALCULATION_FLAGS --configuration ci
- uses: ./.github/actions/upload-cache-and-artifacts
with:
packages: 'dist node_modules'
persistent-packages: 'nxcache'
# lint:
# # long timeout required when cache has to be recreated
# timeout-minutes: 30
# name: "Lint"
# runs-on: ubuntu-22.04
# needs: [setup]
# steps:
# - name: Checkout repository
# uses: actions/checkout@v3
# with:
# fetch-depth: 0 # Fetch all history for all tags and branches
# - uses: ./.github/actions/setup
# with:
# use-gh-nx-cache: false
# use-gh-node-modules-cache: true
# cache-key-suffix: lint
# - uses: ./.github/actions/download-cache-and-artifacts
# with:
# packages: 'node_modules'
# persistent-packages: 'nxcache'
# - run: nx affected --target=lint $NX_CALCULATION_FLAGS
# - uses: ./.github/actions/upload-cache-and-artifacts
# with:
# persistent-packages: 'nxcache'
# build-libs:
# # long timeout required when cache has to be recreated
# timeout-minutes: 30
# name: "Build libs"
# runs-on: ubuntu-22.04
# needs: [setup]
# steps:
# - name: Checkout repository
# uses: actions/checkout@v3
# with:
# fetch-depth: 0 # Fetch all history for all tags and branches
# - uses: ./.github/actions/setup
# with:
# use-gh-nx-cache: false
# use-gh-node-modules-cache: true
# cache-key-suffix: build-libs
# - uses: ./.github/actions/download-cache-and-artifacts
# with:
# persistent-packages: 'nxcache'
# - run: nx affected:build $NX_CALCULATION_FLAGS --prod
# - run: nx build demoshell --configuration production
# - run: nx affected --target=build-storybook $NX_CALCULATION_FLAGS --configuration ci
# - uses: ./.github/actions/upload-cache-and-artifacts
# with:
# packages: 'dist node_modules'
# persistent-packages: 'nxcache'
e2e-storybook:
timeout-minutes: 20
name: "e2e: storybook"
needs: [build-libs, lint, unit-tests]
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0 # Fetch all history for all
- uses: ./.github/actions/setup
with:
use-gh-nx-cache: false
use-gh-node-modules-cache: false
- uses: ./.github/actions/download-cache-and-artifacts
with:
packages: 'dist node_modules'
- name: Process Cloud Storybook Playwright
run: |
npx playwright install chromium
sudo sysctl -w fs.inotify.max_user_watches=524288
npx nx affected --target=e2e-playwright $NX_CALCULATION_FLAGS || exit 1
# e2e-storybook:
# timeout-minutes: 20
# name: "e2e: storybook"
# needs: [build-libs, lint, unit-tests]
# runs-on: ubuntu-22.04
# steps:
# - name: Checkout repository
# uses: actions/checkout@v3
# with:
# fetch-depth: 0 # Fetch all history for all
# - uses: ./.github/actions/setup
# with:
# use-gh-nx-cache: false
# use-gh-node-modules-cache: false
# - uses: ./.github/actions/download-cache-and-artifacts
# with:
# packages: 'dist node_modules'
# - name: Process Cloud Storybook Playwright
# run: |
# npx playwright install chromium
# sudo sysctl -w fs.inotify.max_user_watches=524288
# npx nx affected --target=e2e-playwright $NX_CALCULATION_FLAGS || exit 1
e2e:
timeout-minutes: 90
name: "e2e: ${{ matrix.e2e-test.description }}"
needs: [build-libs, lint, unit-tests]
runs-on: ubuntu-22.04
strategy:
fail-fast: false
# max-parallel: 4
matrix:
e2e-test:
- description: "Core"
test-id: "core"
folder: "core"
provider: "ALL"
auth: "OAUTH"
check-cs-env: "true"
check-ps-env: "true"
- description: "Content: Components"
test-id: "content-services"
folder: "content-services/components"
provider: "ECM"
auth: "BASIC"
check-cs-env: "true"
- description: "Content: Directives"
test-id: "content-services"
folder: "content-services/directives"
provider: "ECM"
auth: "BASIC"
check-cs-env: "true"
- description: "Content: Document List"
test-id: "content-services"
folder: "content-services/document-list"
provider: "ECM"
auth: "BASIC"
check-cs-env: "true"
- description: "Content: Metadata"
test-id: "content-services"
folder: "content-services/metadata"
provider: "ECM"
auth: "BASIC"
check-cs-env: "true"
- description: "Content: Upload and Versioning"
test-id: "content-services"
folder: "content-services/upload"
provider: "ECM"
auth: "BASIC"
check-cs-env: "true"
- description: "Search"
test-id: "content-services"
folder: "search"
provider: "ECM"
auth: "BASIC"
check-cs-env: "true"
- description: "Process: Form"
test-id: "process-services"
folder: "process-services/form"
provider: "BPM"
auth: "OAUTH"
check-ps-env: "true"
check-external-cs-env: "true"
- description: "Process: Process"
test-id: "process-services"
folder: "process-services/process"
provider: "BPM"
auth: "OAUTH"
check-ps-env: "true"
check-external-cs-env: "true"
- description: "Process: Tasks"
test-id: "process-services"
folder: "process-services/tasks"
provider: "BPM"
auth: "OAUTH"
check-ps-env: "true"
check-external-cs-env: "true"
- description: "Process: Widget"
test-id: "process-services"
folder: "process-services/widgets"
provider: "BPM"
auth: "OAUTH"
check-ps-env: "true"
check-external-cs-env: "true"
- description: "Process Cloud: Form"
test-id: "process-services-cloud"
folder: "process-services-cloud/form-field"
provider: "ALL"
auth: "OAUTH"
apa-proxy: true
check-cs-env: "true"
check-ps-cloud-env: "true"
- description: "Process Cloud: People"
test-id: "process-services-cloud"
folder: "process-services-cloud/people"
provider: "ALL"
auth: "OAUTH"
apa-proxy: true
check-cs-env: "true"
check-ps-cloud-env: "true"
- description: "Process Cloud: Process"
test-id: "process-services-cloud"
folder: "process-services-cloud/process"
provider: "ALL"
auth: "OAUTH"
apa-proxy: true
check-cs-env: "true"
check-ps-cloud-env: "true"
- description: "Process Cloud: Start Task"
test-id: "process-services-cloud"
folder: "process-services-cloud/start-task"
provider: "ALL"
auth: "OAUTH"
apa-proxy: true
check-cs-env: "true"
check-ps-cloud-env: "true"
- description: "Process Cloud: Tasks List"
test-id: "process-services-cloud"
folder: "process-services-cloud/task-list"
provider: "ALL"
auth: "OAUTH"
apa-proxy: true
check-cs-env: "true"
check-ps-cloud-env: "true"
# e2e:
# timeout-minutes: 90
# name: "e2e: ${{ matrix.e2e-test.description }}"
# needs: [build-libs, lint, unit-tests]
# runs-on: ubuntu-22.04
# strategy:
# fail-fast: false
# # max-parallel: 4
# matrix:
# e2e-test:
# - description: "Core"
# test-id: "core"
# folder: "core"
# provider: "ALL"
# auth: "OAUTH"
# check-cs-env: "true"
# check-ps-env: "true"
# - description: "Content: Components"
# test-id: "content-services"
# folder: "content-services/components"
# provider: "ECM"
# auth: "BASIC"
# check-cs-env: "true"
# - description: "Content: Directives"
# test-id: "content-services"
# folder: "content-services/directives"
# provider: "ECM"
# auth: "BASIC"
# check-cs-env: "true"
# - description: "Content: Document List"
# test-id: "content-services"
# folder: "content-services/document-list"
# provider: "ECM"
# auth: "BASIC"
# check-cs-env: "true"
# - description: "Content: Metadata"
# test-id: "content-services"
# folder: "content-services/metadata"
# provider: "ECM"
# auth: "BASIC"
# check-cs-env: "true"
# - description: "Content: Upload and Versioning"
# test-id: "content-services"
# folder: "content-services/upload"
# provider: "ECM"
# auth: "BASIC"
# check-cs-env: "true"
# - description: "Search"
# test-id: "content-services"
# folder: "search"
# provider: "ECM"
# auth: "BASIC"
# check-cs-env: "true"
# - description: "Process: Form"
# test-id: "process-services"
# folder: "process-services/form"
# provider: "BPM"
# auth: "OAUTH"
# check-ps-env: "true"
# check-external-cs-env: "true"
# - description: "Process: Process"
# test-id: "process-services"
# folder: "process-services/process"
# provider: "BPM"
# auth: "OAUTH"
# check-ps-env: "true"
# check-external-cs-env: "true"
# - description: "Process: Tasks"
# test-id: "process-services"
# folder: "process-services/tasks"
# provider: "BPM"
# auth: "OAUTH"
# check-ps-env: "true"
# check-external-cs-env: "true"
# - description: "Process: Widget"
# test-id: "process-services"
# folder: "process-services/widgets"
# provider: "BPM"
# auth: "OAUTH"
# check-ps-env: "true"
# check-external-cs-env: "true"
# - description: "Process Cloud: Form"
# test-id: "process-services-cloud"
# folder: "process-services-cloud/form-field"
# provider: "ALL"
# auth: "OAUTH"
# apa-proxy: true
# check-cs-env: "true"
# check-ps-cloud-env: "true"
# - description: "Process Cloud: People"
# test-id: "process-services-cloud"
# folder: "process-services-cloud/people"
# provider: "ALL"
# auth: "OAUTH"
# apa-proxy: true
# check-cs-env: "true"
# check-ps-cloud-env: "true"
# - description: "Process Cloud: Process"
# test-id: "process-services-cloud"
# folder: "process-services-cloud/process"
# provider: "ALL"
# auth: "OAUTH"
# apa-proxy: true
# check-cs-env: "true"
# check-ps-cloud-env: "true"
# - description: "Process Cloud: Start Task"
# test-id: "process-services-cloud"
# folder: "process-services-cloud/start-task"
# provider: "ALL"
# auth: "OAUTH"
# apa-proxy: true
# check-cs-env: "true"
# check-ps-cloud-env: "true"
# - description: "Process Cloud: Tasks List"
# test-id: "process-services-cloud"
# folder: "process-services-cloud/task-list"
# provider: "ALL"
# auth: "OAUTH"
# apa-proxy: true
# check-cs-env: "true"
# check-ps-cloud-env: "true"
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0 # Fetch all history for all
- uses: ./.github/actions/setup
with:
use-gh-nx-cache: false
use-gh-node-modules-cache: false
- uses: ./.github/actions/download-cache-and-artifacts
with:
packages: 'dist node_modules'
- name: setup chrome
uses: ./.github/actions/setup-chrome
- name: e2e
uses: ./.github/actions/e2e
with:
e2e-test-id: ${{ matrix.e2e-test.test-id }}
e2e-test-folder: ${{ matrix.e2e-test.folder }}
e2e-test-provider: ${{ matrix.e2e-test.provider }}
e2e-test-auth: ${{ matrix.e2e-test.auth }}
check-cs-env: ${{ matrix.e2e-test.check-cs-env }}
check-ps-env: ${{ matrix.e2e-test.check-ps-env }}
check-ps-cloud-env: ${{ matrix.e2e-test.check-ps-cloud-env }}
check-external-cs-env: ${{ matrix.e2e-test.check-external-cs-env }}
apa-proxy: ${{ matrix.e2e-test.apa-proxy }}
#
# steps:
# - name: Checkout repository
# uses: actions/checkout@v3
# with:
# fetch-depth: 0 # Fetch all history for all
# - uses: ./.github/actions/setup
# with:
# use-gh-nx-cache: false
# use-gh-node-modules-cache: false
# - uses: ./.github/actions/download-cache-and-artifacts
# with:
# packages: 'dist node_modules'
# - name: setup chrome
# uses: ./.github/actions/setup-chrome
# - name: e2e
# uses: ./.github/actions/e2e
# with:
# e2e-test-id: ${{ matrix.e2e-test.test-id }}
# e2e-test-folder: ${{ matrix.e2e-test.folder }}
# e2e-test-provider: ${{ matrix.e2e-test.provider }}
# e2e-test-auth: ${{ matrix.e2e-test.auth }}
# check-cs-env: ${{ matrix.e2e-test.check-cs-env }}
# check-ps-env: ${{ matrix.e2e-test.check-ps-env }}
# check-ps-cloud-env: ${{ matrix.e2e-test.check-ps-cloud-env }}
# check-external-cs-env: ${{ matrix.e2e-test.check-external-cs-env }}
# apa-proxy: ${{ matrix.e2e-test.apa-proxy }}
# #