diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 9d05a1bd..0c7026f4 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-20.04 steps: - name: Check out source code - uses: actions/checkout@v2 + uses: actions/checkout@v4 with: ref: gh_pages - uses: actions/setup-node@v2 diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index b0639690..7ce0bff7 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -15,14 +15,15 @@ jobs: - name: Display build environment run: printenv - - uses: actions/setup-go@v3 - name: Set up Go 1.x - with: - go-version: "1.20" - - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 name: Checkout frontend-operator + - uses: actions/setup-go@v5 + name: Set up Go 1.x + with: + go-version-file: 'go.mod' + check-latest: false + - name: golangci-lint uses: golangci/golangci-lint-action@v3 with: diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml index f15907d7..4ca3052b 100644 --- a/.github/workflows/package.yml +++ b/.github/workflows/package.yml @@ -7,14 +7,15 @@ name: Run Unit Tests jobs: testing: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - - uses: actions/setup-go@v2 - name: Set up golang 1.20 - with: - go-version: '1.20' - name: Check out source code - uses: actions/checkout@v2 + uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + name: Set up golang 1.2x + with: + go-version-file: 'go.mod' + check-latest: false - name: Install package and dependencies run: | make diff --git a/.tekton/frontend-operator-pull-request.yaml b/.tekton/frontend-operator-pull-request.yaml index 7f87e6a1..3409607f 100644 --- a/.tekton/frontend-operator-pull-request.yaml +++ b/.tekton/frontend-operator-pull-request.yaml @@ -207,7 +207,7 @@ spec: - name: TEST_OUTPUT description: Test output steps: - - image: registry.access.redhat.com/ubi8/go-toolset:1.20.12-5.1712568462 + - image: registry.access.redhat.com/ubi8/go-toolset:1.21 env: - name: SNAPSHOT value: $(params.SNAPSHOT) diff --git a/Dockerfile b/Dockerfile index 7a6c2c0f..c9c917a1 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # Build the manager binary -FROM registry.access.redhat.com/ubi8/go-toolset:1.20.12-5.1713833129 as base +FROM registry.access.redhat.com/ubi8/go-toolset:1.21 as base WORKDIR /workspace diff --git a/Makefile b/Makefile index 7e52dff3..c5a7df5e 100644 --- a/Makefile +++ b/Makefile @@ -166,7 +166,7 @@ undeploy: ## Undeploy controller from the K8s cluster specified in ~/.kube/confi CONTROLLER_GEN = $(shell pwd)/testbin/bin/controller-gen controller-gen: ## Download controller-gen locally if necessary. - $(call go-get-tool,$(CONTROLLER_GEN),sigs.k8s.io/controller-tools/cmd/controller-gen@v0.8.0) + $(call go-get-tool,$(CONTROLLER_GEN),sigs.k8s.io/controller-tools/cmd/controller-gen@v0.14.0) KUSTOMIZE = $(shell pwd)/testbin/bin/kustomize kustomize: ## Download kustomize locally if necessary. diff --git a/api/v1alpha1/zz_generated.deepcopy.go b/api/v1alpha1/zz_generated.deepcopy.go index fb59aa44..12f4ba7c 100644 --- a/api/v1alpha1/zz_generated.deepcopy.go +++ b/api/v1alpha1/zz_generated.deepcopy.go @@ -1,5 +1,4 @@ //go:build !ignore_autogenerated -// +build !ignore_autogenerated /* Copyright 2021 RedHatInsights. diff --git a/config/crd/bases/cloud.redhat.com_bundles.yaml b/config/crd/bases/cloud.redhat.com_bundles.yaml index d54442cd..25f6b862 100644 --- a/config/crd/bases/cloud.redhat.com_bundles.yaml +++ b/config/crd/bases/cloud.redhat.com_bundles.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.8.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.15.0 name: bundles.cloud.redhat.com spec: group: cloud.redhat.com @@ -21,14 +20,19 @@ spec: description: Bundle is the Schema for the Bundles API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -282,9 +286,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/config/crd/bases/cloud.redhat.com_frontendenvironments.yaml b/config/crd/bases/cloud.redhat.com_frontendenvironments.yaml index 21b666f7..af65980b 100644 --- a/config/crd/bases/cloud.redhat.com_frontendenvironments.yaml +++ b/config/crd/bases/cloud.redhat.com_frontendenvironments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.8.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.15.0 name: frontendenvironments.cloud.redhat.com spec: group: cloud.redhat.com @@ -31,14 +30,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -60,9 +64,10 @@ spec: description: Enable Akamai Cache Bust type: boolean generateNavJSON: - description: GenerateNavJSON determines if the nav json configmap - parts should be generated for the bundles. We want to do do this - in epehemeral environments but not in production + description: |- + GenerateNavJSON determines if the nav json configmap + parts should be generated for the bundles. We want to do + do this in epehemeral environments but not in production type: boolean hostname: description: Hostname @@ -71,9 +76,10 @@ spec: description: Ingress class type: string monitoring: - description: MonitorMode determines where a ServiceMonitor object - will be placed local will add it to the frontend's namespace app-interface - will add it to "openshift-customer-monitoring" + description: |- + MonitorMode determines where a ServiceMonitor object will be placed + local will add it to the frontend's namespace + app-interface will add it to "openshift-customer-monitoring" properties: disabled: type: boolean @@ -87,9 +93,9 @@ spec: - mode type: object ssl: - description: SSL mode requests SSL from the services in openshift - and k8s and then applies them to the pod, the route is also set - to reencrypt in the case of OpenShift + description: |- + SSL mode requests SSL from the services in openshift and k8s and then applies them to the + pod, the route is also set to reencrypt in the case of OpenShift type: boolean sso: description: Foo is an example field of FrontendEnvironment. Edit @@ -111,9 +117,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/config/crd/bases/cloud.redhat.com_frontends.yaml b/config/crd/bases/cloud.redhat.com_frontends.yaml index 3db9d77a..60bafb76 100644 --- a/config/crd/bases/cloud.redhat.com_frontends.yaml +++ b/config/crd/bases/cloud.redhat.com_frontends.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.8.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.15.0 name: frontends.cloud.redhat.com spec: group: cloud.redhat.com @@ -36,14 +35,19 @@ spec: description: Frontend is the Schema for the frontends API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -265,42 +269,42 @@ spec: conditions: items: description: "Condition contains details for one aspect of the current - state of this API Resource. --- This struct is intended for direct - use as an array at the field path .status.conditions. For example, - \n type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: \"Available\", - \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge - // +listType=map // +listMapKey=type Conditions []metav1.Condition - `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" - protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" + state of this API Resource.\n---\nThis struct is intended for + direct use as an array at the field path .status.conditions. For + example,\n\n\n\ttype FooStatus struct{\n\t // Represents the + observations of a foo's current state.\n\t // Known .status.conditions.type + are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // + +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t + \ // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" + patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t + \ // other fields\n\t}" properties: lastTransitionTime: - description: lastTransitionTime is the last time the condition - transitioned from one status to another. This should be when - the underlying condition changed. If that is not known, then - using the time when the API field changed is acceptable. + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. format: date-time type: string message: - description: message is a human readable message indicating - details about the transition. This may be an empty string. + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. maxLength: 32768 type: string observedGeneration: - description: observedGeneration represents the .metadata.generation - that the condition was set based upon. For instance, if .metadata.generation - is currently 12, but the .status.conditions[x].observedGeneration - is 9, the condition is out of date with respect to the current - state of the instance. + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. format: int64 minimum: 0 type: integer reason: - description: reason contains a programmatic identifier indicating - the reason for the condition's last transition. Producers - of specific condition types may define expected values and - meanings for this field, and whether the values are considered - a guaranteed API. The value should be a CamelCase string. + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. This field may not be empty. maxLength: 1024 minLength: 1 @@ -314,11 +318,12 @@ spec: - Unknown type: string type: - description: type of condition in CamelCase or in foo.example.com/CamelCase. - --- Many .condition.type values are consistent across resources - like Available, but because arbitrary conditions can be useful - (see .node.status.conditions), the ability to deconflict is - important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) + description: |- + type of condition in CamelCase or in foo.example.com/CamelCase. + --- + Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be + useful (see .node.status.conditions), the ability to deconflict is important. + The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) maxLength: 316 pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ type: string @@ -352,9 +357,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/config/rbac/role.yaml b/config/rbac/role.yaml index 090fe2dc..db93e553 100644 --- a/config/rbac/role.yaml +++ b/config/rbac/role.yaml @@ -2,7 +2,6 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: - creationTimestamp: null name: manager-role rules: - apiGroups: diff --git a/deploy.yml b/deploy.yml index b7c25017..2d7bcd93 100644 --- a/deploy.yml +++ b/deploy.yml @@ -13,8 +13,7 @@ objects: kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.8.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.15.0 name: bundles.cloud.redhat.com spec: group: cloud.redhat.com @@ -32,14 +31,27 @@ objects: properties: apiVersion: description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + of an object. + + Servers should convert recognized schemas to the latest internal value, + and + + may reject unrecognized values. + + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' type: string kind: description: 'Kind is a string value representing the REST resource - this object represents. Servers may infer this from the endpoint the - client submits requests to. Cannot be updated. In CamelCase. More - info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + this object represents. + + Servers may infer this from the endpoint the client submits requests + to. + + Cannot be updated. + + In CamelCase. + + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' type: string metadata: type: object @@ -293,18 +305,11 @@ objects: storage: true subresources: status: {} - status: - acceptedNames: - kind: '' - plural: '' - conditions: [] - storedVersions: [] - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.8.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.15.0 name: frontendenvironments.cloud.redhat.com spec: group: cloud.redhat.com @@ -332,14 +337,27 @@ objects: properties: apiVersion: description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + of an object. + + Servers should convert recognized schemas to the latest internal value, + and + + may reject unrecognized values. + + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' type: string kind: description: 'Kind is a string value representing the REST resource - this object represents. Servers may infer this from the endpoint the - client submits requests to. Cannot be updated. In CamelCase. More - info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + this object represents. + + Servers may infer this from the endpoint the client submits requests + to. + + Cannot be updated. + + In CamelCase. + + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' type: string metadata: type: object @@ -361,9 +379,11 @@ objects: description: Enable Akamai Cache Bust type: boolean generateNavJSON: - description: GenerateNavJSON determines if the nav json configmap - parts should be generated for the bundles. We want to do do this - in epehemeral environments but not in production + description: 'GenerateNavJSON determines if the nav json configmap + + parts should be generated for the bundles. We want to do + + do this in epehemeral environments but not in production' type: boolean hostname: description: Hostname @@ -372,9 +392,12 @@ objects: description: Ingress class type: string monitoring: - description: MonitorMode determines where a ServiceMonitor object - will be placed local will add it to the frontend's namespace app-interface - will add it to "openshift-customer-monitoring" + description: 'MonitorMode determines where a ServiceMonitor object + will be placed + + local will add it to the frontend''s namespace + + app-interface will add it to "openshift-customer-monitoring"' properties: disabled: type: boolean @@ -388,9 +411,10 @@ objects: - mode type: object ssl: - description: SSL mode requests SSL from the services in openshift - and k8s and then applies them to the pod, the route is also set - to reencrypt in the case of OpenShift + description: 'SSL mode requests SSL from the services in openshift + and k8s and then applies them to the + + pod, the route is also set to reencrypt in the case of OpenShift' type: boolean sso: description: Foo is an example field of FrontendEnvironment. Edit @@ -413,18 +437,11 @@ objects: storage: true subresources: status: {} - status: - acceptedNames: - kind: '' - plural: '' - conditions: [] - storedVersions: [] - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.8.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.15.0 name: frontends.cloud.redhat.com spec: group: cloud.redhat.com @@ -457,14 +474,27 @@ objects: properties: apiVersion: description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + of an object. + + Servers should convert recognized schemas to the latest internal value, + and + + may reject unrecognized values. + + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' type: string kind: description: 'Kind is a string value representing the REST resource - this object represents. Servers may infer this from the endpoint the - client submits requests to. Cannot be updated. In CamelCase. More - info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + this object represents. + + Servers may infer this from the endpoint the client submits requests + to. + + Cannot be updated. + + In CamelCase. + + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' type: string metadata: type: object @@ -686,44 +716,57 @@ objects: conditions: items: description: "Condition contains details for one aspect of the\ - \ current state of this API Resource. --- This struct is intended\ + \ current state of this API Resource.\n---\nThis struct is intended\ \ for direct use as an array at the field path .status.conditions.\ - \ For example, \n type FooStatus struct{ // Represents the\ - \ observations of a foo's current state. // Known .status.conditions.type\ - \ are: \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type\ - \ // +patchStrategy=merge // +listType=map // +listMapKey=type\ - \ Conditions []metav1.Condition `json:\"conditions,omitempty\"\ - \ patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"\ - bytes,1,rep,name=conditions\"` \n // other fields }" + \ For example,\n\n\n\ttype FooStatus struct{\n\t // Represents\ + \ the observations of a foo's current state.\n\t // Known\ + \ .status.conditions.type are: \"Available\", \"Progressing\"\ + , and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\ + \t // +listType=map\n\t // +listMapKey=type\n\t Conditions\ + \ []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"\ + merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"\ + `\n\n\n\t // other fields\n\t}" properties: lastTransitionTime: - description: lastTransitionTime is the last time the condition - transitioned from one status to another. This should be - when the underlying condition changed. If that is not known, - then using the time when the API field changed is acceptable. + description: 'lastTransitionTime is the last time the condition + transitioned from one status to another. + + This should be when the underlying condition changed. If + that is not known, then using the time when the API field + changed is acceptable.' format: date-time type: string message: - description: message is a human readable message indicating - details about the transition. This may be an empty string. + description: 'message is a human readable message indicating + details about the transition. + + This may be an empty string.' maxLength: 32768 type: string observedGeneration: - description: observedGeneration represents the .metadata.generation - that the condition was set based upon. For instance, if - .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration - is 9, the condition is out of date with respect to the current - state of the instance. + description: 'observedGeneration represents the .metadata.generation + that the condition was set based upon. + + For instance, if .metadata.generation is currently 12, but + the .status.conditions[x].observedGeneration is 9, the condition + is out of date + + with respect to the current state of the instance.' format: int64 minimum: 0 type: integer reason: - description: reason contains a programmatic identifier indicating - the reason for the condition's last transition. Producers - of specific condition types may define expected values and - meanings for this field, and whether the values are considered - a guaranteed API. The value should be a CamelCase string. - This field may not be empty. + description: 'reason contains a programmatic identifier indicating + the reason for the condition''s last transition. + + Producers of specific condition types may define expected + values and meanings for this field, + + and whether the values are considered a guaranteed API. + + The value should be a CamelCase string. + + This field may not be empty.' maxLength: 1024 minLength: 1 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ @@ -737,11 +780,17 @@ objects: - Unknown type: string type: - description: type of condition in CamelCase or in foo.example.com/CamelCase. - --- Many .condition.type values are consistent across resources + description: 'type of condition in CamelCase or in foo.example.com/CamelCase. + + --- + + Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be + useful (see .node.status.conditions), the ability to deconflict - is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) + is important. + + The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)' maxLength: 316 pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ type: string @@ -775,12 +824,6 @@ objects: storage: true subresources: status: {} - status: - acceptedNames: - kind: '' - plural: '' - conditions: [] - storedVersions: [] - apiVersion: v1 kind: ServiceAccount metadata: @@ -967,7 +1010,6 @@ objects: - apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: - creationTimestamp: null name: frontend-operator-manager-role rules: - apiGroups: diff --git a/go.mod b/go.mod index 539e58b2..89a860dd 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/RedHatInsights/frontend-operator -go 1.20 +go 1.21 require ( github.com/RedHatInsights/clowder v0.80.0