Skip to content

Commit e544950

Browse files
Merge pull request operator-framework#2244 from timflannagan/release-v0.18.3
v0.18.3 OLM release
2 parents 7fe8851 + b98ff9d commit e544950

21 files changed

+7866
-18
lines changed

.github/workflows/quickstart.yml

+21-1
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,24 @@ jobs:
2020
kubectl apply -f deploy/upstream/quickstart/crds.yaml
2121
kubectl wait --timeout=5m --for=condition=Established crd $(kubectl get crd --output=jsonpath='{.items[*].metadata.name}')
2222
kubectl apply -f deploy/upstream/quickstart/olm.yaml
23-
kubectl wait --timeout=5m --for=condition=Available -n olm deploy olm-operator catalog-operator packageserver
23+
24+
# Note(tflannag): `kubectl wait` does not support waiting for resource creation: https://github.com/kubernetes/kubernetes/pull/87399.
25+
wait_for_deployment() {
26+
local deployment_name=$1
27+
timeout=60
28+
i=1
29+
echo "Checking if the ${deployment_name} deployment is ready"
30+
until kubectl -n olm get deployment ${deployment_name} -o jsonpath='{.status.conditions[?(@.status=="True")].type}' | grep "Available" 2>/dev/null; do
31+
((i++))
32+
if [[ ${i} -gt ${timeout} ]]; then
33+
echo "the ${deployment_name} deployment has not become ready before the timeout period"
34+
exit 1
35+
fi
36+
echo "waiting for ${deployment_name} deployment to report a ready status"
37+
sleep 5
38+
done
39+
echo "The ${deployment_name} deployment is ready"
40+
}
41+
wait_for_deployment catalog-operator
42+
wait_for_deployment olm-operator
43+
wait_for_deployment packageserver
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
---
2+
# Source: olm/crds/0000_50_olm_00-catalogsources.crd.yaml
3+
apiVersion: apiextensions.k8s.io/v1
4+
kind: CustomResourceDefinition
5+
metadata:
6+
annotations:
7+
controller-gen.kubebuilder.io/version: v0.4.1
8+
creationTimestamp: null
9+
name: catalogsources.operators.coreos.com
10+
spec:
11+
group: operators.coreos.com
12+
names:
13+
categories:
14+
- olm
15+
kind: CatalogSource
16+
listKind: CatalogSourceList
17+
plural: catalogsources
18+
shortNames:
19+
- catsrc
20+
singular: catalogsource
21+
scope: Namespaced
22+
versions:
23+
- additionalPrinterColumns:
24+
- description: The pretty name of the catalog
25+
jsonPath: .spec.displayName
26+
name: Display
27+
type: string
28+
- description: The type of the catalog
29+
jsonPath: .spec.sourceType
30+
name: Type
31+
type: string
32+
- description: The publisher of the catalog
33+
jsonPath: .spec.publisher
34+
name: Publisher
35+
type: string
36+
- jsonPath: .metadata.creationTimestamp
37+
name: Age
38+
type: date
39+
name: v1alpha1
40+
schema:
41+
openAPIV3Schema:
42+
description: CatalogSource is a repository of CSVs, CRDs, and operator packages.
43+
type: object
44+
required:
45+
- metadata
46+
- spec
47+
properties:
48+
apiVersion:
49+
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'
50+
type: string
51+
kind:
52+
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'
53+
type: string
54+
metadata:
55+
type: object
56+
spec:
57+
type: object
58+
required:
59+
- sourceType
60+
properties:
61+
address:
62+
description: 'Address is a host that OLM can use to connect to a pre-existing registry. Format: <registry-host or ip>:<port> Only used when SourceType = SourceTypeGrpc. Ignored when the Image field is set.'
63+
type: string
64+
configMap:
65+
description: ConfigMap is the name of the ConfigMap to be used to back a configmap-server registry. Only used when SourceType = SourceTypeConfigmap or SourceTypeInternal.
66+
type: string
67+
description:
68+
type: string
69+
displayName:
70+
description: Metadata
71+
type: string
72+
icon:
73+
type: object
74+
required:
75+
- base64data
76+
- mediatype
77+
properties:
78+
base64data:
79+
type: string
80+
mediatype:
81+
type: string
82+
image:
83+
description: Image is an operator-registry container image to instantiate a registry-server with. Only used when SourceType = SourceTypeGrpc. If present, the address field is ignored.
84+
type: string
85+
priority:
86+
description: 'Priority field assigns a weight to the catalog source to prioritize them so that it can be consumed by the dependency resolver. Usage: Higher weight indicates that this catalog source is preferred over lower weighted catalog sources during dependency resolution. The range of the priority value can go from positive to negative in the range of int32. The default value to a catalog source with unassigned priority would be 0. The catalog source with the same priority values will be ranked lexicographically based on its name.'
87+
type: integer
88+
publisher:
89+
type: string
90+
secrets:
91+
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.
92+
type: array
93+
items:
94+
type: string
95+
sourceType:
96+
description: SourceType is the type of source
97+
type: string
98+
updateStrategy:
99+
description: UpdateStrategy defines how updated catalog source images can be discovered Consists of an interval that defines polling duration and an embedded strategy type
100+
type: object
101+
properties:
102+
registryPoll:
103+
type: object
104+
properties:
105+
interval:
106+
description: Interval is used to determine the time interval between checks of the latest catalog source version. The catalog operator polls to see if a new version of the catalog source is available. If available, the latest image is pulled and gRPC traffic is directed to the latest catalog source.
107+
type: string
108+
status:
109+
type: object
110+
properties:
111+
configMapReference:
112+
type: object
113+
required:
114+
- name
115+
- namespace
116+
properties:
117+
lastUpdateTime:
118+
type: string
119+
format: date-time
120+
name:
121+
type: string
122+
namespace:
123+
type: string
124+
resourceVersion:
125+
type: string
126+
uid:
127+
description: UID is a type that holds unique ID values, including UUIDs. Because we don't ONLY use UUIDs, this is an alias to string. Being a type captures intent and helps make sure that UIDs and names do not get conflated.
128+
type: string
129+
connectionState:
130+
type: object
131+
required:
132+
- lastObservedState
133+
properties:
134+
address:
135+
type: string
136+
lastConnect:
137+
type: string
138+
format: date-time
139+
lastObservedState:
140+
type: string
141+
latestImageRegistryPoll:
142+
description: The last time the CatalogSource image registry has been polled to ensure the image is up-to-date
143+
type: string
144+
format: date-time
145+
message:
146+
description: A human readable message indicating details about why the CatalogSource is in this condition.
147+
type: string
148+
reason:
149+
description: Reason is the reason the CatalogSource was transitioned to its current state.
150+
type: string
151+
registryService:
152+
type: object
153+
properties:
154+
createdAt:
155+
type: string
156+
format: date-time
157+
port:
158+
type: string
159+
protocol:
160+
type: string
161+
serviceName:
162+
type: string
163+
serviceNamespace:
164+
type: string
165+
served: true
166+
storage: true
167+
subresources:
168+
status: {}
169+

0 commit comments

Comments
 (0)