476 lines
24 KiB
YAML
Generated
476 lines
24 KiB
YAML
Generated
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: (devel)
|
|
creationTimestamp: null
|
|
name: s2ibuilders.devops.kubesphere.io
|
|
spec:
|
|
group: devops.kubesphere.io
|
|
names:
|
|
kind: S2iBuilder
|
|
listKind: S2iBuilderList
|
|
plural: s2ibuilders
|
|
shortNames:
|
|
- s2ib
|
|
singular: s2ibuilder
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .status.runCount
|
|
name: RunCount
|
|
type: integer
|
|
- jsonPath: .status.lastRunState
|
|
name: LastRunState
|
|
type: string
|
|
- jsonPath: .status.lastRunName
|
|
name: LastRunName
|
|
type: string
|
|
- jsonPath: .status.lastRunStartTime
|
|
name: LastRunStartTime
|
|
type: date
|
|
name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: S2iBuilder is the Schema for the s2ibuilders 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: S2iBuilderSpec defines the desired state of S2iBuilder
|
|
properties:
|
|
config:
|
|
description: 'INSERT ADDITIONAL SPEC FIELDS - desired state of cluster Important: Run "make" to regenerate code after modifying this file'
|
|
properties:
|
|
addHost:
|
|
description: AddHost Add a line to /etc/hosts for test purpose or private use in LAN. Its format is host:IP,muliple hosts can be added by using multiple --add-host
|
|
items:
|
|
type: string
|
|
type: array
|
|
asDockerfile:
|
|
description: AsDockerfile indicates the path where the Dockerfile should be written instead of building a new image.
|
|
type: string
|
|
assembleUser:
|
|
description: AssembleUser specifies the user to run the assemble script in container
|
|
type: string
|
|
blockOnBuild:
|
|
description: BlockOnBuild prevents s2i from performing a docker build operation if one is necessary to execute ONBUILD commands, or to layer source code into the container for images that don't have a tar binary available, if the image contains ONBUILD commands that would be executed.
|
|
type: boolean
|
|
branchExpression:
|
|
description: Regular expressions, ignoring names that do not match the provided regular expression
|
|
type: string
|
|
buildVolumes:
|
|
description: BuildVolumes specifies a list of volumes to mount to container running the build.
|
|
items:
|
|
type: string
|
|
type: array
|
|
builderBaseImageVersion:
|
|
description: BuilderBaseImageVersion provides optional version information about the builder base image.
|
|
type: string
|
|
builderImage:
|
|
description: BuilderImage describes which image is used for building the result images.
|
|
type: string
|
|
builderImageVersion:
|
|
description: BuilderImageVersion provides optional version information about the builder image.
|
|
type: string
|
|
builderPullPolicy:
|
|
description: BuilderPullPolicy specifies when to pull the builder image
|
|
type: string
|
|
callbackUrl:
|
|
description: CallbackURL is a URL which is called upon successful build to inform about that fact.
|
|
type: string
|
|
cgroupLimits:
|
|
description: CGroupLimits describes the cgroups limits that will be applied to any containers run by s2i.
|
|
properties:
|
|
cpuPeriod:
|
|
format: int64
|
|
type: integer
|
|
cpuQuota:
|
|
format: int64
|
|
type: integer
|
|
cpuShares:
|
|
format: int64
|
|
type: integer
|
|
memoryLimitBytes:
|
|
format: int64
|
|
type: integer
|
|
memorySwap:
|
|
format: int64
|
|
type: integer
|
|
parent:
|
|
type: string
|
|
required:
|
|
- cpuPeriod
|
|
- cpuQuota
|
|
- cpuShares
|
|
- memoryLimitBytes
|
|
- memorySwap
|
|
- parent
|
|
type: object
|
|
contextDir:
|
|
description: Specify a relative directory inside the application repository that should be used as a root directory for the application.
|
|
type: string
|
|
description:
|
|
description: Description is a result image description label. The default is no description.
|
|
type: string
|
|
destination:
|
|
description: Destination specifies a location where the untar operation will place its artifacts.
|
|
type: string
|
|
displayName:
|
|
description: DisplayName is a result image display-name label. This defaults to the output image name.
|
|
type: string
|
|
dockerConfig:
|
|
description: DockerConfig describes how to access host docker daemon.
|
|
properties:
|
|
caFile:
|
|
description: CAFile is the certificate authority file path for a TLS connection
|
|
type: string
|
|
certFile:
|
|
description: CertFile is the certificate file path for a TLS connection
|
|
type: string
|
|
endPoint:
|
|
description: Endpoint is the docker network endpoint or socket
|
|
type: string
|
|
keyFile:
|
|
description: KeyFile is the key file path for a TLS connection
|
|
type: string
|
|
tlsVerify:
|
|
description: TLSVerify indicates if TLS peer must be verified
|
|
type: boolean
|
|
useTLS:
|
|
description: UseTLS indicates if TLS must be used
|
|
type: boolean
|
|
required:
|
|
- caFile
|
|
- certFile
|
|
- endPoint
|
|
- keyFile
|
|
- tlsVerify
|
|
- useTLS
|
|
type: object
|
|
dockerNetworkMode:
|
|
description: DockerNetworkMode is used to set the docker network setting to --net=container:<id> when the builder is invoked from a container.
|
|
type: string
|
|
dropCapabilities:
|
|
description: DropCapabilities contains a list of capabilities to drop when executing containers
|
|
items:
|
|
type: string
|
|
type: array
|
|
environment:
|
|
description: Environment is a map of environment variables to be passed to the image.
|
|
items:
|
|
description: EnvironmentSpec specifies a single environment variable.
|
|
properties:
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
excludeRegExp:
|
|
description: ExcludeRegExp contains a string representation of the regular expression desired for deciding which files to exclude from the tar stream
|
|
type: string
|
|
export:
|
|
description: Export Push the result image to specify image registry in tag
|
|
type: boolean
|
|
gitSecretRef:
|
|
description: GitSecretRef is the BasicAuth Secret of Git Clone
|
|
properties:
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
type: object
|
|
hasOnBuild:
|
|
description: HasOnBuild will be set to true if the builder image contains ONBUILD instructions
|
|
type: boolean
|
|
imageName:
|
|
description: ImageName Contains the registry address and reponame, tag should set by field tag alone
|
|
type: string
|
|
imageScriptsUrl:
|
|
description: ImageScriptsURL is the default location to find the assemble/run scripts for a builder image. This url can be a reference within the builder image if the scheme is specified as image://
|
|
type: string
|
|
imageWorkDir:
|
|
description: ImageWorkDir is the default working directory for the builder image.
|
|
type: string
|
|
incremental:
|
|
description: Incremental describes whether to try to perform incremental build.
|
|
type: boolean
|
|
incrementalAuthentication:
|
|
description: IncrementalAuthentication holds the authentication information for pulling the previous image from private repositories
|
|
properties:
|
|
email:
|
|
type: string
|
|
password:
|
|
type: string
|
|
secretRef:
|
|
description: LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
|
|
properties:
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
type: object
|
|
serverAddress:
|
|
type: string
|
|
username:
|
|
type: string
|
|
type: object
|
|
incrementalFromTag:
|
|
description: IncrementalFromTag sets an alternative image tag to look for existing artifacts. Tag is used by default if this is not set.
|
|
type: string
|
|
injections:
|
|
description: Injections specifies a list source/destination folders that are injected to the container that runs assemble. All files we inject will be truncated after the assemble script finishes.
|
|
items:
|
|
description: VolumeSpec represents a single volume mount point.
|
|
properties:
|
|
destination:
|
|
description: Destination is the path to mount the volume to - absolute or relative.
|
|
type: string
|
|
keep:
|
|
description: Keep indicates if the mounted data should be kept in the final image.
|
|
type: boolean
|
|
source:
|
|
description: Source is a reference to the volume source.
|
|
type: string
|
|
type: object
|
|
type: array
|
|
isBinaryURL:
|
|
description: IsBinaryURL explain the type of SourceURL. If it is IsBinaryURL, it will download the file directly without using git.
|
|
type: boolean
|
|
keepSymlinks:
|
|
description: KeepSymlinks indicates to copy symlinks as symlinks. Default behavior is to follow symlinks and copy files by content.
|
|
type: boolean
|
|
labelNamespace:
|
|
description: LabelNamespace provides the namespace under which the labels will be generated.
|
|
type: string
|
|
labels:
|
|
additionalProperties:
|
|
type: string
|
|
description: Labels specify labels and their values to be applied to the resulting image. Label keys must have non-zero length. The labels defined here override generated labels in case they have the same name.
|
|
type: object
|
|
layeredBuild:
|
|
description: LayeredBuild describes if this is build which layered scripts and sources on top of BuilderImage.
|
|
type: boolean
|
|
nodeAffinityKey:
|
|
description: The key of Node Affinity.
|
|
type: string
|
|
nodeAffinityValues:
|
|
description: The values of Node Affinity.
|
|
items:
|
|
type: string
|
|
type: array
|
|
outputBuildResult:
|
|
description: Whether output build result to status.
|
|
type: boolean
|
|
outputImageName:
|
|
description: OutputImageName is a result image name without tag, default is latest. tag will append to ImageName in the end
|
|
type: string
|
|
preserveWorkingDir:
|
|
description: PreserveWorkingDir describes if working directory should be left after processing.
|
|
type: boolean
|
|
previousImagePullPolicy:
|
|
description: PreviousImagePullPolicy specifies when to pull the previously build image when doing incremental build
|
|
type: string
|
|
pullAuthentication:
|
|
description: PullAuthentication holds the authentication information for pulling the Docker images from private repositories
|
|
properties:
|
|
email:
|
|
type: string
|
|
password:
|
|
type: string
|
|
secretRef:
|
|
description: LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
|
|
properties:
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
type: object
|
|
serverAddress:
|
|
type: string
|
|
username:
|
|
type: string
|
|
type: object
|
|
pushAuthentication:
|
|
description: PullAuthentication holds the authentication information for pulling the Docker images from private repositories
|
|
properties:
|
|
email:
|
|
type: string
|
|
password:
|
|
type: string
|
|
secretRef:
|
|
description: LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
|
|
properties:
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
type: object
|
|
serverAddress:
|
|
type: string
|
|
username:
|
|
type: string
|
|
type: object
|
|
removePreviousImage:
|
|
description: RemovePreviousImage describes if previous image should be removed after successful build. This applies only to incremental builds.
|
|
type: boolean
|
|
revisionId:
|
|
description: The RevisionId is a branch name or a SHA-1 hash of every important thing about the commit
|
|
type: string
|
|
runImage:
|
|
description: RunImage will trigger a "docker run ..." invocation of the produced image so the user can see if it operates as he would expect
|
|
type: boolean
|
|
runtimeArtifacts:
|
|
description: RuntimeArtifacts specifies a list of source/destination pairs that will be copied from builder to a runtime image. Source can be a file or directory. Destination must be a directory. Regardless whether it is an absolute or relative path, it will be placed into image's WORKDIR. Destination also can be empty or equals to ".", in this case it just refers to a root of WORKDIR. In case it's empty, S2I will try to get this list from io.openshift.s2i.assemble-input-files label on a RuntimeImage.
|
|
items:
|
|
description: VolumeSpec represents a single volume mount point.
|
|
properties:
|
|
destination:
|
|
description: Destination is the path to mount the volume to - absolute or relative.
|
|
type: string
|
|
keep:
|
|
description: Keep indicates if the mounted data should be kept in the final image.
|
|
type: boolean
|
|
source:
|
|
description: Source is a reference to the volume source.
|
|
type: string
|
|
type: object
|
|
type: array
|
|
runtimeAuthentication:
|
|
description: RuntimeAuthentication holds the authentication information for pulling the runtime Docker images from private repositories.
|
|
properties:
|
|
email:
|
|
type: string
|
|
password:
|
|
type: string
|
|
secretRef:
|
|
description: LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
|
|
properties:
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
type: object
|
|
serverAddress:
|
|
type: string
|
|
username:
|
|
type: string
|
|
type: object
|
|
runtimeImage:
|
|
description: RuntimeImage specifies the image that will be a base for resulting image and will be used for running an application. By default, BuilderImage is used for building and running, but the latter may be overridden.
|
|
type: string
|
|
runtimeImagePullPolicy:
|
|
description: RuntimeImagePullPolicy specifies when to pull a runtime image.
|
|
type: string
|
|
scriptDownloadProxyConfig:
|
|
description: ScriptDownloadProxyConfig optionally specifies the http and https proxy to use when downloading scripts
|
|
properties:
|
|
httpProxy:
|
|
type: string
|
|
httpsProxy:
|
|
type: string
|
|
type: object
|
|
scriptsUrl:
|
|
description: ScriptsURL is a URL describing where to fetch the S2I scripts from during build process. This url can be a reference within the builder image if the scheme is specified as image://
|
|
type: string
|
|
secretCode:
|
|
description: SecretCode
|
|
type: string
|
|
securityOpt:
|
|
description: SecurityOpt are passed as options to the docker containers launched by s2i.
|
|
items:
|
|
type: string
|
|
type: array
|
|
sourceUrl:
|
|
description: SourceURL is url of the codes such as https://github.com/a/b.git
|
|
type: string
|
|
tag:
|
|
description: Tag is a result image tag name.
|
|
type: string
|
|
taintKey:
|
|
description: The name of taint.
|
|
type: string
|
|
usage:
|
|
description: Usage allows for properly shortcircuiting s2i logic when `s2i usage` is invoked
|
|
type: boolean
|
|
workingDir:
|
|
description: WorkingDir describes temporary directory used for downloading sources, scripts and tar operations.
|
|
type: string
|
|
workingSourceDir:
|
|
description: WorkingSourceDir describes the subdirectory off of WorkingDir set up during the repo download that is later used as the root for ignore processing
|
|
type: string
|
|
required:
|
|
- imageName
|
|
- sourceUrl
|
|
type: object
|
|
fromTemplate:
|
|
description: FromTemplate define some inputs from user
|
|
properties:
|
|
builderImage:
|
|
description: BaseImage specify which version of this template to use
|
|
type: string
|
|
name:
|
|
description: Name specify a template to use, so many fields in Config can left empty
|
|
type: string
|
|
parameters:
|
|
description: Parameters must use with `template`, fill some parameters which template will use
|
|
items:
|
|
properties:
|
|
defaultValue:
|
|
type: string
|
|
description:
|
|
type: string
|
|
key:
|
|
type: string
|
|
optValues:
|
|
items:
|
|
type: string
|
|
type: array
|
|
required:
|
|
type: boolean
|
|
type:
|
|
type: string
|
|
value:
|
|
type: string
|
|
type: object
|
|
type: array
|
|
type: object
|
|
type: object
|
|
status:
|
|
description: S2iBuilderStatus defines the observed state of S2iBuilder
|
|
properties:
|
|
lastRunName:
|
|
description: LastRunState return the name of the newest run of this builder
|
|
type: string
|
|
lastRunStartTime:
|
|
description: LastRunStartTime return the startTime of the newest run of this builder
|
|
format: date-time
|
|
type: string
|
|
lastRunState:
|
|
description: LastRunState return the state of the newest run of this builder
|
|
type: string
|
|
runCount:
|
|
description: RunCount represent the sum of s2irun of this builder
|
|
type: integer
|
|
required:
|
|
- runCount
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
status:
|
|
acceptedNames:
|
|
kind: ""
|
|
plural: ""
|
|
conditions: []
|
|
storedVersions: []
|