
gathertown/circleci-slack-notifiercircleci-slack-notifier是一个基于Go语言开发的命令行工具,专门用于在CircleCI作业执行过程中向Slack频道发送通知。通过集成CircleCI环境变量和Slack Webhook,该工具能够自动将作业状态(成功、失败、取消等)实时推送至指定Slack频道,帮助开发团队及时掌握CI/CD流程状态。
| 环境变量 | 描述 | 是否必填 |
|---|---|---|
SLACK_WEBHOOK_URL | Slack Incoming Webhook URL | 是 |
CIRCLECI_JOB_STATUS | 作业状态(success/failure/cancelled/timedout) | 是 |
CIRCLE_PROJECT_REPONAME | 项目仓库名称 | 否(默认从CircleCI环境变量获取) |
CIRCLE_BRANCH | 分支名称 | 否(默认从CircleCI环境变量获取) |
CIRCLE_BUILD_URL | 构建详情URL | 否(默认从CircleCI环境变量获取) |
bashdocker run --rm \ -e SLACK_WEBHOOK_URL="[***]" \ -e CIRCLECI_JOB_STATUS="success" \ -e CIRCLE_PROJECT_REPONAME="my-project" \ -e CIRCLE_BRANCH="main" \ -e CIRCLE_BUILD_URL="[***]" \ gathertown/circleci-slack-notifier
可通过命令行参数覆盖环境变量配置:
bashdocker run --rm gathertown/circleci-slack-notifier \ --webhook-url "[***]" \ --status "failure" \ --project "my-project" \ --branch "feature/new-endpoint" \ --build-url "[***]"
在.circleci/config.yml中添加通知步骤:
yamlversion: 2.1 jobs: build: docker: - image: cimg/go:1.20 steps: - checkout - run: go build - run: name: Send Slack Notification when: always command: | docker run --rm \ -e SLACK_WEBHOOK_URL="${SLACK_WEBHOOK_URL}" \ -e CIRCLECI_JOB_STATUS="${CIRCLE_JOB_STATUS}" \ gathertown/circleci-slack-notifier
注:需在CircleCI项目设置中添加
SLACK_WEBHOOK_URL环境变量
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务