Skip to content

Migrate CI/CD from Travis to GitHub Actions#390

Closed
RishabhJain2018 wants to merge 3 commits into
masterfrom
ci/migrate-to-github-actions
Closed

Migrate CI/CD from Travis to GitHub Actions#390
RishabhJain2018 wants to merge 3 commits into
masterfrom
ci/migrate-to-github-actions

Conversation

@RishabhJain2018

@RishabhJain2018 RishabhJain2018 commented Jun 13, 2026

Copy link
Copy Markdown
Member

Summary

  • Replace Travis CI with GitHub Actions workflows for linting, testing, and package publishing
  • Add Codecov upload workflow (replacing Coveralls) and a minimal codecov.yml
  • Preserve release behavior: staging branch pushes publish to TestPyPI, git tags publish to production PyPI
  • Remove .travis.yml, deploy-staging.sh, and .coveralls.yml; update README badges

Test plan

  • Add required GitHub secrets: CODECOV_TOKEN, TEST_PYPI_USERNAME, TEST_PYPI_PASSWORD, PYPI_API_TOKEN
  • Register repo on Codecov and confirm coverage upload on this PR
  • Verify ci-cd workflow passes (flake8 + pytest) on this PR
  • After merge, push to staging to confirm TestPyPI publish
  • After merge, tag a release to confirm production PyPI publish
  • Disable Travis CI for this repository

Summary by CodeRabbit

Release Notes

  • Chores
    • Migrated CI/CD infrastructure from Travis CI to GitHub Actions with automated testing, code quality checks, and package publishing workflows.
    • Implemented codecov integration for enhanced code coverage reporting and branch/pull request tracking.
    • Updated repository badges to reflect new CI/CD platform and coverage tools.
    • Updated development tooling to use Python 3.9.

Replace Travis, Coveralls, and deploy-staging.sh with GitHub Actions workflows for linting, testing, Codecov uploads, and PyPI/TestPyPI publishing.
@coderabbitai

coderabbitai Bot commented Jun 13, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

Pull request was closed or merged during review

📝 Walkthrough

Walkthrough

This PR migrates the repository's CI/CD infrastructure from Travis CI and Coveralls to GitHub Actions and Codecov. It introduces new workflow files for linting/testing/publishing and coverage reporting, adds codecov configuration, removes legacy Travis/Coveralls setup, and updates documentation and project dependencies accordingly.

Changes

CI/CD and Coverage Infrastructure Migration

Layer / File(s) Summary
GitHub Actions CI/CD workflow
.github/workflows/ci-cd.yml, setup.py
Main workflow triggers on pushes to master/staging, tags, PRs, and manual dispatch. Five jobs: code_quality runs flake8, test runs pytest with coverage output, publish_to_testpypi deploys on staging branch, publish_to_pypi deploys on tag push. Coveralls dependency removed from setup.py.
Coverage upload and Codecov configuration
.github/workflows/upload-coverage.yml, codecov.yml
upload-coverage workflow runs after successful ci-cd completion, downloads artifacts, uploads coverage to Codecov with proper PR/commit/branch overrides, and posts commit status. Codecov config specifies branch checks, 70% project target with 80% patch target for PRs, ignored paths, and GitHub checks output.
CI/CD documentation and project updates
.github/CI_CD.md, README.md, .pre-commit-config.yaml
New CI/CD guide documents workflows, required secrets, GitHub environments, and release steps. README badges replaced from Travis/Coveralls to GitHub Actions/Codecov. Pre-commit black configuration updated from Python 3.7 to 3.9.

🎯 3 (Moderate) | ⏱️ ~20 minutes

🐰 CI workflows now run swift and free,
With coverage tracking via Codecov's tree,
GitHub Actions keeps the tests aligned,
Release to PyPI with publishing refined,
Travis is gone—now the future's designed! 🚀

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The pull request title 'Migrate CI/CD from Travis to GitHub Actions' directly and clearly describes the main change: replacing Travis CI with GitHub Actions for CI/CD workflows.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ci/migrate-to-github-actions

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Use the same PYTHON_RUNTIME_VERSION as the main EvalAI repository in GitHub Actions and pre-commit.
Match the EvalAI repository badge style for PR review visibility.
@RishabhJain2018

Copy link
Copy Markdown
Member Author

Closing in favor of a new PR with commits attributed to the correct GitHub account (RishabhJain2018).

@RishabhJain2018 RishabhJain2018 deleted the ci/migrate-to-github-actions branch June 14, 2026 22:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants