angular-cn/.circleci
Alex Eagle cccc328a52 ci: fix github_token following README (#23658)
PR Close #23658
2018-05-02 21:41:10 -07:00
..
README.md ci: hide encryption key from circleci logs (#23585) 2018-05-02 16:43:13 -07:00
bazel.rc build: flatten esm5 sources before rollup (#23131) 2018-04-03 10:47:29 -07:00
config.yml ci: hide encryption key from circleci logs (#23585) 2018-05-02 16:43:13 -07:00
github_token ci: fix github_token following README (#23658) 2018-05-02 21:41:10 -07:00
setup_cache.sh ci: enable bazel remote caching on CircleCI (#21784) 2018-02-13 10:10:41 -08:00

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 ngcontainer docker image so you use the same version of openssl as we will at runtime: docker run --rm -it angular/ngcontainer
  • 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