@@ -38,8 +38,34 @@ while true; do
38
38
esac
39
39
done
40
40
41
+ errorCatch () {
42
+ printf ' %s\n' " Error caught. Exiting"
43
+ rm -rf " ${target} "
44
+ exit 1
45
+ }
46
+
47
+ trap errorCatch ERR SIGHUP SIGINT SIGTERM
48
+
49
+ [ ! -S /var/run/docker.sock ] && printf ' %s\n' " The /var/run/docker.sock is missing. Check your docker installation and configuration. Exiting." && exit 1
50
+
51
+ if [ -z $( command -v docker) ]; then
52
+ printf ' %s\n' " Missing docker. Installing..."
53
+
54
+ dnf --refresh \
55
+ --nogpgcheck \
56
+ --setopt=install_weak_deps=False \
57
+ --nodocs \
58
+ --assumeyes \
59
+ install docker
60
+
61
+ if [ $? != 0 ]; then
62
+ printf ' %s\n' " Installing docker failed."
63
+ errorCatch
64
+ fi
65
+ fi
66
+
41
67
if [ -z " ${installversion} " ]; then
42
- # Attempt to match host version
68
+ # Attempt to match host version
43
69
if grep -q Cooker /etc/os-release; then
44
70
installversion=cooker
45
71
elif grep -q Rolling /etc/os-release; then
56
82
[ -z " $arch " ] && arch=" $( uname -m) "
57
83
[ -z " $rootfsdir " ] && rootfsdir=" $common_pwd /docker-brew-openmandriva/${installversion} "
58
84
59
- target=$( mktemp -d --tmpdir=" $( realpath $( dirname $0 ) ) " $( basename $0 ) .XXXXXX)
85
+ target=" $( mktemp -d --tmpdir=$( realpath $( dirname $0 ) ) $( basename $0 ) .XXXXXX) "
60
86
mkdir -m 755 " $target " /dev
61
87
mknod -m 600 " $target " /dev/console c 5 1
62
88
mknod -m 600 " $target " /dev/initctl p
@@ -69,13 +95,6 @@ mknod -m 666 "$target"/dev/tty0 c 4 0
69
95
mknod -m 666 " $target " /dev/urandom c 1 9
70
96
mknod -m 666 " $target " /dev/zero c 1 5
71
97
72
- errorCatch () {
73
- printf ' %s\n' " Error caught. Exiting"
74
- rm -rf " ${target} "
75
- exit 1
76
- }
77
-
78
- trap errorCatch ERR SIGHUP SIGINT SIGTERM
79
98
80
99
if [ -n " ${mirror} " ]; then
81
100
# If mirror provided, use it exclusively
@@ -201,11 +220,11 @@ else
201
220
tarFile=" ${rootfsdir} " /rootfs-" ${installversion} " .tar.xz
202
221
fi
203
222
204
- pushd " ${target} "
223
+ cd " ${target} "
205
224
206
225
tar --numeric-owner -caf " ${tarFile} " -c .
207
226
[ " ${rootfsdir} " = " $common_pwd /docker-brew-openmandriva/$installversion " ] || mv -f " ${tarFile} " $common_pwd /docker-brew-openmandriva/$installversion /
208
- pushd $common_pwd /docker-brew-openmandriva/$installversion /
227
+ cd $common_pwd /docker-brew-openmandriva/$installversion /
209
228
docker build --tag=openmandriva/$installversion :$arch --file Dockerfile .
210
229
211
230
docker run -i -t --rm openmandriva/$installversion :$arch /bin/sh -c " printf '%s\n' success"
@@ -237,5 +256,5 @@ if [ ! -z "${builder}" ]; then
237
256
docker manifest push openmandriva/builder:latest
238
257
fi
239
258
240
- popd
259
+ cd ..
241
260
rm -rf " ${target} "
0 commit comments