replit-ci-integration
Configure Replit CI/CD integration with GitHub Actions and testing.Use when setting up automated testing, configuring CI pipelines,or integrating Replit tests into your build process.Trigger with phrases like "replit CI", "replit GitHub Actions","replit automated tests", "CI replit".
When & Why to Use This Skill
This Claude skill automates the configuration of CI/CD pipelines for Replit projects using GitHub Actions. It streamlines the setup of automated testing environments, secure API key management via GitHub Secrets, and the implementation of robust release workflows to ensure high code quality and seamless integration between Replit and GitHub.
Use Cases
- Automated Integration Testing: Automatically trigger Replit-based test suites on every GitHub push or pull request to ensure code changes don't break existing functionality.
- Secure Secret Management: Using the GitHub CLI to securely configure and inject Replit API keys into the CI environment, preventing credential leaks.
- Production Readiness Verification: Creating release workflows that perform final integration checks on Replit before publishing packages or deploying to production.
- Branch Protection: Configuring mandatory status checks that require successful Replit integration tests to pass before code can be merged into the main branch.
| name | replit-ci-integration |
|---|---|
| description | | |
| allowed-tools | Read, Write, Edit, Bash(gh:*) |
| version | 1.0.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
Replit CI Integration
Overview
Set up CI/CD pipelines for Replit integrations with automated testing.
Prerequisites
- GitHub repository with Actions enabled
- Replit test API key
- npm/pnpm project configured
Instructions
Step 1: Create GitHub Actions Workflow
Create .github/workflows/replit-integration.yml:
name: Replit Integration Tests
on:
push:
branches: [main]
pull_request:
branches: [main]
env:
REPLIT_API_KEY: ${{ secrets.REPLIT_API_KEY }}
jobs:
test:
runs-on: ubuntu-latest
env:
REPLIT_API_KEY: ${{ secrets.REPLIT_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
Step 2: Configure Secrets
gh secret set REPLIT_API_KEY --body "sk_test_***"
Step 3: Add Integration Tests
describe('Replit Integration', () => {
it.skipIf(!process.env.REPLIT_API_KEY)('should connect', async () => {
const client = getReplitClient();
const result = await client.healthCheck();
expect(result.status).toBe('ok');
});
});
Output
- Automated test pipeline
- PR checks configured
- Coverage reports uploaded
- Release workflow ready
Error Handling
| 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 |
Examples
Release Workflow
on:
push:
tags: ['v*']
jobs:
release:
runs-on: ubuntu-latest
env:
REPLIT_API_KEY: ${{ secrets.REPLIT_API_KEY_PROD }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- run: npm ci
- name: Verify Replit production readiness
run: npm run test:integration
- run: npm run build
- run: npm publish
Branch Protection
required_status_checks:
- "test"
- "replit-integration"
Resources
Next Steps
For deployment patterns, see replit-deploy-integration.