customerio-ci-integration
Customer.io CI Integration
Overview
Set up CI/CD pipelines for Customer.io integrations with automated testing, smoke tests, and deployment workflows for GitHub Actions and GitLab CI.
Prerequisites
- CI/CD platform (GitHub Actions, GitLab CI, etc.)
- Separate Customer.io workspace for testing
- Secrets management configured
Instructions
Step 1: Create GitHub Actions Workflow
Set up unit tests, integration tests, and smoke tests with separate test workspaces. Include coverage reporting and test user cleanup.
Step 2: Build Test Fixtures
Create reusable test helpers for client creation, test user ID generation, and cleanup functions.
Step 3: Write Integration Test Suite
Test identify, track, and error handling with vitest. Use unique test user IDs and clean up in afterAll hooks.
Step 4: Configure GitLab CI (if applicable)
Set up equivalent stages for unit tests, integration tests, and deployment with environment-specific variables.
Step 5: Set Up Pre-commit Hooks
Add linting and type-checking hooks that run on Customer.io integration files before commit.
Step 6: Manage CI Environments
Create environment validation scripts that verify credentials are available before tests run.
For detailed implementation code and configurations, load the reference guide:
Read(${CLAUDE_SKILL_DIR}/references/implementation-guide.md)
Output
- GitHub Actions workflow for testing
- GitLab CI configuration
- Integration test suite with vitest
- Pre-commit hooks
- Environment management scripts
Error Handling
| Issue | Solution |
|---|---|
| Secrets not available | Check CI environment secrets config |
| Test user pollution | Use unique IDs and cleanup in afterAll |
| Rate limiting in CI | Add delays between test batches |
Resources
Next Steps
After CI setup, proceed to customerio-deploy-pipeline for production deployment.
Examples
Basic usage: Apply customerio ci integration to a standard project setup with default configuration options.
Advanced scenario: Customize customerio ci integration for production environments with multiple constraints and team-specific requirements.