Можно ли проверить, установлена ​​ли в Travis зашифрованная переменная среды? - PullRequest
0 голосов
/ 31 января 2019

У меня есть необходимость пропустить этап, если переменная окружения не установлена.

Если env var задан как простой текст, он работает, например:

language: node_js
node_js:
- '10'
sudo: required
services:
- docker
- mongodb
script:
- npm run test
env:
  - DOCKER_PASS=TEST
jobs:
  include:
  - stage: Tests
    if: env(DOCKER_PASS) IS NOT blank
    name: Integration tests
    script: npm run test
  - stage: Mutation
    name: Mutation tests
    script: npm run test:mutation

но если я изменю переменную среды на безопасную, такую ​​как:

travis encrypt DOCKER_PASS=test --add
language: node_js
node_js:
- '10'
sudo: required
services:
- docker
- mongodb
script:
- npm run test
jobs:
  include:
  - stage: Tests
    if: env(DOCKER_PASS) IS NOT blank
    name: Integration tests
    script: npm run test
  - stage: Mutation
    name: Mutation tests
    script: npm run test:mutation
env:
  global:
    secure: SECURE_VALUE

, она не будет работать.

Есть ли какие-либо ограничения вокруг использования функции env () с secureпеременные окружения?

...