Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

operator gitlab-runner-operator (1.29.1) #5427

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,260 @@
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
creationTimestamp: null
name: runners.apps.gitlab.com
spec:
group: apps.gitlab.com
names:
kind: Runner
listKind: RunnerList
plural: runners
singular: runner
scope: Namespaced
versions:
- name: v1beta2
schema:
openAPIV3Schema:
description: Runner is the open source project used to run your jobs and send
the results back to GitLab
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
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
type: string
metadata:
type: object
spec:
description: Specification of the desired behavior of a GitLab Runner
instance
properties:
azure:
description: |-
options used to setup Azure blob
storage as GitLab Runner Cache
properties:
container:
description: Name of the Azure container in which the cache will
be stored
type: string
credentials:
description: |-
Credentials secret contains 'accountName' and 'privateKey'
used to authenticate against Azure blob storage
type: string
storageDomain:
description: |-
The domain name of the Azure blob storage
e.g. blob.core.windows.net
type: string
type: object
buildImage:
description: |-
The name of the default image to use to run
build jobs, when none is specified
type: string
ca:
description: |-
Name of tls secret containing the custom certificate
authority (CA) certificates
type: string
cachePath:
description: Path defines the Runner Cache path
type: string
cacheShared:
description: Enable sharing of cache between Runners
type: boolean
cacheType:
description: |-
Type of cache used for Runner artifacts
Options are: gcs, s3, azure
type: string
cloneURL:
description: If specified, overrides the default URL used to clone
or fetch the Git ref
type: string
concurrent:
description: |-
Option to limit the number of jobs globally that can run concurrently.
The operator sets this to 10, if not specified
format: int32
type: integer
config:
description: |-
allow user to provide configmap name
containing the user provided config.toml
type: string
env:
description: |-
Accepts configmap name. Provides user mechanism to inject environment
variables in the GitLab Runner pod via the key value pairs in the ConfigMap
type: string
gcs:
description: |-
options used to setup GCS (Google
Container Storage) as GitLab Runner Cache
properties:
bucket:
description: Name of the bucket in which the cache will be stored
type: string
credentials:
description: contains the GCS 'access-id' and 'private-key'
type: string
credentialsFile:
description: Takes GCS credentials file, 'keys.json'
type: string
type: object
gitlabUrl:
description: |-
The fully qualified domain name for the GitLab instance.
For example, https://gitlab.example.com
type: string
helperImage:
description: If specified, overrides the default GitLab Runner helper
image
type: string
imagePullPolicy:
description: |-
ImagePullPolicy sets the Image pull policy.
One of Always, Never, IfNotPresent.
Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
type: string
interval:
description: |-
Option to define the number of seconds between checks for new jobs.
This is set to a default of 30s by operator if not set
format: int32
type: integer
locked:
description: Specify whether the runner should be locked to a specific
project. Defaults to false.
type: boolean
namespace:
description: If specified, overrides the namespace where job pods
are created
type: string
podSpec:
items:
description: |-
KubernetesPodSpec represents the structure expected when adding a custom PodSpec to configure
the Pod running the GitLab Runner Manager
properties:
name:
description: Name is the name given to the custom Pod Spec
type: string
patch:
description: |-
A JSON or YAML format string that describes the changes which must be applied
to the final PodSpec object before it is generated.
You cannot set the patch_path and patch in the same pod_spec configuration, otherwise an error occurs.
type: string
patchFile:
description: |-
Path to the file that defines the changes to apply to the final PodSpec object before it is generated.
The file must be a JSON or YAML file.
You cannot set the patch_path and patch in the same pod_spec configuration, otherwise an error occurs.
type: string
patchType:
description: |-
The strategy the runner uses to apply the specified changes to the PodSpec object generated by GitLab Runner.
The accepted values are merge, json, and strategic (default value).
type: string
required:
- name
- patchType
type: object
type: array
protected:
description: Specify whether the runner should only run protected
branches. Defaults to false.
type: boolean
runUntagged:
description: |-
Specify if jobs without tags should be run.
If not specified, runner will default to true if no tags were specified.
In other case it will default to false.
type: boolean
runnerImage:
description: If specified, overrides the default GitLab Runner image.
Default is the Runner image the operator was bundled with.
type: string
s3:
description: |-
options used to setup S3
object store as GitLab Runner Cache
properties:
bucket:
description: Name of the bucket in which the cache will be stored
type: string
credentials:
description: |-
Name of the secret containing the
'accesskey' and 'secretkey' used to access the object storage
type: string
insecure:
description: Use insecure connections or HTTP
type: boolean
location:
description: Name of the S3 region in use
type: string
server:
type: string
type: object
serviceaccount:
description: |-
allow user to override service account
used by GitLab Runner
type: string
tags:
description: |-
List of comma separated tags to be applied to the runner
More info: https://docs.gitlab.com/ee/ci/runners/#use-tags-to-limit-the-number-of-jobs-using-the-runner
type: string
token:
description: Name of secret containing the 'runner-registration-token'
key used to register the runner
type: string
required:
- gitlabUrl
- token
type: object
status:
description: |-
Most recently observed status of the GitLab Runner.
It is read-only to the user
properties:
message:
description: Additional information of GitLab Runner registration
type: string
phase:
description: Reports status of the GitLab Runner instance
type: string
registration:
description: Reports status of GitLab Runner registration
type: string
type: object
type: object
served: true
storage: true
subresources:
status: {}
status:
acceptedNames:
kind: ""
plural: ""
conditions: null
storedVersions: null
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
creationTimestamp: null
name: gitlab-runner-app-role
rules:
- apiGroups:
- ""
resources:
- secrets
- pods
- services
- services/status
- services/proxy
- services/finalizers
- pods/attach
- pods/exec
- pods/log
- persistentvolumeclaims
- configmaps
verbs:
- create
- get
- list
- watch
- delete
- patch
- update
- apiGroups:
- ""
resources:
- events
verbs:
- get
- list
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
creationTimestamp: null
name: gitlab-runner-app-rolebinding
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: gitlab-runner-app-role
subjects:
- kind: ServiceAccount
name: gitlab-runner-app-sa
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
apiVersion: v1
kind: Service
metadata:
creationTimestamp: null
labels:
app.kubernetes.io/component: controller-manager
app.kubernetes.io/name: gitlab-runner-operator
name: gitlab-runner-controller-manager-metrics-service
spec:
ports:
- name: https
port: 8443
targetPort: https
selector:
app.kubernetes.io/name: gitlab-runner-operator
status:
loadBalancer: {}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
creationTimestamp: null
name: gitlab-runner-metrics-reader
rules:
- nonResourceURLs:
- /metrics
verbs:
- get
Loading