Travis CI развертывается с помощью cron.yaml в gcp - PullRequest
0 голосов
/ 04 июля 2018

Я пытаюсь настроить работу cron для сайта, размещенного на GCP. Мы используем Travis CI для создания нашего сайта и его развертывания в GAE. Я создал cron.yaml для запуска некоторых тестов, но я не знаю, как развернуть его на нашем сайте.

Вот мой cron.yaml:

cron:
- description: TestPush Notification
  url: /test
  schedule: every 1 mins
  retry_parameters:
    min_backoff_seconds: 2.5
    max_doublings: 5
  timezone: America/Vancouver

Вот мой .travis.yaml:

sudo: false
language: python
python:
- '2.7'
before_install:
- openssl aes-256-cbc -K $encrypted_xxxx_key -iv $encrypted_xxxx_iv -in client-secret.json.enc -out client-secret.json -d
- export PYTHONPATH="${PYTHONPATH}:${TRAVIS_BUILD_DIR}/lib"
install:
- pip install -r requirements-prd.txt -t lib/
- pip install requests --upgrade -t lib/
- cd ubyssey/static
- npm install -g gulp
- npm install
script:
- gulp build
after_success:
# clean up node_modules
- rm -rf node_modules
- cd ${TRAVIS_BUILD_DIR}
# use deploy settings
- mv _settings/settings-dpl.py ubyssey/settings.py
- python manage.py collectstatic --noinput
# gzip static files
- find ${TRAVIS_BUILD_DIR}/gcs -type f -exec gzip "{}" \; -exec mv "{}.gz" "{}" \;
# replace deploy settings with production settings
- rm ubyssey/settings.py ubyssey/settings.pyc
- mv _settings/settings-prd.py ubyssey/settings.py
- rm -rf .git/
deploy:
  - provider: gcs
    access_key_id: <omitted>
    secret_access_key:
      secure: <omitted>
    bucket: ubyssey
    skip_cleanup: true
    acl: public-read
    local-dir: ${TRAVIS_BUILD_DIR}/gcs
    detect_encoding: true
    cache_control: "max-age=31536000"
    on:
      tags: true
  - provider: gae
    keyfile: client-secret.json
    project: ubyssey-prd
    default: true
    version: ubyssey-${TRAVIS_TAG//./-} # Replace periods with hyphens
    skip_cleanup: true
    on:
      tags: true

Как получить сборку travis для развертывания приложения с помощью cron.yaml?

1 Ответ

0 голосов
/ 04 июля 2018

Похоже, Трэвис использует gcloud app deploy app.yaml

https://docs.travis -ci.com / пользователь / разворачивание / Google-приложение двигатель / # Other-Available-Configuration-Options

Так что вам нужен Трэвис для ясности, добавьте cron.yaml вот так gcloud app deploy app.yaml cron.yaml

https://cloud.google.com/appengine/docs/flexible/go/scheduling-jobs-with-cron-yaml

Трудно сказать, позволяет ли конфигурация travis указывать несколько развертываемых файлов

Возможно, вам придется добавить дубликат provider: gae записи с config, указывающим на cron.yaml

...