Comments (7)
@MuneebAijaz Sure, we would be happy to work with you on this. It should be pretty straightforward:
- Add the field to the ClusterIngress struct in clusterdeployment_types.go
- Run
make update vendor
to regenerate CRDs and the vendored copy of the API - Add the code in remoteingresscontroller.go that parlays the new field into the IngressController object
- Add unit tests to remoteinrgess_controller_test.go to verify ⬆️
- Test in a real cluster to make sure it does what you want.
from hive.
Hive does not create syncsets for anything by default; this is clearly coming from somewhere else. You may be able to figure out where by looking at managed fields:
oc get sss $name -o yaml --show-managed-fields
Also noteworthy is that the clustersync controller will apply syncsets in ascending alpha name order; so you may be able to work around this by naming your patch z-default-ingress-controller-patch
or similar.
from hive.
The above mentioned SyncSet is created by Hive itself. That causes our patch to be overwritten.
We are providing custom TLS certificates for the spoke and that therefore creates ClusterIngress SyncSet.
Even if we change the name with z-default-ingress-controller-patch
on every reconcile it will try to change the same resource two times causing the ingress pod roll-out to happen twice
from hive.
Okay, I found the code that creates the SyncSet when CD.Spec.Ingress is specified.
Also let me correct/clarify my statement about ordering: We apply in alpha order, but we apply all SyncSets first; then all SelectorSyncSets. So the rename wouldn't have made a different in your case -- your SSS would have been applied last anyway.
causing the ingress pod rollout to happen twice
While not ideal, does this actually cause a problem? I ask because...
I can see where we would be able to add HttpErrorCodePages
to our Ingress
API and get it funneled through to the IngressController. I've opened HIVE-2040 to put that on our radar. However, our belt is pretty tight for feature work at the moment, so it may be a while before we can get to it.
Out of curiosity, how are you consuming/installing hive? From OperatorHub? Via ACM or MCE? Directly from the repo?
from hive.
While not ideal, does this actually cause a problem? I ask because...
SyncSet applies hives default values,
httpErrorCodePages: name: ''
Our SelectorSyncSet applies custom values,
httpErrorCodePages: name: saap-error-pages
So both of these conflict with each other on every reconcile, which constantly make our pod and configmap recreate.
Out of curiosity, how are you consuming/installing hive? From OperatorHub? Via ACM or MCE? Directly from the repo?
Via ACM
from hive.
Thanks for the responses. Are you able to (create a Jira account and) follow the card? We don't track issues in GH so I'd like to close this one.
from hive.
Hi, @2uasimojo , I would like to work on this. Are you accepting community PRs for hive?
from hive.
Related Issues (20)
- Error "Required value: must specify a platform" for field "spec.platform". HOT 2
- Internal Install using Private Link - Logs HOT 6
- hive upgrade to 1.1.6 is expecting CRD API version to be v1beta instead of v1 HOT 5
- Implement Openstack Hibernation HOT 9
- Pass skip_provider_registration flag HOT 2
- How to make Hive trust new API cert in managed cluster? HOT 6
- Hive Cluster Relocation is stuck on kube-root-ca.crt and openshift-service-ca.crt already exists HOT 5
- Rotating the admin kubeconfig after 10 years HOT 6
- Install fails on ClusterRoleBinding HOT 7
- Consider tagging submodule "apis"? HOT 2
- How if Hive released? HOT 1
- ClusterClaim-controller should watch for changes to RoleBindings as well HOT 1
- ClusterSync-controller's requeueAfter duration could be insufficient HOT 2
- Availability of Hive in ARM HOT 5
- hive-clustersync-0 - CreateContainerConfigError
- Provided SSH keypair not used for bootstrap node HOT 11
- Add IBM resource group flag in hiveutil HOT 3
- Missing Role and/or RoleBinding block clustercleanup HOT 3
- How to troubleshoot clusterpools? HOT 2
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 hive.