a574e462c9
The `setup-local` npm script uses `NgPackagesInstaller` to replace the Angular packages with the locally built ones. Previously, it would (a) assume that the packages were built and (b) it would do anything if the currently installed versions already correspond to locally built packages (even if not the latest version). This could lead to all sorts of errors, such as: - Confusing error messages, `dist/packages-dist/` was missing. - Using outdated build artifacts from `dist/packages-dist/` without a warning. - Not installing the latest locally built packages, because the ones installed already corresponded to locally built (but older) ones. This commit fixes these issues by ensuring that: - The local packages are always built before being used by `NgPackagesInstaller`. - The local packages are installed, even if the ones install already correspond to local packages. NOTE: Special `*-ci` scripts are introduced (for use on CI) that skip building the local packages, since that step would have been taken care of (in a more efficient way) in a previous CI step. PR Close #31985 |
||
---|---|---|
.. | ||
README.md | ||
bazel.rc | ||
config.yml | ||
env-helpers.inc.sh | ||
env.sh | ||
gcp_token | ||
get-commit-range.js | ||
github_token | ||
setup-rbe.sh | ||
setup_cache.sh | ||
trigger-webhook.js |
README.md
Encryption
Based on https://github.com/circleci/encrypted-files
In the CircleCI web UI, we have a secret variable called KEY
https://circleci.com/gh/angular/angular/edit#env-vars
which is only exposed to non-fork builds
(see "Pass secrets to builds from forked pull requests" under
https://circleci.com/gh/angular/angular/edit#advanced-settings)
We use this as a symmetric AES encryption key to encrypt tokens like a GitHub token that enables publishing snapshots.
To create the github_token file, we take this approach:
- Find the angular-builds:token in http://valentine
- Go inside the CircleCI default docker image so you use the same version of openssl as we will at runtime:
docker run --rm -it circleci/node:10.12
- echo "https://[token]:@github.com" > credentials
- openssl aes-256-cbc -e -in credentials -out .circleci/github_token -k $KEY
- If needed, base64-encode the result so you can copy-paste it out of docker:
base64 github_token