协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
windsurf-ci-integration【开发与工程】Configure Windsurf CI/CD integration with GitHub Actions and testing. Use when setting up automated testing, configuring CI pipelines, or integrating Windsurf tests into your build process. Trigger with phrases like "windsurf CI", "windsurf GitHub Actions", "windsurf automated tests", "CI windsurf".
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Set up CI/CD pipelines for Windsurf integrations with automated testing.
Create .github/workflows/windsurf-integration.yml:
name: Windsurf Integration Tests
on:
push:
branches: [main]
pull_request:
branches: [main]
env:
WINDSURF_API_KEY: ${{ secrets.WINDSURF_API_KEY }}
jobs:
test:
runs-on: ubuntu-latest
env:
WINDSURF_API_KEY: ${{ secrets.WINDSURF_API_KEY }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'
- run: npm ci
- run: npm test -- --coverage
- run: npm run test:integration
gh secret set WINDSURF_API_KEY --body "sk_test_***"
describe('Windsurf Integration', () => {
it.skipIf(!process.env.WINDSURF_API_KEY)('should connect', async () => {
const client = getWindsurfClient();
const result = await client.healthCheck();
expect(result.status).toBe('ok');
});
});
| Issue | Cause | Solution |
|---|---|---|
| Secret not found | Missing configuration | Add secret via gh secret set |
| Tests timeout | Network issues | Increase timeout or mock |
| Auth failures | Invalid key | Check secret value |
on:
push:
tags: ['v*']
jobs:
release:
runs-on: ubuntu-latest
env:
WINDSURF_API_KEY: ${{ secrets.WINDSURF_API_KEY_PROD }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- run: npm ci
- name: Verify Windsurf production readiness
run: npm run test:integration
- run: npm run build
- run: npm publish
required_status_checks:
- "test"
- "windsurf-integration"
For deployment patterns, see windsurf-deploy-integration.