Невозможно настроить SMTP для Cloud Build - PullRequest
0 голосов
/ 12 июля 2020

Я упаковал Cloud Build триггеры для создания CI / CD конвейера для проекта, и он отлично работает. Теперь я хочу настроить уведомления SMTP, чтобы вся команда проекта могла получать обновления о состоянии сборки.

Cloud Build публикует статус сборки в Cloud Pub/Sub топи c cloud-build. Поэтому для достижения этой цели я следовал этой документации , опубликованной Google Cloud.

Я сделал именно то, что говорится в документе -

  1. Включил необходимые API.
  2. Создал секрет для хранения моих учетных данных SMTP.
  3. Дал разрешение Compute Engine учетной записи службы по умолчанию для доступа к созданному секрету.
  4. Записал конфигурацию уведомителя, как описано в документации.
apiVersion: cloud-build-notifiers/v1
kind: SMTPNotifier
metadata:
  name: master-deloyed-to-staging.
spec:
  notification:
    filter: build.status == Build.Status.SUCCESS
    delivery:
      server: smtp.gmail.com
      port: '587'
      sender: r@gmail.com
      from: r@gmail.com
      recipients:
      - a@gmail.com
      - b@gmail.com
      - c@gmail.com
      - d@gmail.com
      - e@gmail.com
      password:
        secretRef: dropoff-gmail
  secrets:
  - name: dropoff-gmail
    value: projects/project-id/secrets/secret-name/versions/latest

Создал бакк и загрузил в него smtp-notifier.yaml.

Теперь это этап, на котором я подготовил команду для развертывания notifier в cloud run -

 gcloud run deploy dropoff-deployment-notifier \
   --image=us-east1-docker.pkg.dev/gcb-release/cloud-build-notifiers/smtp:latest \
   --update-env-vars=CONFIG_PATH=gs://dropoff-assets/cloud_run/smtp-notifier.yaml

и это возвращает мне ошибку -

ERROR: (gcloud.run.deploy) Cloud Run error: Container failed to start. Failed to start and then listen on the port defined by the PORT environment variable. Logs for this revision might contain more information.

Как указано в ошибке, что-то не так с ПОРТОМ, но знаю, как это исправить.

...