Verifyr

Email Validation for GitHub Actions CI/CD

For DevOps teams and developers, integrating email validation into your GitHub Actions CI/CD workflows ensures data quality for builds, tests, and deployments. Verifyr streamlines your pipeline.

The problem

Poor data quality, especially in user email fields, can lead to unexpected failures in CI/CD pipelines, from broken tests to deployment errors in staging or production environments. Manually verifying email lists or individual addresses before a release adds significant overhead and slows down development cycles. This risk is amplified when dealing with seed data, user imports, or integration tests that rely on valid email formats.

Integrating email validation directly into your GitHub Actions workflow automates a critical quality gate. Without it, invalid email data can propagate through your systems, causing issues in downstream services, notification systems, or even customer-facing applications. This proactive approach saves developer time, reduces post-deployment bugs, and ensures your applications operate with clean, reliable user data.

How Verifyr solves it

1
Add a Verifyr API call step within your GitHub Actions workflow to validate email lists or single addresses.
2
Automate email data quality checks, failing builds early if critical datasets contain invalid or disposable emails.
3
Ensure consistent and clean email data across all environments, from development to production, reducing integration issues.

Concrete example


# .github/workflows/validate-emails.yml
name: Email Data Validation
on: [push]
jobs:
  validate-data:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - name: Validate emails in user_data.csv
      run: |
        python -c "import csv, requests, sys
api_key = '${{ secrets.VERIFYR_API_KEY }}'
with open('user_data.csv') as f:
    for row in csv.reader(f):
        resp = requests.get(f'https://api.verifyrhq.com/v1/validate?email={row[0]}&api_key={api_key}').json()
        if not resp.get('valid'): sys.exit(f'Invalid email: {row[0]}')
        "

Ready to try Verifyr?

Real email validation. No bounce-back surprises.

Frequently asked questions

How can Verifyr fit into our existing CI/CD pipeline?
You can easily integrate Verifyr by adding a step to your GitHub Actions workflow. Use a simple `curl` command or a Python/Node.js script to call the Verifyr API, validating email data files or dynamically generated emails before proceeding with the build or deployment.
What kind of email data can I validate in CI/CD?
You can validate various email data, including test user emails, customer lists for migration scripts, or email addresses used in seed data for new environment deployments. Ensuring this data is clean prevents unexpected failures and improves system reliability.
Will this slow down our CI/CD builds significantly?
Verifyr's API is designed for speed. For typical data validation tasks within a CI/CD pipeline, the impact on build times is minimal. You can choose to validate critical subsets of data or implement asynchronous checks for larger lists to optimize performance.

Related use cases