File tree Expand file tree Collapse file tree 4 files changed +37
-2
lines changed Expand file tree Collapse file tree 4 files changed +37
-2
lines changed Original file line number Diff line number Diff line change @@ -221,3 +221,18 @@ metadata:
221
221
** NOTE** : A build will be started for the BuildConfig matching the name of the repository and for any BuildConfig
222
222
that has an annotation pointing to the source repository. If there is a BuildConfig that has a matching name but
223
223
has an annotation pointing to a different repository, a build will not be invoked for it.
224
+
225
+ Build Strategy
226
+ --------------
227
+
228
+ When automatically starting a build, the git server will create a Docker type build if a Dockerfile is present
229
+ in the repository. Otherwise, it will attempt a source type build. To force the git server to always use one
230
+ strategy, set the BUILD_STRATEGY environment variable.
231
+
232
+ Setting the BUILD_STRATEGY to ` docker` will force new builds to be created with the Docker strategy:
233
+
234
+ ` ` ` sh
235
+ oc set dc/git BUILD_STRATEGY=docker
236
+ ` ` `
237
+
238
+ Valid values for BUILD_STRATEGY are " " (empty string), ` source` , and ` docker` .
Original file line number Diff line number Diff line change @@ -79,6 +79,13 @@ items:
79
79
- name : GENERATE_ARTIFACTS
80
80
value : " true"
81
81
82
+ # The strategy to use when creating build artifacts from a repository.
83
+ # With the default empty value, a Docker build will be generated if
84
+ # a Dockerfile is present in the repository. Otherwise, a source build
85
+ # will be created. Valid values are: "", docker, source
86
+ - name : BUILD_STRATEGY
87
+ value : " "
88
+
82
89
# The script to use for custom language detection on a
83
90
# repository. See hooks/detect-language for an example.
84
91
# To use new-app's default detection, leave this variable
Original file line number Diff line number Diff line change @@ -79,6 +79,13 @@ items:
79
79
- name : GENERATE_ARTIFACTS
80
80
value : " true"
81
81
82
+ # The strategy to use when creating build artifacts from a repository.
83
+ # With the default empty value, a Docker build will be generated if
84
+ # a Dockerfile is present in the repository. Otherwise, a source build
85
+ # will be created. Valid values are: "", docker, source
86
+ - name : BUILD_STRATEGY
87
+ value : " "
88
+
82
89
# The script to use for custom language detection on a
83
90
# repository. See hooks/detect-language for an example.
84
91
# To use new-app's default detection, leave this variable
Original file line number Diff line number Diff line change @@ -16,18 +16,24 @@ function detect {
16
16
local repoURL=" $1 "
17
17
local repoName=" $2 "
18
18
local detectionScript=${DETECTION_SCRIPT:- }
19
+ local buildStrategy=${BUILD_STRATEGY:- }
20
+ local strategyArg=" "
21
+ if [[ -n " $buildStrategy " ]]; then
22
+ strategyArg=" --strategy=${buildStrategy} "
23
+ fi
24
+
19
25
# The purpose of using a custom detection script is that users can customize the
20
26
# 'detect-language' script to return the image that's appropriate for their needs.
21
27
# It is possible to just have new-app do code detection. In that case, just set
22
28
# the DETECTION_SCRIPT variable to an empty string.
23
29
if [[ -z $detectionScript ]]; then
24
- oc new-app " ${repoURL} "
30
+ oc new-app " ${repoURL} " $strategyArg
25
31
else
26
32
if ! lang=$( $( dirname $0 ) /${detectionScript} ) ; then
27
33
return
28
34
fi
29
35
echo " detect: found language ${lang} for ${repoName} "
30
- oc new-app " ${lang} ~${repoURL} "
36
+ oc new-app " ${lang} ~${repoURL} " $strategyArg
31
37
fi
32
38
# TODO: when a command to set a secret is available,
33
39
# set an optional secret on the resulting build configuration
You can’t perform that action at this time.
0 commit comments