build

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 24, 2018 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Overview

Package build contains the OpenShift build system.

It defines a Build resource type, along with associated storage and a controller that executes builds and manages states of existing builds.

For newly created builds, the BuildController will assign a pod ID to the build and set the build’s state to pending. This way, the assignment of the pod ID and pending status is idempotent and won’t result in two BuildControllers potentially scheduling two different pods for the same build.

For pending builds, the BuildController will attempt to create a pod to perform the build. If the creation succeeds, it sets the build’s status to pending. If the pod already exists, that means another BuildController already processed this build in a pending state, resulting in a no-op. Any other pod creation error would result in the build’s status being set to failed.

For running builds, the BuildController will monitor the status of the pod. If the pod is still running and the build has exceeded its allotted execution time, the BuildController will consider it failed. If the pod is terminated, the BuildController will examine the exit codes for each of the pod’s containers. If any exit code is non-zero, the build is marked as failed. Otherwise, it is considered complete (successful).

Once the build has reached a terminal state (complete or failed), the BuildController will delete the pod associated with the build. In the future, it will be desirable to keep a record of the pod’s containers’ logs.

Directories

Path Synopsis
Package admission contains admission control plugins that work with builds or pods that are running builds.
Package admission contains admission control plugins that work with builds or pods that are running builds.
apis
build
+groupName=build.openshift.io Package api is the internal version of the API.
+groupName=build.openshift.io Package api is the internal version of the API.
build/v1
+groupName=build.openshift.io Package v1 is the v1 version of the API.
+groupName=build.openshift.io Package v1 is the v1 version of the API.
Package builder contains builders for STI and Docker in OpenShift Origin
Package builder contains builders for STI and Docker in OpenShift Origin
cmd
Package cmd contains the main entry point for the docker and STI builders
Package cmd contains the main entry point for the docker and STI builders
cmd/dockercfg
Package dockercfg contains a command helper to read .dockercfg files
Package dockercfg contains a command helper to read .dockercfg files
cmd/scmauth
Package scmauth provides SCM authentication methods based on secret files
Package scmauth provides SCM authentication methods based on secret files
crioclient
package crioclient embeds github.com/kubernetes-incubator/cri-o/client to reduce dependencies.
package crioclient embeds github.com/kubernetes-incubator/cri-o/client to reduce dependencies.
util/dockerfile
Package dockerfile has utilities that complement Docker's official Dockerfile parser.
Package dockerfile has utilities that complement Docker's official Dockerfile parser.
controller
build/apis/defaults
Package api is the internal version of the API.
Package api is the internal version of the API.
build/apis/defaults/v1
Package v1 is the v1 version of the API.
Package v1 is the v1 version of the API.
build/apis/overrides
Package api is the internal version of the API.
Package api is the internal version of the API.
build/apis/overrides/v1
Package v1 is the v1 version of the API.
Package v1 is the v1 version of the API.
build/defaults
Package defaults contains the BuildDefaults admission control plugin.
Package defaults contains the BuildDefaults admission control plugin.
build/overrides
Package overrides contains the BuildOverrides admission control plugin.
Package overrides contains the BuildOverrides admission control plugin.
build/pluginconfig/testing
Package testing contains types for tests.
Package testing contains types for tests.
generated
internalclientset
This package has the automatically generated clientset.
This package has the automatically generated clientset.
internalclientset/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
internalclientset/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
internalclientset/typed/build/internalversion
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
internalclientset/typed/build/internalversion/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
Package generator contains the code to generate Build from BuildConfig as well as REST support to help expose the generator from an API.
Package generator contains the code to generate Build from BuildConfig as well as REST support to help expose the generator from an API.
metrics
prometheus
Package prometheus contains code for injecting build related metrics into the prometheus registry running in the openshift master
Package prometheus contains code for injecting build related metrics into the prometheus registry running in the openshift master
Package util contains common functions that are used by the rest of the OpenShift build system.
Package util contains common functions that are used by the rest of the OpenShift build system.
Package webhook contains code for managing and serving webhook services, providing post push events to trigger builds.
Package webhook contains code for managing and serving webhook services, providing post push events to trigger builds.
bitbucket
Package bitbucket contains webhook.Plugin implementation of bitbucket webhooks according to https://confluence.atlassian.com/bitbucket/manage-webhooks-735643732.html
Package bitbucket contains webhook.Plugin implementation of bitbucket webhooks according to https://confluence.atlassian.com/bitbucket/manage-webhooks-735643732.html
generic
Package generic contains webhook.Plugin implementation of a generic webhooks for use in testing and/or other ad/hoc usage
Package generic contains webhook.Plugin implementation of a generic webhooks for use in testing and/or other ad/hoc usage
github
Package github contains webhook.Plugin implementation of github webhooks according to https://developer.github.com/webhooks/
Package github contains webhook.Plugin implementation of github webhooks according to https://developer.github.com/webhooks/
gitlab
Package gitlab contains webhook.Plugin implementation of gitlab webhooks according to https://docs.gitlab.com/ce/user/project/integrations/webhooks.html
Package gitlab contains webhook.Plugin implementation of gitlab webhooks according to https://docs.gitlab.com/ce/user/project/integrations/webhooks.html

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL