JenkinsImage controller based on kaniko (#394)

This commit is contained in:
Akram Ben Aissi
2020-05-29 15:00:36 +02:00
committed by GitHub
parent 3ecf280efa
commit ee01c4c028
12 changed files with 763 additions and 1 deletions
@@ -0,0 +1,85 @@
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: jenkinsimages.jenkins.io
spec:
group: jenkins.io
names:
kind: JenkinsImage
listKind: JenkinsImageList
plural: jenkinsimages
singular: jenkinsimage
scope: Namespaced
subresources:
status: {}
validation:
openAPIV3Schema:
description: JenkinsImage is the Schema for the jenkinsimages 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'
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: JenkinsImageSpec defines the desired state of JenkinsImage
properties:
image:
description: Defines Jenkins Plugin structure
properties:
name:
type: string
version:
type: string
required:
- name
type: object
plugins:
items:
description: Defines Jenkins Plugin structure
properties:
name:
type: string
version:
type: string
required:
- name
type: object
type: array
required:
- image
- plugins
type: object
status:
description: JenkinsImageStatus defines the observed state of JenkinsImage
properties:
image:
type: string
installedPlugins:
items:
description: Defines Jenkins Plugin structure
properties:
name:
type: string
version:
type: string
required:
- name
type: object
type: array
md5sum:
type: string
type: object
type: object
version: v1alpha2
versions:
- name: v1alpha2
served: true
storage: true
@@ -17,3 +17,90 @@ spec:
- name : v1alpha1
served: true
storage: false
---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: jenkinsimages.jenkins.io
spec:
group: jenkins.io
names:
kind: JenkinsImage
listKind: JenkinsImageList
plural: jenkinsimages
singular: jenkinsimage
scope: Namespaced
subresources:
status: {}
validation:
openAPIV3Schema:
description: JenkinsImage is the Schema for the jenkinsimages 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'
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: JenkinsImageSpec defines the desired state of JenkinsImage
properties:
image:
description: Defines Jenkins Plugin structure
properties:
name:
type: string
version:
type: string
required:
- name
type: object
plugins:
items:
description: Defines Jenkins Plugin structure
properties:
name:
type: string
version:
type: string
required:
- name
type: object
type: array
required:
- image
- plugins
type: object
status:
description: JenkinsImageStatus defines the observed state of JenkinsImage
properties:
image:
type: string
installedPlugins:
items:
description: Defines Jenkins Plugin structure
properties:
name:
type: string
version:
type: string
required:
- name
type: object
type: array
md5sum:
type: string
type: object
type: object
version: v1alpha2
versions:
- name: v1alpha2
served: true
storage: true
@@ -0,0 +1,24 @@
apiVersion: jenkins.io/v1alpha2
kind: JenkinsImage
metadata:
name: simple-jenkinsimage
spec:
image:
name: jenkins/jenkins
tag: lts
plugins:
- name: kubernetes
version: "1.15.7"
- name: workflow-job
version: "2.32"
- name: workflow-aggregator
version: "2.6"
- name: git
version: "3.10.0"
- name: job-dsl
version: "1.74"
- name: configuration-as-code
version: "1.19"
- name: kubernetes-credentials-provider
version: "0.12.1"
@@ -0,0 +1,85 @@
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: jenkinsimages.jenkins.io
spec:
group: jenkins.io
names:
kind: JenkinsImage
listKind: JenkinsImageList
plural: jenkinsimages
singular: jenkinsimage
scope: Namespaced
subresources:
status: {}
validation:
openAPIV3Schema:
description: JenkinsImage is the Schema for the jenkinsimages 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'
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: JenkinsImageSpec defines the desired state of JenkinsImage
properties:
image:
description: Defines Jenkins Plugin structure
properties:
name:
type: string
version:
type: string
required:
- name
type: object
plugins:
items:
description: Defines Jenkins Plugin structure
properties:
name:
type: string
version:
type: string
required:
- name
type: object
type: array
required:
- image
- plugins
type: object
status:
description: JenkinsImageStatus defines the observed state of JenkinsImage
properties:
image:
type: string
installedPlugins:
items:
description: Defines Jenkins Plugin structure
properties:
name:
type: string
version:
type: string
required:
- name
type: object
type: array
md5sum:
type: string
type: object
type: object
version: v1alpha2
versions:
- name: v1alpha2
served: true
storage: true