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(actions): add GH self-hosted runner for tests requiring network syncs #6740

Closed
wants to merge 14 commits into from

Conversation

gustavovalverde
Copy link
Member

Motivation

Using self-hosted runners directly on VMs does not allow us to scale it and move it from different infraestructures easily, which requires us to build our own Docker image.

Specifications

TODO

Complex Code or Requirements

TODO

Solution

Create our own Docker image with a custom entrypoint which allow us to register the workers on-the-fly and at runtime, using a specific GitHub PAT (in the meanwhile)

Otherwise we'd have to manually run this steps before raising a new runner.

Review

Reviewer Checklist

  • Will the PR name make sense to users?
    • Does it need extra CHANGELOG info? (new features, breaking changes, large changes)
  • Are the PR labels correct?
  • Does the code do what the ticket and PR says?
    • Does it change concurrent code, unsafe code, or consensus rules?
  • How do you know it works? Does it have tests?

Follow Up Work

@github-actions github-actions bot added C-feature Category: New features C-trivial Category: A trivial change that is not worth mentioning in the CHANGELOG labels May 22, 2023
@gustavovalverde
Copy link
Member Author

Here's a sync which has over 20 hours running, with a 120 hours timeout (intermediate steps have also been removed): https://github.com/ZcashFoundation/zebra/actions/runs/5098431127/jobs/9167648586

@gustavovalverde gustavovalverde changed the title feat(actions): build our own GH self-hosted runner feat(actions): add GH self-hosted runner for tests requiring network syncs May 29, 2023
@teor2345
Copy link
Contributor

Here's a sync which has over 20 hours running, with a 120 hours timeout (intermediate steps have also been removed): ZcashFoundation/zebra/actions/runs/5098431127/jobs/9167648586

To limit Google Cloud costs, I'd suggest having a timeout that is close to the maximum time expected for the job. At the moment that's about 50-55 hours for the mainnet full sync.

@teor2345 teor2345 added A-infrastructure Area: Infrastructure changes A-devops Area: Pipelines, CI/CD and Dockerfiles do-not-merge Tells Mergify not to merge this PR labels Jun 12, 2023
@dconnolly dconnolly removed the do-not-merge Tells Mergify not to merge this PR label Jun 14, 2023
@teor2345 teor2345 added do-not-merge Tells Mergify not to merge this PR and removed do-not-merge Tells Mergify not to merge this PR labels Jun 30, 2023
@arya2 arya2 added do-not-merge Tells Mergify not to merge this PR and removed do-not-merge Tells Mergify not to merge this PR labels Jul 21, 2023
@oxarbitrage oxarbitrage added do-not-merge Tells Mergify not to merge this PR and removed do-not-merge Tells Mergify not to merge this PR labels Aug 31, 2023
@gustavovalverde
Copy link
Member Author

We're no longer going to use this approach. I'll create a PR with the new one.

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 A-infrastructure Area: Infrastructure changes C-feature Category: New features C-trivial Category: A trivial change that is not worth mentioning in the CHANGELOG
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants