协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
vastai-ci-integration【开发与工程】Configure Vast.ai CI/CD integration with GitHub Actions and testing. Use when setting up automated testing, configuring CI pipelines, or integrating Vast.ai tests into your build process. Trigger with phrases like "vastai CI", "vastai GitHub Actions", "vastai automated tests", "CI vastai".
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Set up CI/CD pipelines for Vast.ai integrations with automated testing.
Create .github/workflows/vastai-integration.yml:
name: Vast.ai Integration Tests
on:
push:
branches: [main]
pull_request:
branches: [main]
env:
VASTAI_API_KEY: ${{ secrets.VASTAI_API_KEY }}
jobs:
test:
runs-on: ubuntu-latest
env:
VASTAI_API_KEY: ${{ secrets.VASTAI_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 VASTAI_API_KEY --body "sk_test_***"
describe('Vast.ai Integration', () => {
it.skipIf(!process.env.VASTAI_API_KEY)('should connect', async () => {
const client = getVast.aiClient();
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:
VASTAI_API_KEY: ${{ secrets.VASTAI_API_KEY_PROD }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- run: npm ci
- name: Verify Vast.ai production readiness
run: npm run test:integration
- run: npm run build
- run: npm publish
required_status_checks:
- "test"
- "vastai-integration"
For deployment patterns, see vastai-deploy-integration.