fix SC2162
This commit is contained in:
+22
-22
@@ -17,12 +17,12 @@ workdir=/dev/shm/nspawn-oci
|
||||
mkdir -p $workdir
|
||||
|
||||
skopeo_output=$(echo $workdir/$source | sed s.://./.g)
|
||||
mkdir -p $skopeo_output
|
||||
skopeo copy $source oci:$skopeo_output:latest
|
||||
mkdir -p "$skopeo_output"
|
||||
skopeo copy "$source" oci:"$skopeo_output":latest
|
||||
|
||||
umoci_output=$workdir/$hostname
|
||||
rm -rf $umoci_output
|
||||
umoci --verbose unpack --image $skopeo_output $umoci_output
|
||||
rm -rf "$umoci_output"
|
||||
umoci --verbose unpack --image "$skopeo_output" "$umoci_output"
|
||||
|
||||
oci_config=$umoci_output/config.json
|
||||
|
||||
@@ -31,22 +31,22 @@ if $convert;then
|
||||
mkdir -p /etc/systemd/nspawn
|
||||
nspawn_config=/etc/systemd/nspawn/$hostname.nspawn
|
||||
|
||||
cat << end > $nspawn_config
|
||||
cat << end > "$nspawn_config"
|
||||
[Exec]
|
||||
ProcessTwo=true
|
||||
end
|
||||
|
||||
for environment in $(jq --compact-output '.process.env' $oci_config | sed "s/[][]//g;s/\"//g;s/,/ /g")
|
||||
for environment in $(jq --compact-output '.process.env' "$oci_config" | sed "s/[][]//g;s/\"//g;s/,/ /g")
|
||||
do
|
||||
echo $environment
|
||||
cat << end >> $nspawn_config
|
||||
echo "$environment"
|
||||
cat << end >> "$nspawn_config"
|
||||
Environment=$environment
|
||||
end
|
||||
done
|
||||
|
||||
cat << end >> $nspawn_config
|
||||
WorkingDirectory=$(jq --compact-output '.process.cwd' $oci_config | sed "s/[][]//g;s/\"//g;s/,/ /g")
|
||||
Parameters=$(jq --compact-output '.process.args' $oci_config | sed "s/[][]//g;s/,/ /g")
|
||||
cat << end >> "$nspawn_config"
|
||||
WorkingDirectory=$(jq --compact-output '.process.cwd' "$oci_config" | sed "s/[][]//g;s/\"//g;s/,/ /g")
|
||||
Parameters=$(jq --compact-output '.process.args' "$oci_config" | sed "s/[][]//g;s/,/ /g")
|
||||
|
||||
[Network]
|
||||
VirtualEthernet=no
|
||||
@@ -54,32 +54,32 @@ VirtualEthernet=no
|
||||
[Files]
|
||||
end
|
||||
|
||||
for mount in $(jq -c '.mounts[]' $oci_config); do
|
||||
source=$(echo $mount | jq -r '.source' )
|
||||
echo $source
|
||||
if [ $source == 'none' ]; then
|
||||
for mount in $(jq -c '.mounts[]' "$oci_config"); do
|
||||
source=$(echo "$mount" | jq -r '.source' )
|
||||
echo "$source"
|
||||
if [ "$source" == 'none' ]; then
|
||||
echo 'container requires bind mount'
|
||||
destination=$(echo $mount | jq -r '.destination')
|
||||
destination=$(echo "$mount" | jq -r '.destination')
|
||||
read -p "$destination:" source
|
||||
cat << end >> $nspawn_config
|
||||
cat << end >> "$nspawn_config"
|
||||
Bind=$source:$destination
|
||||
end
|
||||
fi
|
||||
done
|
||||
|
||||
machinectl import-fs $umoci_output/rootfs $2
|
||||
machinectl import-fs "$umoci_output"/rootfs $2
|
||||
echo "Edit $nspawn_config before starting"
|
||||
|
||||
else
|
||||
# oci mode
|
||||
mkdir -p /etc/systemd/system/systemd-nspawn@$hostname.service.d/
|
||||
override=/etc/systemd/system/systemd-nspawn@$hostname.service.d/override.conf
|
||||
cat << end > $override
|
||||
mkdir -p "/etc/systemd/system/systemd-nspawn@$hostname.service.d/"
|
||||
override="/etc/systemd/system/systemd-nspawn@$hostname.service.d/override.conf"
|
||||
cat << end > "$override"
|
||||
[Service]
|
||||
ExecStart=systemd-nspawn --oci-bundle=/var/lib/machines/%i --machine %i
|
||||
end
|
||||
|
||||
machinectl import-fs $umoci_output $hostname
|
||||
machinectl import-fs "$umoci_output" "$hostname"
|
||||
echo "Edit /var/lib/machines/$hostname/config.json before starting"
|
||||
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user