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

Add vagrant boxes caching to CI #11485

Closed

Conversation

VannTen
Copy link
Contributor

@VannTen VannTen commented Aug 29, 2024

What type of PR is this?
/kind feature

What this PR does / why we need it:
We're hitting 429 responses when running lots of jobs, presumably
because we are downloading lots of boxes again and again.
This should cache them instead.

Does this PR introduce a user-facing change?:

NONE

/ok-to-test

@k8s-ci-robot k8s-ci-robot added release-note-none Denotes a PR that doesn't merit a release note. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. kind/feature Categorizes issue or PR as related to a new feature. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Aug 29, 2024
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: VannTen

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Aug 29, 2024
We're hitting 429 responses when running lots of jobs, presumably
because we are downloading lots of boxes again and again.
This should cache them instead.
@VannTen
Copy link
Contributor Author

VannTen commented Aug 29, 2024

This is apparently not enough because the CI runners can't extract the cache because they don't have gitlab-runner :
https://gitlab.com/kargo-ci/kubernetes-sigs-kubespray/-/jobs/7698277164#L124

@VannTen
Copy link
Contributor Author

VannTen commented Aug 29, 2024

@ant31 if you have an idea

@ant31
Copy link
Contributor

ant31 commented Sep 9, 2024

It's 429 from which service ?

@VannTen
Copy link
Contributor Author

VannTen commented Sep 9, 2024 via email

@ant31
Copy link
Contributor

ant31 commented Sep 20, 2024

/retest

@k8s-ci-robot
Copy link
Contributor

@VannTen: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
pull-kubespray-yamllint 2803946 link true /test pull-kubespray-yamllint

Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@VannTen
Copy link
Contributor Author

VannTen commented Sep 20, 2024 via email

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Sep 20, 2024
@VannTen
Copy link
Contributor Author

VannTen commented Sep 24, 2024

I feel like this is happening a lot recently, but maybe we just have more activity in the CI...
Maybe we could juste include the box in the image ? 🤔

@ant31
Copy link
Contributor

ant31 commented Sep 25, 2024

Yes, we're probably rate limit quicker we are running more job in parallel and also since it's quicker so we probably can DL more at time.

can we host the box ourself somewhere ?

@VannTen
Copy link
Contributor Author

VannTen commented Sep 25, 2024 via email

@tico88612
Copy link
Member

Is there anything I can do to help with HTTP 429 CI issues?

@VannTen
Copy link
Contributor Author

VannTen commented Oct 22, 2024 via email

@VannTen
Copy link
Contributor Author

VannTen commented Oct 22, 2024 via email

@ant31
Copy link
Contributor

ant31 commented Oct 23, 2024

Yes, droping vagrant could be a good idea if we can replace it with kubevirt

Instead of s3-cache we could also host the vagrant box ourself too (if it's easier) in the cluster itself. would be kind of equivalent

@tico88612
Copy link
Member

tico88612 commented Oct 25, 2024

Self hosted Vagrant server unless we have the resources to do permissions control (and maintain the custom gitlab-ci executors), I think it would be better to transfer to packet.

To summarize, maybe I can try to give some of the vagrant work to packet first.
Should we need to open a new issue to track this?

@ant31
Copy link
Contributor

ant31 commented Oct 25, 2024

I don't know it seems a lot of work without immediate upside.
There's one symptom of using vagrant is being rate limited to fetch boxes, which can be more easily solved with providing the boxes ourself or with cache.
But if someone want to try, yes it's welcome

@ant31
Copy link
Contributor

ant31 commented Oct 25, 2024

Minio is working.

Still missing configuration is the custom kubevirt gitlab executor (looks like need to add gitlab-runner binary inside the container)

@VannTen
Copy link
Contributor Author

VannTen commented Oct 25, 2024 via email

@ant31
Copy link
Contributor

ant31 commented Oct 28, 2024

/close replaced by : #11671

@VannTen VannTen closed this Oct 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. kind/feature Categorizes issue or PR as related to a new feature. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. release-note-none Denotes a PR that doesn't merit a release note. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants