mirror of
https://github.com/angular/angular.git
synced 2026-09-14 13:54:52 +08:00
a5ddb872b8
Ocasionally Node is randomly not installed in the Windows job. We've been trying to debug this for a while. With the additonal debug information it looks like in some situations the NodeJS folder from NVM is not even present. One idea is to use `nvm on` to ensure NVM is actually enabled. It's unclear why it would be `off` at VM start, but it's worth giving a try. Trying `nvm off` via SSH yields similar issues as we saw in the flaky workflows: https://app.circleci.com/pipelines/github/angular/angular/56160/workflows/2f1b80b3-29c7-4274-804e-cb994c20aff0/jobs/1287228 PR Close #49142
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 the internal pw database
- 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