我已经云构建 触发器创造持续集成/持续交付项目的管道,并且它工作得很好。现在,我想配置SMTP 通知这样整个项目团队就可以了解构建状态的最新情况。
云构建发布构建状态至云发布/订阅话题云构建。因此,为了实现这一点,我一直在关注 Google Cloud 发布的文档。
我完全按照文件上说的做了——
启用所需的 API。
创建了一个秘密来存储我的 SMTP 凭证。
授予 Compute Engine 默认服务帐号访问创建的机密的权限。
按照文档所述编写通知程序配置。
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: [email protected]
from: [email protected]
recipients:
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
password:
secretRef: dropoff-gmail
secrets:
- name: dropoff-gmail
value: projects/project-id/secrets/secret-name/versions/latest
创建一个存储桶并将 smtp-notifier.yaml 上传到其中。
现在,我准备了一个命令来将通知程序部署到云运行。我使用文档中使用的图像来部署到云构建
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.
正如错误中所述,PORT 有问题,但不知道如何修复。