Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
ce6e2b5
Fix a panic when reading annotations if the bundle is not there (#255)
bcrochet Aug 23, 2022
5c55f4e
introduce spec.runAsRoot field (#258)
grokspawn Aug 26, 2022
7a32951
bump k8s to 1.25 and go to 1.19 (#260)
laxmikantbpandhare Sep 15, 2022
ac26619
Makefile: Remove the -v go mod tidy flag to fix the verify check (#262)
timflannagan Sep 29, 2022
0d889b0
go.*,pkg: Remove the duplicate github.com/blang/semver dependency (#264)
timflannagan Sep 29, 2022
dd0f8c9
crds,Makefile: Bump controller-tools version to v0.9.0 (#263)
timflannagan Sep 29, 2022
0dafed3
(makefile) Upgrade mikefarah/yq to v4 (#267)
anik120 Oct 6, 2022
9492344
update k8s 1.25 validation logic (#270)
everettraven Oct 28, 2022
0ff7361
(bugfix): make k8s 1.25 validation logic check api group before issui…
everettraven Dec 21, 2022
29657b2
build(deps): bump golang.org/x/text from 0.3.7 to 0.3.8
dependabot[bot] Feb 23, 2023
ca1a51a
deprecate io/ioutil for io or os (#2835)
grokspawn Aug 9, 2022
ad997e7
Fixes doc error: namespace name must have changed (#2839)
bentito Aug 18, 2022
5049c37
chore: update o-f/api dependency to v0.17 (#2848)
tylerslaton Aug 31, 2022
e963abd
Revert "chore: update o-f/api dependency to v0.17 (#2848)" (#2858)
anik120 Sep 13, 2022
f958ce0
(makefile) Dynamically set GOARCH flag while building binaries (#2871)
anik120 Oct 12, 2022
2afd519
Allow E2E to skip multiple tests (#2892)
awgreene Nov 11, 2022
64bc52b
Revert "Allow E2E to skip multiple tests (#2892)" (#2894)
awgreene Nov 14, 2022
e8d45da
Bump github.com/containerd/containerd to 1.6.10 (#2903)
cblecker Dec 5, 2022
ea11cea
Fix flaky unit tests (#2904)
cblecker Dec 6, 2022
6c59a2e
Run community catalogSource in restricted mode (#2915)
awgreene Jan 12, 2023
911dc2f
Don't use $BUILDPLATFORM image for goreleaser (#2896)
StopMotionCuber Jan 27, 2023
d4d083c
Bump Fedora Version for Builder Image (#2921)
dtfranz Feb 9, 2023
40bab9c
UpdateStrategy RegistryPoll with nil Interval (#2920)
dtfranz Feb 20, 2023
d7ce087
Bump golang.org/x/text from 0.3.7 to 0.3.8 (#2926)
dependabot[bot] Feb 28, 2023
58903e9
Bump golang.org/x/net from 0.0.0-20220909164309-bea034e7d591 to 0.7.0…
dependabot[bot] Feb 28, 2023
46c7821
Bump github.com/containerd/containerd from 1.6.10 to 1.6.18 (#2922)
dependabot[bot] Feb 28, 2023
3a9d2a7
Bump helm.sh/helm/v3 from 3.9.0 to 3.10.3 (#2930)
perdasilva Feb 28, 2023
4bc4eb7
Sort channels in lexicographical order in Packagemanifest (#2925)
anik120 Feb 28, 2023
3488be4
Remove grace period from csv deletions (#2580)
perdasilva Mar 7, 2023
17945e6
Makes golangci-lint use Go version from go.mod (#2935)
m1kola Mar 8, 2023
49f8913
Helm upgrade to v3.11.1 for CVE-2023-25165 (#2933)
tmshort Mar 14, 2023
56c37b5
Add QMEU to goreleaser GitHub Action (#2936)
awgreene Mar 14, 2023
80ae1d2
opm serve: use pre-existing cache, if set and up-to-date (#1005)
joelanford Aug 19, 2022
d48eba7
Updating workflows to pull go version from go.mod file (#1025)
grokspawn Sep 23, 2022
096e939
bump k8s to 1.25 (#1024)
asmacdo Sep 26, 2022
446ff9a
update opm dockerfile example to cache (#1033)
grokspawn Oct 19, 2022
79c5805
go upgrade to 1.19 (#1029)
jcho02 Oct 19, 2022
a6a05c0
change to log image ref value when resolving `name`, since name will …
acornett21 Nov 14, 2022
9df0840
left-right swap edge vertices (#1041)
grokspawn Nov 15, 2022
a4b7f72
semver veneer: error when unknown fields are encountered in input fil…
joelanford Nov 22, 2022
07c15f3
Unmarshall error details (#1040)
grokspawn Nov 30, 2022
1fc801d
Add composite veneer to `opm alpha render-veneer ...` (#1054)
everettraven Jan 20, 2023
981b865
opm migrate: add help text note about concatenated json format (#1055)
joelanford Jan 20, 2023
3e792d6
use mount flag to force consistent selinux labelling between host/gue…
grokspawn Jan 26, 2023
bf4068a
OPECO-2646: exclude bundles with `olm.deprecated` property when rende…
rashmigottipati Feb 21, 2023
13a2bc6
OPECO-2664: rename veneer to template (#1066)
grokspawn Feb 21, 2023
04ff170
updating image pullspec to rename baseimage (#1068)
grokspawn Feb 21, 2023
3f8bfcb
updating template demos (#1071)
grokspawn Feb 27, 2023
bca0859
OCPBUGS-7676: Update helm to v3.11.1 for CVE-2023-25165
tmshort Mar 15, 2023
69442d8
Run "make manifests"
tmshort Mar 15, 2023
bac11fa
Run make verify
tmshort Mar 28, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
237 changes: 104 additions & 133 deletions go.mod

Large diffs are not rendered by default.

634 changes: 309 additions & 325 deletions go.sum

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions manifests/0000_50_olm_00-catalogsources.crd.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,9 @@ spec:
type: integer
publisher:
type: string
runAsRoot:
description: RunAsRoot allows admins to indicate that they wish to run the CatalogSource pod in a privileged pod as root. This should only be enabled when running older catalog images which could not be run as non-root.
type: boolean
secrets:
description: Secrets represent set of secrets that can be used to access the contents of the catalog. It is best to keep this list small, since each will need to be tried for every catalog entry.
type: array
Expand Down
117 changes: 112 additions & 5 deletions manifests/0000_50_olm_00-clusterserviceversions.crd.yaml

Large diffs are not rendered by default.

37 changes: 35 additions & 2 deletions manifests/0000_50_olm_00-subscriptions.crd.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -645,6 +645,21 @@ spec:
description: 'Resources represents compute resources required by this container. Immutable. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
type: object
properties:
claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable."
type: array
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
type: object
required:
- name
properties:
name:
description: Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container.
type: string
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
limits:
description: 'Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
Expand Down Expand Up @@ -1018,7 +1033,7 @@ spec:
items:
type: string
dataSource:
description: 'dataSource field can be used to specify either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot) * An existing PVC (PersistentVolumeClaim) If the provisioner or an external controller can support the specified data source, it will create a new volume based on the contents of the specified data source. If the AnyVolumeDataSource feature gate is enabled, this field will always have the same contents as the DataSourceRef field.'
description: 'dataSource field can be used to specify either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot) * An existing PVC (PersistentVolumeClaim) If the provisioner or an external controller can support the specified data source, it will create a new volume based on the contents of the specified data source. When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef, and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified. If the namespace is specified, then dataSourceRef will not be copied to dataSource.'
type: object
required:
- kind
Expand All @@ -1034,7 +1049,7 @@ spec:
description: Name is the name of resource being referenced
type: string
dataSourceRef:
description: 'dataSourceRef specifies the object from which to populate the volume with data, if a non-empty volume is desired. This may be any local object from a non-empty API group (non core object) or a PersistentVolumeClaim object. When this field is specified, volume binding will only succeed if the type of the specified object matches some installed volume populator or dynamic provisioner. This field will replace the functionality of the DataSource field and as such if both fields are non-empty, they must have the same value. For backwards compatibility, both fields (DataSource and DataSourceRef) will be set to the same value automatically if one of them is empty and the other is non-empty. There are two important differences between DataSource and DataSourceRef: * While DataSource only allows two specific types of objects, DataSourceRef allows any non-core object, as well as PersistentVolumeClaim objects. * While DataSource ignores disallowed values (dropping them), DataSourceRef preserves all values, and generates an error if a disallowed value is specified. (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.'
description: 'dataSourceRef specifies the object from which to populate the volume with data, if a non-empty volume is desired. This may be any object from a non-empty API group (non core object) or a PersistentVolumeClaim object. When this field is specified, volume binding will only succeed if the type of the specified object matches some installed volume populator or dynamic provisioner. This field will replace the functionality of the dataSource field and as such if both fields are non-empty, they must have the same value. For backwards compatibility, when namespace isn''t specified in dataSourceRef, both fields (dataSource and dataSourceRef) will be set to the same value automatically if one of them is empty and the other is non-empty. When namespace is specified in dataSourceRef, dataSource isn''t set to the same value and must be empty. There are three important differences between dataSource and dataSourceRef: * While dataSource only allows two specific types of objects, dataSourceRef allows any non-core object, as well as PersistentVolumeClaim objects. * While dataSource ignores disallowed values (dropping them), dataSourceRef preserves all values, and generates an error if a disallowed value is specified. * While dataSource only allows local objects, dataSourceRef allows objects in any namespaces. (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled. (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.'
type: object
required:
- kind
Expand All @@ -1049,10 +1064,28 @@ spec:
name:
description: Name is the name of resource being referenced
type: string
namespace:
description: Namespace is the namespace of resource being referenced Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details. (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
resources:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
type: object
properties:
claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable."
type: array
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
type: object
required:
- name
properties:
name:
description: Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container.
type: string
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
limits:
description: 'Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
Expand Down
8 changes: 4 additions & 4 deletions staging/api/.github/workflows/go.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Set up Go
uses: actions/setup-go@v2
uses: actions/setup-go@v3
with:
go-version: 1.18
go-version: 1.19
id: go
- name: Check out code into the Go module directory
uses: actions/checkout@v2
Expand All @@ -37,9 +37,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Set up Go
uses: actions/setup-go@v2
uses: actions/setup-go@v3
with:
go-version: 1.18
go-version: 1.19
id: go
- name: Print out Go env
run: go env
Expand Down
4 changes: 2 additions & 2 deletions staging/api/.github/workflows/verify.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-go@v2
- uses: actions/setup-go@v3
with:
go-version: '~1.18'
go-version: '~1.19'
- name: Run the verify target
run: |
export GOPATH=$(go env GOPATH)
Expand Down
18 changes: 9 additions & 9 deletions staging/api/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ help: ## Show this help screen
@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m<target>\033[0m\n"} /^[a-zA-Z0-9_-]+:.*?##/ { printf " \033[36m%-15s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST)

.PHONY: install

install: ## Build & install operator-verify
$(Q)go install \
-gcflags "all=-trimpath=${GOPATH}" \
Expand All @@ -42,7 +41,7 @@ format: ## Format the source code
$(Q)go fmt $(PKGS)

tidy: ## Update dependencies
$(Q)go mod tidy -v
$(Q)go mod tidy
$(Q)go mod verify

clean: ## Clean up the build artifacts
Expand All @@ -59,17 +58,17 @@ manifests: yq controller-gen ## Generate manifests e.g. CRD, RBAC etc
$(CONTROLLER_GEN) schemapatch:manifests=./crds output:dir=./crds paths=./pkg/operators/...

@# Add missing defaults in embedded core API schemas
$(Q)$(YQ) w --inplace ./crds/operators.coreos.com_clusterserviceversions.yaml spec.versions[0].schema.openAPIV3Schema.properties.spec.properties.install.properties.spec.properties.deployments.items.properties.spec.properties.template.properties.spec.properties.containers.items.properties.ports.items.properties.protocol.default TCP
$(Q)$(YQ) w --inplace ./crds/operators.coreos.com_clusterserviceversions.yaml spec.versions[0].schema.openAPIV3Schema.properties.spec.properties.install.properties.spec.properties.deployments.items.properties.spec.properties.template.properties.spec.properties.initContainers.items.properties.ports.items.properties.protocol.default TCP
$(YQ) --inplace '.spec.versions[0].schema.openAPIV3Schema.properties.spec.properties.install.properties.spec.properties.deployments.items.properties.spec.properties.template.properties.spec.properties.containers.items.properties.ports.items.properties.protocol.default="TCP"' ./crds/operators.coreos.com_clusterserviceversions.yaml
$(Q)$(YQ) --inplace '.spec.versions[0].schema.openAPIV3Schema.properties.spec.properties.install.properties.spec.properties.deployments.items.properties.spec.properties.template.properties.spec.properties.initContainers.items.properties.ports.items.properties.protocol.default="TCP"' ./crds/operators.coreos.com_clusterserviceversions.yaml

@# Preserve fields for embedded metadata fields
$(Q)$(YQ) w --inplace ./crds/operators.coreos.com_clusterserviceversions.yaml spec.versions[0].schema.openAPIV3Schema.properties.spec.properties.install.properties.spec.properties.deployments.items.properties.spec.properties.template.properties.metadata.x-kubernetes-preserve-unknown-fields true
$(Q)$(YQ) --inplace '.spec.versions[0].schema.openAPIV3Schema.properties.spec.properties.install.properties.spec.properties.deployments.items.properties.spec.properties.template.properties.metadata.x-kubernetes-preserve-unknown-fields=true' ./crds/operators.coreos.com_clusterserviceversions.yaml

@# Remove OperatorCondition.spec.overrides[*].lastTransitionTime requirement
$(Q)$(YQ) delete --inplace ./crds/operators.coreos.com_operatorconditions.yaml 'spec.versions[*].schema.openAPIV3Schema.properties.spec.properties.overrides.items.required(.==lastTransitionTime)'
$(Q)$(YQ) --inplace 'del(.spec.versions[].schema.openAPIV3Schema.properties.spec.properties.overrides.items.required[] | select(. == "lastTransitionTime"))' ./crds/operators.coreos.com_operatorconditions.yaml

@# Remove status subresource from the CRD manifests to ensure server-side apply works
$(Q)for f in ./crds/*.yaml ; do $(YQ) d --inplace $$f status; done
$(Q)for f in ./crds/*.yaml ; do $(YQ) --inplace 'del(.status)' $$f; done

@# Update embedded CRD files.
$(Q)go generate ./crds/...
Expand Down Expand Up @@ -102,7 +101,8 @@ CONTROLLER_GEN ?= $(LOCALBIN)/controller-gen
YQ ?= $(LOCALBIN)/yq

## Tool Versions
CONTROLLER_TOOLS_VERSION ?= v0.8.0
CONTROLLER_TOOLS_VERSION ?= v0.9.0
YQ_VERSION ?= v4.28.1

.PHONY: controller-gen
controller-gen: $(CONTROLLER_GEN) ## Download controller-gen locally if necessary.
Expand All @@ -112,4 +112,4 @@ $(CONTROLLER_GEN): $(LOCALBIN)
.PHONY: yq
yq: $(YQ) ## Download yq locally if necessary.
$(YQ): $(LOCALBIN)
GOBIN=$(LOCALBIN) go install $(GO_INSTALL_OPTS) github.com/mikefarah/yq/v3@latest
GOBIN=$(LOCALBIN) go install $(GO_INSTALL_OPTS) github.com/mikefarah/yq/v4@$(YQ_VERSION)
7 changes: 5 additions & 2 deletions staging/api/crds/operators.coreos.com_catalogsources.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.8.0
controller-gen.kubebuilder.io/version: v0.9.0
creationTimestamp: null
name: catalogsources.operators.coreos.com
spec:
Expand Down Expand Up @@ -127,6 +127,9 @@ spec:
type: integer
publisher:
type: string
runAsRoot:
description: RunAsRoot allows admins to indicate that they wish to run the CatalogSource pod in a privileged pod as root. This should only be enabled when running older catalog images which could not be run as non-root.
type: boolean
secrets:
description: Secrets represent set of secrets that can be used to access the contents of the catalog. It is best to keep this list small, since each will need to be tried for every catalog entry.
type: array
Expand All @@ -152,7 +155,7 @@ spec:
description: Represents the state of a CatalogSource. Note that Message and Reason represent the original status information, which may be migrated to be conditions based in the future. Any new features introduced will use conditions.
type: array
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, 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 }"
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 }"
type: object
required:
- lastTransitionTime
Expand Down
Loading