ideogram-ci-integration
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseIdeogram CI Integration
Ideogram CI集成
Overview
概述
Set up CI/CD pipelines for Ideogram integrations with automated testing.
为Ideogram集成设置带有自动化测试的CI/CD流水线。
Prerequisites
前提条件
- GitHub repository with Actions enabled
- Ideogram test API key
- npm/pnpm project configured
- 已启用Actions的GitHub仓库
- Ideogram测试API密钥
- 已配置的npm/pnpm项目
Instructions
操作步骤
Step 1: Create GitHub Actions Workflow
步骤1:创建GitHub Actions工作流
Create :
.github/workflows/ideogram-integration.ymlyaml
name: Ideogram Integration Tests
on:
push:
branches: [main]
pull_request:
branches: [main]
env:
IDEOGRAM_API_KEY: ${{ secrets.IDEOGRAM_API_KEY }}
jobs:
test:
runs-on: ubuntu-latest
env:
IDEOGRAM_API_KEY: ${{ secrets.IDEOGRAM_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创建:
.github/workflows/ideogram-integration.ymlyaml
name: Ideogram Integration Tests
on:
push:
branches: [main]
pull_request:
branches: [main]
env:
IDEOGRAM_API_KEY: ${{ secrets.IDEOGRAM_API_KEY }}
jobs:
test:
runs-on: ubuntu-latest
env:
IDEOGRAM_API_KEY: ${{ secrets.IDEOGRAM_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:integrationStep 2: Configure Secrets
步骤2:配置密钥
bash
gh secret set IDEOGRAM_API_KEY --body "sk_test_***"bash
gh secret set IDEOGRAM_API_KEY --body "sk_test_***"Step 3: Add Integration Tests
步骤3:添加集成测试
typescript
describe('Ideogram Integration', () => {
it.skipIf(!process.env.IDEOGRAM_API_KEY)('should connect', async () => {
const client = getIdeogramClient();
const result = await client.healthCheck();
expect(result.status).toBe('ok');
});
});typescript
describe('Ideogram Integration', () => {
it.skipIf(!process.env.IDEOGRAM_API_KEY)('should connect', async () => {
const client = getIdeogramClient();
const result = await client.healthCheck();
expect(result.status).toBe('ok');
});
});Output
输出结果
- Automated test pipeline
- PR checks configured
- Coverage reports uploaded
- Release workflow ready
- 自动化测试流水线
- 已配置的PR检查
- 已上传的覆盖率报告
- 就绪的发布工作流
Error Handling
错误处理
| Issue | Cause | Solution |
|---|---|---|
| Secret not found | Missing configuration | Add secret via |
| Tests timeout | Network issues | Increase timeout or mock |
| Auth failures | Invalid key | Check secret value |
| 问题 | 原因 | 解决方案 |
|---|---|---|
| 未找到密钥 | 缺少配置 | 通过 |
| 测试超时 | 网络问题 | 增加超时时间或使用模拟数据 |
| 认证失败 | 密钥无效 | 检查密钥值 |
Examples
示例
Release Workflow
发布工作流
yaml
on:
push:
tags: ['v*']
jobs:
release:
runs-on: ubuntu-latest
env:
IDEOGRAM_API_KEY: ${{ secrets.IDEOGRAM_API_KEY_PROD }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- run: npm ci
- name: Verify Ideogram production readiness
run: npm run test:integration
- run: npm run build
- run: npm publishyaml
on:
push:
tags: ['v*']
jobs:
release:
runs-on: ubuntu-latest
env:
IDEOGRAM_API_KEY: ${{ secrets.IDEOGRAM_API_KEY_PROD }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- run: npm ci
- name: Verify Ideogram production readiness
run: npm run test:integration
- run: npm run build
- run: npm publishBranch Protection
分支保护
yaml
required_status_checks:
- "test"
- "ideogram-integration"yaml
required_status_checks:
- "test"
- "ideogram-integration"Resources
参考资源
Next Steps
后续步骤
For deployment patterns, see .
ideogram-deploy-integration如需了解部署模式,请查看。
ideogram-deploy-integration