Skip to content

Migrate Jenkins build to GH Actions for release #3059

@mohitsuman

Description

@mohitsuman

Goal

The goal of this issue is to migrate our current Jenkins-based build and continuous integration (CI) system to GitHub Actions. GitHub Actions provides a modern and more integrated approach for automating our workflows, improving code quality, and enhancing collaboration within our repository.

Background

As our project has grown, we've noticed some limitations with our current Jenkins-based CI setup. Maintaining and scaling Jenkins has become increasingly complex, and integrating Jenkins with our GitHub repositories has resulted in some challenges. GitHub Actions can offer a more streamlined and flexible CI/CD pipeline that leverages our existing GitHub infrastructure.

Scope of Work

  1. Setup GitHub Actions Workflow: Create a new GitHub Actions workflow that replicates the existing Jenkins build process. This workflow should include building, testing, and packaging our application.

  2. Migrate Jenkins Jobs: Identify the Jenkins jobs that need to be migrated and their configurations. Then, port these configurations to GitHub Actions YAML format. We may need to adjust some steps to accommodate the differences between Jenkins and GitHub Actions.

  3. Dependency Management: Ensure that all required dependencies for our build process are correctly specified in the GitHub Actions workflow.

  4. Artifact Storage: Determine the appropriate way to store build artifacts generated by GitHub Actions. Evaluate GitHub's built-in artifact storage or consider integrating with external artifact repositories if needed.

  5. Review and Approval Workflow: Integrate the GitHub Actions workflow with our pull request process, ensuring that changes are tested before merging and that the pipeline status is visible within pull requests.

  6. Secrets Management: Ensure that any sensitive credentials or API keys used in the build process are securely managed using GitHub Secrets.

Additional Notes

  • Take into account any project-specific intricacies and adjust the migration plan accordingly.
  • Document the new GitHub Actions workflow and update the project's documentation accordingly.

Note: Before proceeding with this migration, we should ensure that the current Jenkins CI setup is added as a backup.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

✅ Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions