OpenShift Build Operations: Difference between revisions
Line 14: | Line 14: | ||
=Create a Build Configuration= | =Create a Build Configuration= | ||
The following considerations apply to all types of builds ([[#Source_Build|source]], [[#Docker_Build|docker]] and [[#Pipeline_Build|pipeline]]) that can be created with [[oc new-build]]: | |||
--dry-run can be used to visualize the results of the operation, without modifying anything on the master server. | |||
==Source Build== | ==Source Build== | ||
Line 28: | Line 35: | ||
[[oc new-build]] creates source builds by default (--binary is by default 'false'). | [[oc new-build]] creates source builds by default (--binary is by default 'false'). | ||
Revision as of 19:30, 6 December 2017
Internal
Overview
Build and Deploy a JEE Application
Create a Build Configuration
The following considerations apply to all types of builds (source, docker and pipeline) that can be created with oc new-build:
--dry-run can be used to visualize the results of the operation, without modifying anything on the master server.
Source Build
Docker Build
Pipeline Build
oc new-build creates source builds by default (--binary is by default 'false').
oc new-build --binary=false ...
Create a build configuration based on source code in the current git repository. The --binary=false says the build should expect source.
Binary Build
oc new-build --binary=true --name=some-binary -i=redhat-openjdk18-openshift
--binary=true makes sure that restrictions associated with binary builds are enforced. It says that instead of expecting a source URL, set the build to expect binary contents. Will disable triggers.
Source Clone Secret
oc set build-secret --source bc/<build-configuration-name'> <secret-name>
Then the secret can be added to the build configuration:
oc new-build .../example.git --build-secret <secret-name>
Set Maximum Duration
spec: completionDeadlineSeconds: 1800
Manually Start the Build Process
oc start-build <buildConfig-name>
The name of a previous build can be specified - it will be used as a starting point.
Options:
- --from-file
- --from-dir
- --from-repo
- --from-archive
View Builds for Project
oc get builds
NAME TYPE FROM STATUS STARTED DURATION bookstore-1 Source Git@ad0abda Failed (AssembleFailed) About an hour ago 2m43s bookstore-2 Source Git@ad0abda Failed (AssembleFailed) 12 minutes ago 2m16s
Each build has an associated build pod, whose names can be obtained with:
oc get pods
NAME READY STATUS RESTARTS AGE bookstore-1-build 0/1 Error 0 57m bookstore-2-build 0/1 Error 0 13m
View Build Logs
View build logs associated with a build object:
oc logs [-f] builds/<build-name>
If -f|--follow is used, it specifies that the logs should be streamed.
Viewing the build logs in this manner is similar to following the build pod's logs.
Stop a Build in Progress
oc cancel-build
Delete a Build
oc delete build/<build-name>
where the build name is among those returned by oc get builds.