-
Notifications
You must be signed in to change notification settings - Fork 119
/
Copy pathbuildimages.bat
executable file
·62 lines (49 loc) · 1.75 KB
/
buildimages.bat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
:: Copyright IBM Corporation 2021
::
:: Licensed under the Apache License, Version 2.0 (the "License");
:: you may not use this file except in compliance with the License.
:: You may obtain a copy of the License at
::
:: http://www.apache.org/licenses/LICENSE-2.0
::
:: Unless required by applicable law or agreed to in writing, software
:: distributed under the License is distributed on an "AS IS" BASIS,
:: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
:: See the License for the specific language governing permissions and
:: limitations under the License.
:: Invoke as buildimages.bat <container_runtime>
:: Examples:
:: 1) buildimages.bat
:: 2) buildimages.bat podman
@echo off
for /F "delims=" %%i in ("%cd%") do set basename="%%~ni"
if not %basename% == "scripts" (
echo "please run this script from the 'scripts' directory"
exit 1
)
IF "%1"=="" GOTO DEFAULT_CONTAINER_RUNTIME
SET CONTAINER_RUNTIME=%1%
GOTO DOCKER_CONTAINER_RUNTIME
:DEFAULT_CONTAINER_RUNTIME
SET CONTAINER_RUNTIME=docker
GOTO MAIN
:DOCKER_CONTAINER_RUNTIME
IF NOT "%CONTAINER_RUNTIME%" == "docker" GOTO PODMAN_CONTAINER_RUNTIME
GOTO MAIN
:PODMAN_CONTAINER_RUNTIME
IF NOT "%CONTAINER_RUNTIME%" == "podman" GOTO UNSUPPORTED_BUILD_SYSTEM
GOTO MAIN
:UNSUPPORTED_BUILD_SYSTEM
echo 'Unsupported build system passed as an argument for pushing the images.'
GOTO SKIP
:MAIN
REM go to the parent directory so that all the relative paths will be correct
cd {{ .RelParentOfSourceDir }}
{{- range $dockerfile := .DockerfilesConfig }}
echo "building image {{ $dockerfile.ImageName }}"
pushd {{ $dockerfile.ContextWindows }}
%CONTAINER_RUNTIME% build -f {{ $dockerfile.DockerfileName }} -t {{ $dockerfile.ImageName }} .
popd
{{- end }}
echo "done"
:SKIP