- 仓库激活
- 配置
- 执行
入门
仓库激活
要激活您的项目,请转到您的账户设置.您将看到可以使用简单切换激活的仓库列表.当您激活仓库时,悟空会自动向源码托管平台添加Webhook.
Webhook 用于触发流水线执行.当您将代码推送到仓库、打开拉取请求或创建标记时,悟空源码托管平台会发送 Webhook,触发自动编译,随后会触发流水线执行.
所需权限 在悟空中启用 repo 的用户必须对该 repo 具有"管理员"权限,以便悟空可以添加 webhook. 请注意,手动创建 webhook 是不可能的.这是因为 webhook 使用每仓库唯一的密钥对进行签名,该密钥对不会向最终用户公开.
Webhook
当您激活仓库时,悟空会自动向托管平台添加 Webhook.无需手动配置.
Webhook 用于触发流水线执行.当您将代码推送到仓库、打开拉取请求或创建标记时,悟空源码托管平台会发送 Webhook,触发自动编译,随后会触发流水线执行.
配置
要配置您的流水线,应在仓库的根目录中放置一个 .woodpecker.yml 文件..woodpecker.yml
文件用于定义您的流水线步骤.它是广泛使用的 docker-compose 文件格式的超集.
:::注意 我们支持 YAML 1.2 的大部分功能,但为了向后兼容性保留了一些 1.1 的行为. 阅读更多信息:https://github.com/go-yaml/yaml/tree/v3) :::
流水线配置示例:
pipeline:
build:
image: golang
commands:
- go get
- go build
- go test
services:
postgres:
image: postgres:9.4.5
environment:
- POSTGRES_USER=myapp
具有多个序列步骤的流水线配置示例:
pipeline:
backend:
image: golang
commands:
- go get
- go build
- go test
frontend:
image: node:6
commands:
- npm install
- npm test
notify:
image: plugins/slack
channel: developers
username: woodpecker
执行
要触发第一次流水线执行,您可以将代码推送到仓库、打开拉取请求或推送标记.这些事件中的任何一个都会触发托管代码的 webhook 并执行您的流水线.