forked from Gitlink/gitlink-cli
2.3 KiB
2.3 KiB
GitLink Workflow 服务器部署指南
本文档描述如何将 workflow 引擎部署到 Linux 服务器,使用 systemd timer 实现 24×7 自动化运行。
部署步骤
1. 编译
GOOS=linux GOARCH=amd64 go build -buildvcs=false -o gitlink-cli .
2. 上传
scp gitlink-cli root@39.108.139.73:/usr/local/bin/
scp -r skills/ root@39.108.139.73:/etc/gitlink-cli/skills/
3. 登录配置
ssh root@39.108.139.73
gitlink-cli config set anthropic-api-key sk-ant-xxx
gitlink-cli auth login
4. 创建 systemd service
以 contributor-growth 工作流为例:
cat > /etc/systemd/system/gitlink-contributor.service << 'EOF'
[Unit]
Description=GitLink Workflow: contributor-growth
After=network-online.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/gitlink-cli workflow +run \
--name contributor-growth \
--owner chroe --repo gitlink-cli \
--format json
User=root
EOF
5. 创建 systemd timer
cat > /etc/systemd/system/gitlink-contributor.timer << 'EOF'
[Unit]
Description=GitLink Contributor Growth — daily
[Timer]
OnCalendar=daily
Persistent=true
[Install]
WantedBy=timers.target
EOF
6. 启动
systemctl daemon-reload
systemctl enable --now gitlink-contributor.timer
7. 验证
systemctl status gitlink-contributor.timer
journalctl -u gitlink-contributor.service -f
多工作流部署
每个工作流需要独立的 service 和 timer 文件。例如同时运行社区运营和贡献者成长:
# community-ops
cat > /etc/systemd/system/gitlink-community.service << 'EOF'
[Unit]
Description=GitLink Workflow: community-ops
After=network-online.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/gitlink-cli workflow +run \
--name community-ops --owner chroe --repo gitlink-cli --format json
User=root
EOF
cat > /etc/systemd/system/gitlink-community.timer << 'EOF'
[Unit]
Description=GitLink Community Ops — every 5m
[Timer]
OnCalendar=*:0/5
Persistent=true
[Install]
WantedBy=timers.target
EOF
systemctl enable --now gitlink-community.timer
注意事项
- 确保服务器上
gitlink-cli已通过auth login认证 ANTHROPIC_API_KEY可通过环境变量或配置文件设置- 使用
journalctl -u <service> -f查看实时日志 - Timer 的
OnCalendar语法参考 systemd.time(7) 手册