@@ -46,6 +46,12 @@ def build_one_configuration(suite, arch, build_desc)
46
46
ENV [ "LXC_SUITE" ] = suite
47
47
end
48
48
49
+ if ENV [ "USE_DOCKER" ] and build_desc [ "distro" ] . eql? "centos"
50
+ ontarget_root_extra = "-w /root"
51
+ else
52
+ ontarget_root_extra = ""
53
+ end
54
+
49
55
suitearch = "#{ suite } -#{ arch } "
50
56
51
57
info "Stopping target if it is up"
@@ -73,7 +79,7 @@ def build_one_configuration(suite, arch, build_desc)
73
79
74
80
system! "on-target true"
75
81
76
- system! "on-target -u root tee -a /etc/sudoers.d/#{ ENV [ 'DISTRO' ] || 'ubuntu' } > /dev/null << EOF
82
+ system! "on-target -u root #{ ontarget_root_extra } tee -a /etc/sudoers.d/#{ ENV [ 'DISTRO' ] || 'ubuntu' } > /dev/null << EOF
77
83
%#{ ENV [ 'DISTRO' ] || 'ubuntu' } ALL=(ALL) NOPASSWD: ALL
78
84
EOF" if build_desc [ "sudo" ] and @options [ :allow_sudo ]
79
85
@@ -98,54 +104,54 @@ EOF" if build_desc["sudo"] and @options[:allow_sudo]
98
104
if build_desc [ "multiarch" ]
99
105
info "Adding multiarch support (log in var/install.log)"
100
106
for a in build_desc [ "multiarch" ]
101
- system! "on-target -u root dpkg --add-architecture #{ a } >> var/install.log 2>&1"
107
+ system! "on-target -u root #{ ontarget_root_extra } dpkg --add-architecture #{ a } >> var/install.log 2>&1"
102
108
end
103
109
end
104
110
105
111
case build_desc [ "distro" ]
106
112
when "centos"
107
113
info "Updating yum repository (log in var/install.log)"
108
- system! "on-target -u root -w /root yum -y makecache fast >> var/install.log 2>&1"
114
+ system! "on-target -u root #{ ontarget_root_extra } yum -y makecache fast >> var/install.log 2>&1"
109
115
else
110
116
info "Updating apt-get repository (log in var/install.log)"
111
- system! "on-target -u root apt-get update >> var/install.log 2>&1"
117
+ system! "on-target -u root #{ ontarget_root_extra } apt-get update >> var/install.log 2>&1"
112
118
end
113
119
114
120
info "Installing additional packages (log in var/install.log)"
115
121
116
122
case build_desc [ "distro" ]
117
123
when "centos"
118
- system! "on-target -u root -w /root yum -y install #{ build_desc [ "packages" ] . join ( " " ) } > var/install.log 2>&1"
124
+ system! "on-target -u root #{ ontarget_root_extra } yum -y install #{ build_desc [ "packages" ] . join ( " " ) } > var/install.log 2>&1"
119
125
else
120
- system! "on-target -u root -e DEBIAN_FRONTEND=noninteractive apt-get --no-install-recommends -y install #{ build_desc [ "packages" ] . join ( " " ) } >> var/install.log 2>&1"
126
+ system! "on-target -u root #{ ontarget_root_extra } -e DEBIAN_FRONTEND=noninteractive apt-get --no-install-recommends -y install #{ build_desc [ "packages" ] . join ( " " ) } >> var/install.log 2>&1"
121
127
end
122
128
123
129
if build_desc [ "alternatives" ]
124
130
info "Set alternatives (log in var/install.log)"
125
131
for a in build_desc [ "alternatives" ]
126
- system! "on-target -u root update-alternatives --set #{ a [ "package" ] } #{ a [ "path" ] } >> var/install.log 2>&1"
132
+ system! "on-target -u root #{ ontarget_root_extra } update-alternatives --set #{ a [ "package" ] } #{ a [ "path" ] } >> var/install.log 2>&1"
127
133
end
128
134
end
129
135
130
- if @options [ :upgrade ] || system ( "on-target -u root '[ ! -e /var/cache/gitian/initial-upgrade ]'" )
136
+ if @options [ :upgrade ] || system ( "on-target -u root #{ ontarget_root_extra } '[ ! -e /var/cache/gitian/initial-upgrade ]'" )
131
137
info "Upgrading system, may take a while (log in var/install.log)"
132
138
case build_desc [ "distro" ]
133
139
when "centos"
134
- system! "on-target -u root -w /root mkdir -p /var/cache/gitian"
135
- system! "on-target -u root -w /root yum -y update > var/upgrade.log 2>&1"
140
+ system! "on-target -u root #{ ontarget_root_extra } mkdir -p /var/cache/gitian"
141
+ system! "on-target -u root #{ ontarget_root_extra } yum -y update > var/upgrade.log 2>&1"
136
142
system! "copy-to-target #{ @quiet_flag } var/upgrade.log /var/cache/gitian/upgrade.log"
137
- system! "on-target -u root -w /root touch /var/cache/gitian/initial-upgrade"
143
+ system! "on-target -u root #{ ontarget_root_extra } touch /var/cache/gitian/initial-upgrade"
138
144
else
139
- system! "on-target -u root bash < target-bin/upgrade-system.sh >> var/install.log 2>&1"
145
+ system! "on-target -u root #{ ontarget_root_extra } bash < target-bin/upgrade-system.sh >> var/install.log 2>&1"
140
146
end
141
147
end
142
148
info "Creating package manifest"
143
149
144
150
case build_desc [ "distro" ]
145
151
when "centos"
146
- system! "on-target -u root -w /root yumdb get checksum_data | awk '/checksum_data =/ { print $3, package; next } { package=$1 }' | sort --key 2 > var/base-#{ suitearch } .manifest"
152
+ system! "on-target -u root #{ ontarget_root_extra } yumdb get checksum_data | awk '/checksum_data =/ { print $3, package; next } { package=$1 }' | sort --key 2 > var/base-#{ suitearch } .manifest"
147
153
else
148
- system! "on-target -u root bash < target-bin/grab-packages.sh > var/base-#{ suitearch } .manifest"
154
+ system! "on-target -u root #{ ontarget_root_extra } bash < target-bin/grab-packages.sh > var/base-#{ suitearch } .manifest"
149
155
end
150
156
151
157
info "Creating build script (var/build-script)"
0 commit comments