https://github.com/angular/angular
Raw File
Tip revision: 45badde88c145d554687884d909436aa5bd1147d authored by Andrew Scott on 15 May 2024, 20:35:11 UTC
release: cut the v17.3.9 release
Tip revision: 45badde
aio-preview-build.yml
# This workflow builds the AIO previews for pull requests when a certain label is applied.
# The actual deployment happens as part of a dedicated second workflow to avoid security
# issues where the building would otherwise occur in an authorized context where secrets
# could be leaked. More details can be found here:

# https://securitylab.github.com/research/github-actions-preventing-pwn-requests/.

name: Build AIO app for preview deployment

on:
  pull_request:
    types: [synchronize, labeled]

permissions: read-all

jobs:
  aio-build:
    runs-on: ubuntu-latest
    # We only want to build and deploy the AIO app if the `aio: preview` label has been
    # added, or if the label is already applied and new changes have been made in the PR.
    if: |
      (github.event.action == 'labeled' && github.event.label.name == 'aio: preview') ||
      (github.event.action == 'synchronize' && contains(github.event.pull_request.labels.*.name, 'aio: preview'))
    steps:
      - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
      - uses: ./.github/actions/yarn-install

      - uses: angular/dev-infra/github-actions/bazel/configure-remote@c83e99a12397014162531ca125c94549db55dd84
        with:
          bazelrc: ./.bazelrc.user

      # Build the web package. Note: We run Bazel from a low-resource Github action container,
      # so we manually need to instruct Bazel to run more actions concurrently as by default
      # the number of concurrent actions is determined based on the host resources.
      - run: bazel build //aio:build --jobs=32 --announce_rc --verbose_failures

      - uses: angular/dev-infra/github-actions/previews/pack-and-upload-artifact@c83e99a12397014162531ca125c94549db55dd84
        with:
          workflow-artifact-name: 'aio'
          pull-number: '${{github.event.pull_request.number}}'
          artifact-build-revision: '${{github.event.pull_request.head.sha}}'
          deploy-directory: './dist/bin/aio/build'
back to top