GCP Cloud Build - развертывание задания планировщика - PullRequest
1 голос
/ 14 февраля 2020

В нашем файле cloudbuild.yaml есть следующее, и он, как и ожидалось, создает задание нашего облачного планировщика.

    steps:
    # deploy cloud scheduler job
    - name: "gcr.io/cloud-builders/gcloud"
      args: ["scheduler", "jobs", "create", "pubsub", "my_job_name", "--schedule=0 0 * * 1-5", "--topic=my_topic", "--message-body=My Message", "--description=My Description", "--time-zone=America/MyTimeZone"]

Однако, когда облачная сборка запускается снова, мы получаем следующую ошибку:

    ERROR: (gcloud.scheduler.jobs.create.pubsub) ALREADY_EXISTS: ....

Мы бы хотели сохранить это в нашей облачной сборке, а не создавать вручную в консоли. Как бы мы, если возможно, реструктурировали этапы сборки и / или, возможно, добавили облачную функцию в python37, которая бы проверяла, существует ли задание, если не создано. Если работа существует и изменений нет, продолжайте. Если изменения присутствуют, обновите.

Любые отзывы, предложения или примеры будут оценены!

Спасибо

1 Ответ

1 голос
/ 14 февраля 2020

Вы можете создавать условия с помощью gcloud Cloud Builder и bash в своем cloudbuild.yaml . См. этот творческий ответ для вдохновения.

То есть вы используете чек с gcloud beta scheduler jobs list и / или gcloud beta scheduler jobs describe в качестве условия перед созданием расписания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...