change cache strategy

This commit is contained in:
Marco Carrozzo
2023-01-17 16:41:02 +01:00
parent 59df5c661d
commit 14f244b9ff
5 changed files with 108 additions and 14 deletions
@@ -1,5 +1,13 @@
name: "Download build artifacts"
description: "Download build artifacts"
inputs:
packages:
description: 'packages to cache'
required: false
type: string
default: 'dist nxcache'
runs:
using: "composite"
steps:
@@ -8,7 +16,7 @@ runs:
env:
REMOTE_PATH: "alfresco-ng2-components/build-cache/${{ github.run_id }}"
run: |
packages=( dist nxcache node_modules )
packages=( $(echo ${{ inputs.packages }}) )
for i in "${packages[@]}"; do
time aws s3 cp --no-progress s3://${S3_BUILD_BUCKET_SHORT_NAME}/${REMOTE_PATH}/$i.tar.gz $i.tar.gz
du -h $i.tar.gz
+8 -8
View File
@@ -36,23 +36,23 @@ runs:
cache-name: node-cache
with:
path: |
~/.npm
nxcache
dist
key: .npm-${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}-${{ steps.tag-sha.outputs.tag_sha }}
key: nxcache-${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}-${{ steps.tag-sha.outputs.tag_sha }}
restore-keys: |
node-${{ runner.os }}-build-${{ env.cache-name }}-
node-${{ runner.os }}-build-
node-${{ runner.os }}-
nxcache-${{ runner.os }}-build-${{ env.cache-name }}-
nxcache-${{ runner.os }}-build-
nxcache-${{ runner.os }}-
- name: Node Modules cache
id: node-modules-cache
id: node-modules-dist-cache
if: ${{ inputs.enable-node-modules-cache == 'true' }}
uses: actions/cache@v3
env:
cache-name: node-modules-cache
cache-name: node-modules-dist-cache
with:
path: |
node_modules
~/.npm
dist
key: .npm-${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}-${{ steps.tag-sha.outputs.tag_sha }}
restore-keys: |
node_modules-${{ runner.os }}-build-${{ env.cache-name }}-
@@ -1,6 +1,11 @@
name: "Upload build artifacts"
description: "Upload build artifacts"
inputs:
packages:
description: 'packages to cache'
required: false
type: boolean
default: 'dist nxcache'
runs:
using: "composite"
steps:
@@ -9,7 +14,7 @@ runs:
env:
REMOTE_PATH: "alfresco-ng2-components/build-cache/${{ github.run_id }}"
run: |
packages=( dist nxcache node_modules )
packages=( $(echo ${{ inputs.packages }}) )
for i in "${packages[@]}"; do
time tar czf $i.tar.gz $i
du -h $i.tar.gz
+63
View File
@@ -0,0 +1,63 @@
name: "devel"
on:
push:
branches:
- AAE-12190*
env:
BASE_REF: ${{ github.base_ref }}
HEAD_REF: ${{ github.head_ref }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
GITHUB_BRANCH: ${{ github.ref_name }}
TRAVIS_BUILD_DIR: ${{ github.workspace }}
TRAVIS_COMMIT: ${{ github.sha }}
BUILD_ID: ${{ github.run_id }}
TRAVIS_RUN_NUMBER: ${{ github.run_attempt }}
TRAVIS_BUILD_NUMBER: ${{ github.run_id }}
JOB_ID: ${{ github.run_id }}
PROXY_HOST_BPM: ${{ secrets.E2E_HOST }}
E2E_HOST_APA: ${{ secrets.E2E_HOST_APA }}
E2E_HOST: ${{ secrets.E2E_HOST }}
E2E_USERNAME: ${{ secrets.E2E_ADMIN_EMAIL_IDENTITY }}
E2E_PASSWORD: ${{ secrets.E2E_PASSWORD }}
E2E_ADMIN_EMAIL_IDENTITY: ${{ secrets.E2E_ADMIN_EMAIL_IDENTITY }}
E2E_ADMIN_PASSWORD_IDENTITY: ${{ secrets.E2E_ADMIN_PASSWORD_IDENTITY }}
USERNAME_ADF: ${{ secrets.E2E_USERNAME }}
PASSWORD_ADF: ${{ secrets.E2E_PASSWORD }}
URL_HOST_ADF: ${{ secrets.URL_HOST_ADF }}
IDENTITY_ADMIN_EMAIL: ${{ secrets.E2E_ADMIN_EMAIL_IDENTITY }}
IDENTITY_ADMIN_PASSWORD: ${{ secrets.E2E_ADMIN_PASSWORD_IDENTITY }}
AWS_S3_BUCKET_ACTIVITI_LICENSE: ${{ secrets.AWS_S3_BUCKET_ACTIVITI_LICENSE }}
HOST_SSO: ${{ secrets.HOST_SSO }}
LOG_LEVEL: "ERROR"
E2E_LOG_LEVEL: "ERROR"
E2E_MODELER_USERNAME: ${{ secrets.E2E_MODELER_USERNAME }}
E2E_MODELER_PASSWORD: ${{ secrets.E2E_MODELER_PASSWORD }}
EXTERNAL_ACS_HOST: ${{ secrets.EXTERNAL_ACS_HOST }}
E2E_DEVOPS_USERNAME: ${{ secrets.E2E_DEVOPS_USERNAME }}
E2E_DEVOPS_PASSWORD: ${{ secrets.E2E_DEVOPS_PASSWORD }}
USERNAME_SUPER_ADMIN_ADF: ${{ secrets.USERNAME_SUPER_ADMIN_ADF }}
PASSWORD_SUPER_ADMIN_ADF: ${{ secrets.PASSWORD_SUPER_ADMIN_ADF }}
HR_USER: ${{ secrets.HR_USER }}
HR_USER_PASSWORD: ${{ secrets.HR_USER_PASSWORD }}
SMART_RUNNER_PATH: ".protractor-smartrunner"
S3_DBP_PATH: ${{ secrets.S3_DBP_PATH }}
S3_BUILD_BUCKET: ${{ secrets.S3_BUILD_BUCKET }}
S3_BUILD_BUCKET_SHORT_NAME: ${{ secrets.S3_BUILD_BUCKET_SHORT_NAME }}
NODE_OPTIONS: "--max-old-space-size=5120"
DOCKER_REPOSITORY_DOMAIN: ${{ secrets.DOCKER_REPOSITORY_DOMAIN }}
DOCKER_REPOSITORY_USER: ${{ secrets.DOCKER_REPOSITORY_USER }}
DOCKER_REPOSITORY_PASSWORD: ${{ secrets.DOCKER_REPOSITORY_PASSWORD }}
DOCKER_REPOSITORY_STORYBOOK: "${{ secrets.DOCKER_REPOSITORY_DOMAIN }}/alfresco/storybook"
DOCKER_REPOSITORY: "${{ secrets.DOCKER_REPOSITORY_DOMAIN }}/alfresco/demo-shell"
jobs:
devel:
uses: ./.github/workflows/pull-request.yml
secrets: inherit
with:
dry-run-release: true
skip-pr-approve: true
+21 -3
View File
@@ -7,7 +7,12 @@ on:
description: 'enable dry-run on artifact push'
required: false
type: boolean
default: true
default: true
skip-pr-approve:
description: 'skip pr approve check'
required: false
type: boolean
default: false
pull_request:
types: [opened, synchronize, reopened]
branches:
@@ -83,7 +88,7 @@ jobs:
- name: Show the number
env:
GH_TOKEN: ${{ github.token }}
DEVEL_FLAG: false #put it to true if you need to develop the pipeline on your own branch. before the final merge put it to false
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: |
@@ -120,6 +125,8 @@ jobs:
nx run testing:bundle
- run: nx print-affected $NX_CALCULATION_FLAGS
- uses: ./.github/actions/upload-cache-and-artifacts
with:
packages: 'dist nxcache node_modules'
unit-tests:
timeout-minutes: 30
@@ -146,6 +153,8 @@ jobs:
fetch-depth: 0 # Fetch all history for all tags and branches
- uses: ./.github/actions/setup
- uses: ./.github/actions/download-cache-and-artifacts
with:
packages: 'dist nxcache node_modules'
- name: Run unit tests
run: |
/usr/bin/xvfb-run --auto-servernum nx affected:test $NX_CALCULATION_FLAGS --exclude=${{ matrix.unit-tests.exclude }}
@@ -163,6 +172,8 @@ jobs:
fetch-depth: 0 # Fetch all history for all tags and branches
- uses: ./.github/actions/setup
- uses: ./.github/actions/download-cache-and-artifacts
with:
packages: 'dist nxcache node_modules'
- run: nx affected --target=lint $NX_CALCULATION_FLAGS
build-libs:
@@ -178,11 +189,15 @@ jobs:
fetch-depth: 0 # Fetch all history for all tags and branches
- uses: ./.github/actions/setup
- uses: ./.github/actions/download-cache-and-artifacts
with:
packages: 'dist nxcache node_modules'
- run: nx affected:build $NX_CALCULATION_FLAGS --prod
- run: nx build demoshell --configuration production
- run: rm -f /home/runner/work/alfresco-ng2-components/alfresco-ng2-components/node_modules/.ngcc_lock_file
- run: nx affected --target=build-storybook $NX_CALCULATION_FLAGS --configuration ci
- uses: ./.github/actions/upload-cache-and-artifacts
with:
packages: 'nxcache'
e2e-storybook:
timeout-minutes: 20
@@ -196,12 +211,13 @@ jobs:
fetch-depth: 0 # Fetch all history for all
- uses: ./.github/actions/setup
- uses: ./.github/actions/download-cache-and-artifacts
with:
packages: 'dist nxcache 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
- uses: ./.github/actions/upload-cache-and-artifacts
e2e:
timeout-minutes: 90
@@ -335,6 +351,8 @@ jobs:
enable-cache: "true"
enable-node-modules-cache: "true"
- uses: ./.github/actions/download-cache-and-artifacts
with:
packages: 'dist nxcache node_modules'
- name: setup chrome
uses: ./.github/actions/setup-chrome
- name: e2e