-
Notifications
You must be signed in to change notification settings - Fork 56
/
config.yaml
266 lines (254 loc) · 10.6 KB
/
config.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
# REQUIRED: knobs related to the source config
source_config:
# REQUIRED: source config repo URL to build
url: https://github.com/jlebon/my-coreos
# OPTIONAL: source config ref to build
# Supports '${STREAM}' variable.
ref: release-${STREAM}
# OPTIONAL: git repo URL for yumrepos
yumrepos: https://gitlab.example.com/sooper/seekret
# OPTIONAL: git repo ref for yumrepos
yumrepos_ref: devel
# OPTIONAL: default artifacts to build per architecture
default_artifacts:
# default artifacts on all arches
all:
- metal
- metal4k
- live
aarch64:
- openstack
x86_64:
- aws
- vmware
# OPTIONAL: hotfix-related keys
hotfix:
# REQUIRED: name for hotfix used to tag pushed resources
name: art1234
# OPTIONAL/TEMPORARY: skip all tests that require a signed kernel
skip_secureboot_tests_hack: true
# OPTIONAL/TEMPORARY: hacks-related keys
hacks:
# OPTIONAL: skip upgrade kola tests
skip_upgrade_tests: true
# OPTIONAL: skip UEFI on older RHCOS
skip_uefi_tests_on_older_rhcos: true
# OPTIONAL: coreos-assembler image to build with. Supports ${STREAM} variable.
# If unset, defaults to `quay.io/coreos-assembler/coreos-assembler:main`.
cosa_img: quay.io/jlebon/coreos-assembler:pr3139-${STREAM}
# REQUIRED: streams to build
streams:
testing-devel:
# REQUIRED: stream type
# Three kinds of streams are supported:
# - development: lockfiles, auto-bumping, auto-triggering
# - production: lockfiles, no auto-bumping, no auto-triggering
# - mechanical: no lockfiles, auto-triggering
type: development
# OPTIONAL: set a stream as the default one
# This will be the default stream for jobs that take a 'STREAMS' parameter
default: true
# OPTIONAL: override source config ref to use for this stream
source_config_ref: main
# OPTIONAL: override OS variant to use for this stream
variant: rhcos-9.0
# OPTIONAL: override whether to use a versionary for this stream
versionary: false
stable:
type: production
# OPTIONAL: override cosa image to use for this stream
cosa_image: "quay.io/jlebon/coreos-assembler:stable"
# OPTIONAL: additional artifacts to build for this stream
additional_artifacts:
aarch64:
- vmware
# OPTIONAL: skip some of the default artifacts for this stream
skip_artifacts:
aarch64:
- openstack
x86_64:
- vmware
# OPTIONAL: override default coreos-assembler image to build with
cosa_img: quay.io/coreos-assembler/coreos-assembler:stable
# OPTIONAL: Override default coreos-assembler image to use for
# the controller pod in the build-arch job (default is :main)
cosa_controller_img: quay.io/coreos-assembler/coreos-assembler:next
# OPTIONAL: override additional architectures to build for
additional_arches:
- s390x
rawhide:
type: mechanical
# OPTIONAL: additional architectures to skip building for
skip_additional_arches:
- s390x
# OPTIONAL/TEMPORARY: don't upload images to clouds
skip_cloud_uploads: true
# OPTIONAL: dont perform Brew uploads
skip_brew_upload: true
# Set the COSA_USE_OSBUILD environment variable to force use of OSBuild
# for image building.
env:
COSA_USE_OSBUILD: true
# OPTIONAL: require kernel + kernel-rt versions to match
check_kernel_rt_mismatch_rhcos: true
# REQUIRED: architectures to build for other than x86_64
additional_arches: [aarch64, ppc64le, s390x]
# OPTIONAL: environment variables to set inside the COSA container
env:
VAR: value
# OPTIONAL: S3 bucket and key to which to upload build artifacts. For reference,
# the builds.json file will be located at
# `${s3.bucket}/${s3.builds_key}/builds/builds.json`.
s3:
# REQUIRED: S3 bucket name
bucket: rhcos-jlebon
# OPTIONAL: S3 bucket subkey. Supports `${STREAM}` variable.
builds_key: "streams/${STREAM}"
# OPTIONAL: object ACL to use when uploading
acl: private
# OPTIONAL: Brew profile and principal to which to upload build metadata to Brew.
brew:
# REQUIRED: Profile name
profile: brew-stage
# REQUIRED: Principal name
principal: rhcos-build/servername
# REQUIRED: tag
tag: candidate
# OPTIONAL: container registry-related keys
registry_repos:
# OPTIONAL: repo and tags to which to push oscontainer
oscontainer:
# REQUIRED: repo name
repo: quay.io/fedora/fedora-coreos
# REQUIRED: list of tags to create/overwrite when pushing
# STREAM and VERSION are supported for templating
tags: ["${STREAM}"]
# OPTIONAL: repo and tags to which to push legacy oscontainer
legacy_oscontainer:
repo: quay.io/openshift-release-dev/rhel-coreos-dev
tags: ["${STREAM}-legacy", "${VERSION}-legacy"]
# OPTIONAL: repo and tags to which to push the extensions container
extensions:
repo: quay.io/openshift-release-dev/rhel-coreos-extensions-dev
tags: ["${STREAM}-extensions", "${VERSION}-extensions"]
# OPTIONAL: repo and tags to which to push kubevirt containerdisk container
kubevirt:
repo: quay.io/fedora/fedora-coreos-kubevirt
tags: ["${STREAM}"]
# OPTIONAL: whether to push in v2s2 format rather than OCI
v2s2: true
# OPTIONAL: cloud-related knobs
clouds:
aws:
# OPTIONAL: accounts to share newly created AMIs with
grant_users:
- "1234567890"
# OPTIONAL: AWS tags to add on the AMIs
tags:
- "FedoraGroup=coreos"
# REQUIRED (if AWS build upload credentials provided): the region to do
# initial image creation in.
primary_region: us-east-1
# REQUIRED (if AWS build upload credentials provided): the bucket+prefix
# where image files are uploaded to then initiate an image import.
bucket: fedora-coreos-image-uploads/ami-import
# OPTIONAL: boolean: whether or not to set the image/snapshot as public on
# initial upload (AMIs of released builds are always made public)
public: true
# OPTIONAL: list of architectures to limit cloud testing to.
test_architectures: [x86_64]
# REQUIRED (if AWS GovCloud image upload credentials provided):
# separate set of data for GovCloud uploads
govcloud:
# OPTIONAL: accounts to share newly created AMIs with
grant_users:
- "1234567890"
# REQUIRED: the region to do initial image creation in.
primary_region: us-gov-east-1
# REQUIRED: the bucket+prefix where image files are uploaded to then initiate an image import.
bucket: fedora-coreos-govcloud-image-uploads/ami-import
# OPTIONAL: boolean: whether or not to set the image/snapshot as public on
# initial upload (AMIs of released builds are always made public)
public: true
aliyun:
# REQUIRED (if Aliyun build upload credentials provided): the region to do
# initial image creation in.
primary_region: us-east-1
# REQUIRED (if Aliyun image upload credentials provided): the bucket+prefix
# where image files are uploaded to then initiate an image import.
bucket: fedora-coreos-image-uploads/ami-import
# OPTIONAL: boolean: whether or not to set the image/snapshot as public
public: true
# OPTIONAL: list of architectures to limit cloud testing to.
test_architectures: [x86_64]
azure:
# REQUIRED (if Azure image upload credentials provided): resource group, storage
# account, and storage container to use for image file uploads
resource_group: fedora-coreos
storage_account: fedoracoreos
storage_container: fedora-coreos-image-blobs
# REQUIRED (if Azure kola test credentials provided): resource group, storage
# account, and storage container to use for kola tests
test_resource_group: fedora-coreos-testing
test_storage_account: fedoracoreostesting
test_storage_container: fedora-coreos-testing-image-blobs
# OPTIONAL: list of architectures to limit cloud testing to.
test_architectures: [x86_64]
gcp:
# REQUIRED (if GCP image upload credentials provided): the bucket+prefix
# where image files are uploaded to then initiate an image import.
bucket: fedora-coreos-cloud-image-uploads/image-import
# OPTIONAL: A description to add to the image. The given string can have ${STREAM},
# ${BUILDID}, ${BASEARCH}, and ${DATE} substituted for values at runtime.
description: "Fedora, Fedora CoreOS ${STREAM}, ${BUILDID}, ${BASEARCH} published on ${DATE}"
# OPTIONAL: boolean: whether or not to set the image as public
public: true
# OPTIONAL: create the image in the specified image family. The image family
# is different for each architecture. It will be created in the deprecated
# state and can then be undeprecated in the release job.
family:
x86_64: "fedora-coreos-${STREAM}"
aarch64: "fedora-coreos-${STREAM}-arm64"
# OPTIONAL: licenses to add to the image on creation. The given string can have ${STREAM}
# substituted with the actual stream at runtime.
licenses:
- "fedora-coreos-${STREAM}"
- "https://compute.googleapis.com/compute/v1/projects/vm-options/global/licenses/enable-vmx"
# OPTIONAL: list of architectures to limit cloud testing to.
test_architectures: [x86_64]
openstack:
# OPTIONAL: list of architectures to limit cloud testing to.
test_architectures: [x86_64, aarch64]
powervs:
# REQUIRED (if POWERVS image upload credentials provided): the object storage
# service instance to use.
cloud_object_storage_service_instance: fedora-coreos-cos-service-instance
# REQUIRED (if POWERVS image upload credentials provided): the object storage
# service instance to use.
primary_region: us-east
# REQUIRED (if POWERVS image upload credentials provided): the bucket to use.
# This bucket string is actually a prefix. The region will get added to it as
# a suffix. If replication occurs other buckets in other regions will get
# uploaded to. i.e. "fedora-coreos-image-uploads-us-east", "fedora-coreos-image-uploads-ca-tor"
bucket: fedora-coreos-image-uploads
# REQUIRED (if POWERVS image upload credentials provided): the regions list
# where image files are uploaded. TODO: We need to validate if these regions are really required,
# or if we can auto-detect them, as we do for the other clouds.
regions:
- us-east
- au-syd
- br-sao
- ca-tor
- eu-de
- eu-gb
- jp-osa
- jp-tok
- us-south
# OPTIONAL: miscellaneous options
misc:
# OPTIONAL: whether to use a versionary to derive version numbers
versionary: true
# OPTIONAL: whether to generate a release index
generate_release_index: true
# OPTIONAL: whether to run extended upgrade test kola job
run_extended_upgrade_test_fcos: true