name: Release lib on branch run-name: Release lib on branch ${{ github.ref_name }} on: workflow_dispatch: inputs: dry-run-flag: description: 'enable dry-run on artifact push' required: false type: boolean default: true 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 }} GH_BUILD_DIR: ${{ github.workspace }} GH_COMMIT: ${{ github.sha }} BUILD_ID: ${{ github.run_id }} GH_RUN_NUMBER: ${{ github.run_attempt }} GH_BUILD_NUMBER: ${{ github.run_id }} JOB_ID: ${{ github.run_id }} LOG_LEVEL: "ERROR" 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_USERNAME }} DOCKER_REPOSITORY_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} GITHUB_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }} REPO_OWNER: "Alfresco" REPO_NAME: "alfresco-ng2-components" BUILT_LIBS_DIR: "./dist/libs" NODE_MODULES_DIR: "./node_modules" REDIRECT_URI: / jobs: setup: timeout-minutes: 20 name: "Setup" runs-on: ubuntu-latest steps: - name: set TAG_NPM BRANCH shell: bash run: | TAG_NPM="branch" echo "Set TAG with name: ${TAG_NPM}" echo "TAG_NPM=${TAG_NPM}" >> $GITHUB_ENV - name: Checkout repository uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: fetch-depth: 0 - uses: ./.github/actions/setup with: enable-cache: false enable-node-modules-cache: false - name: install run: | npm ci npm run bundle:js-api npm run bundle:cli - uses: ./.github/actions/upload-node-modules-and-artifacts release-npm: needs: [setup] timeout-minutes: 30 runs-on: ubuntu-latest permissions: contents: read packages: write steps: - name: Checkout repository uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: fetch-depth: 0 - uses: ./.github/actions/setup with: enable-cache: false enable-node-modules-cache: false - id: set-dryrun uses: ./.github/actions/enable-dryrun with: dry-run-flag: ${{ inputs.dry-run-flag }} - uses: ./.github/actions/download-node-modules-and-artifacts - name: Set libraries versions run: | set -u; ./scripts/update-version.sh -gnu || exit 1; - name: Set migrations uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 with: script: | const setMigrations = require('./scripts/github/release/set-migrations.js'); setMigrations(); - name: Build libraries run: | npm run build:libs npm run build:schematics - uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0 name: release libraries GH registry with: node-version-file: '.nvmrc' registry-url: 'https://npm.pkg.github.com' scope: '@alfresco' - run: npm run publish -- --tag=branch || exit 1 env: NODE_AUTH_TOKEN: ${{ secrets.PAT_WRITE_PKG }} - uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0 name: release libraries Npm registry with: node-version-file: '.nvmrc' registry-url: 'https://${{ vars.NPM_REGISTRY_ADDRESS }}' scope: '@alfresco' - run: npm run publish -- --tag=branch || exit 1 env: NODE_AUTH_TOKEN: ${{ secrets.NPM_REGISTRY_TOKEN }} npm-check-bundle: needs: [release-npm] timeout-minutes: 15 runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 - uses: ./.github/actions/npm-check-bundle