Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(docker): add docker-compose file to run CI locally #8209

Merged
merged 16 commits into from
Jan 30, 2024
Merged

Conversation

gustavovalverde
Copy link
Member

Motivation

We'd like to allow developers to run CI locally easily, using a similar approach to how we run it in our GitHub Actions, but without having to remember each specific command needed to run a specific test.

This would allow developers to confirm if an issue is specific to GitHub or GCP, or if it also reflects locally, and allow them to debug it easier.

Fixes #4464
Fixes #7534
This sets the ground for #8023

What are the most important goals of the ticket or PR?

PR Author Checklist

Check before marking the PR as ready for review:

  • [ X ] Will the PR name make sense to users?
  • [ X ] Does the PR have a priority label?
  • [ X ] Have you added or updated tests?
  • [ X ] Is the documentation up to date?
For significant changes:
  • Is there a summary in the CHANGELOG?
  • Can these changes be split into multiple PRs?

If a checkbox isn't relevant to the PR, mark it as done.

Complex Code or Requirements

Solution

  • Create a docker-compose.test.yml which can be used to run tests with a simple command
  • Add a test.env file to avoid adding all these variables to the compose file.
  • Create documentation on how to use CI locally

Testing

  • Run at least one test locally following the provided documentation

Review

The whole @ZcashFoundation/devops-reviewers should at least try this.

Reviewer Checklist

Check before approving the PR:

  • Does the PR scope match the ticket?
  • Are there enough tests to make sure it works? Do the tests cover the PR motivation?
  • Are all the PR blockers dealt with?
    PR blockers can be dealt with in new tickets or PRs.

And check the PR Author checklist is complete.

Follow Up Work

@gustavovalverde gustavovalverde added A-devops Area: Pipelines, CI/CD and Dockerfiles I-usability Zebra is hard to understand or use C-testing Category: These are tests C-feature Category: New features P-Medium ⚡ labels Jan 29, 2024
@gustavovalverde gustavovalverde self-assigned this Jan 29, 2024
@gustavovalverde gustavovalverde requested review from a team as code owners January 29, 2024 22:11
@gustavovalverde gustavovalverde requested review from arya2 and removed request for a team January 29, 2024 22:11
@github-actions github-actions bot added the C-trivial Category: A trivial change that is not worth mentioning in the CHANGELOG label Jan 29, 2024
@upbqdn upbqdn removed the C-trivial Category: A trivial change that is not worth mentioning in the CHANGELOG label Jan 29, 2024
@github-actions github-actions bot added the C-trivial Category: A trivial change that is not worth mentioning in the CHANGELOG label Jan 29, 2024
@arya2 arya2 force-pushed the ref-docker-features branch from 15a2777 to 384dee7 Compare January 29, 2024 22:24
mergify bot added a commit that referenced this pull request Jan 30, 2024
@mergify mergify bot merged commit 18477ec into main Jan 30, 2024
153 checks passed
@mergify mergify bot deleted the feat-local-ci branch January 30, 2024 19:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-devops Area: Pipelines, CI/CD and Dockerfiles C-feature Category: New features C-testing Category: These are tests C-trivial Category: A trivial change that is not worth mentioning in the CHANGELOG I-usability Zebra is hard to understand or use P-Medium ⚡
Projects
None yet
3 participants