Comments (16)
I think still okay to keep it open for now. I think two things would entirely solve it eventually
- getting rid of the separate module or
- attaching setup-envtest binaries to CR releases
the 2nd one is on my TODO list, just not much bandwidth atm
from controller-runtime.
@alvaroaleman can we discuss proper versioning of setup-env with separate tags for keep compatibility with go install or maybe other options?
from controller-runtime.
I've encountered the same issue, the method mentioned in this issue regarding tags is very simple and elegant. By synchronously creating the 'tools/setup-envtest/vX.Y.Z' tag, one can easily install it using go install sigs.k8s.io/controller-runtime/tools/[email protected]
Before such tags are created, a workaround can be utilized via go install sigs.k8s.io/controller-runtime/tools/setup-envtest@BRANCH
. For instance go install sigs.k8s.io/controller-runtime/tools/[email protected]
from controller-runtime.
Hey folks,
we are currently experimenting a bit on setup-envtest because the envtest binaries are today hosted on the Google-owned kubebuilder repository.
Going forward we will start hosting the envtest binaries on controller-tools releases. We currently also plan to move setup-envtest to controller-tools as it fits better there. As part of that we will build & publish the setup-envtest binary on controller-tools releases in the future. This should also give proper versioning.
from controller-runtime.
@lukas016 There are no plans to break go install (just has to be run against controller-tools instead of controller-runtime).
from controller-runtime.
/kind support
from controller-runtime.
There is a work around for this as main isn't versioned along with tools/setupenv-tools.
#1670 (comment)
I'm not sure the impact of now bundling the new tag you request for setup-envtest to coincide with the controller-runtime's release process. I'm not aware of anything needing to change which why this needs to be hard to coordinate this with the current release process.
from controller-runtime.
@troy0820 can i ask you why it isn't store in separate repository? I checked https://github.com/kubernetes-sigs/controller-runtime/blob/main/tools/setup-envtest/go.sum and i don't see any dependencies to controller-runtime library. It can be easy manage this tool in separate repo and we can follow standard versioning for golang tools.
from controller-runtime.
@lukas016 I can't answer that question as I'm not a maintainer of controller-runtime. However, I believe this may have been a side effect of it having it's own go.mod and being embedded in this repository. There are ways to do multimodule version for releases and that may still be an option to satisfy this issue.
from controller-runtime.
@vincepri can ask you why setup-env is part of this repo and it doesn't have own repo? thx
from controller-runtime.
There is a work around for this as main isn't versioned along with tools/setupenv-tools. #1670 (comment)
I've also hit that issue and the workaround while working it's cumbersome to use. Ideally we'd be able to simply run go install sigs.k8s.io/controller-runtime/tools/setup-envtest@WHATEVER
and have setup-envtest
installed.
The introduction of tags in the issue description would be a rather cheap way of achieving that (compared to let's say moved the tool to a separate repo and paying the maintenance costs of that).
from controller-runtime.
@sbueringer could you pls keep compatibility with go install? I like this way.
from controller-runtime.
Potentially this issue will just get rid of the additional module: #2790
Then setup-envtest can be automatically installed with the CR version and there would be no need to move it to the controller-tools repo.
from controller-runtime.
Not sure if this issue still relevant or not with the changes that went in or with the workaround in the comment that I mentioned.
from controller-runtime.
The second one is now implemented.
Quoting my comment from another issue
Now starting with the v0.19 release setup-envtest binaries are available via release attachments (see e.g. https://github.com/kubernetes-sigs/controller-runtime/releases/tag/v0.19.0)
I would recommend using these binaries if:
- a specific setup-envtest version is required
- folks have trouble compiling the binary themselves
#2744 (comment)
/close
from controller-runtime.
@sbueringer: Closing this issue.
In response to this:
The second one is now implemented.
Quoting my comment from another issue
Now starting with the v0.19 release setup-envtest binaries are available via release attachments (see e.g. https://github.com/kubernetes-sigs/controller-runtime/releases/tag/v0.19.0)
I would recommend using these binaries if:
- a specific setup-envtest version is required
- folks have trouble compiling the binary themselves
#2744 (comment)/close
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.
from controller-runtime.
Related Issues (20)
- Find one scalable pattern to wrap clients, and deprecate others
- Watch resources by GroupVersionKind not only by object HOT 4
- Support users options to export go schedule related runtime metrics
- Restmapper: Use aggregated discovery if available HOT 1
- cache contained <nil> HOT 5
- Informer fails to sync, timeout waiting for API HOT 1
- Bad log message HOT 11
- `pkg/manager/internal.go` - panic on log HOT 4
- controller_runtime_reconcile_errors_total metric value is not getting updated for reconcile errors
- Fake client does not preserve TypeMeta for PartialObjectMetadata after request HOT 5
- Controller-runtime does not compile with client-go 1.31 with version v0.18.5 HOT 17
- Feature: Allow ManagerOptions to be marshalled
- Does not compile with apimachinery 1.31 HOT 8
- How to use new Watches() function ? HOT 2
- When watching a resource in multiple namespaces, cluster-wide rbac is needed HOT 2
- Rely on API Priority and Fairness (APF) instead of client-side rate limiting HOT 2
- incorrect check for duplicate controller names HOT 5
- Cannot install @latest version v0.19.0 due to dependencies issues HOT 4
- Ability to watch resources in a particular namespace in predicate when cache is watching all namespaces HOT 2
- client.Status().Update() causes pod Metadata update HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from controller-runtime.