diff --git a/res/scripts/add.sh b/res/scripts/add.sh index b63a65ea9..5a8e87217 100755 --- a/res/scripts/add.sh +++ b/res/scripts/add.sh @@ -64,32 +64,32 @@ URL=`printf "$3" | sed "s/\//\\\\\\\\\//g"` # Add a cached config. BUILDERS=`jq "[ .builders[] | select( .name | contains(\"$1\")) ]" packer-cache.json | \ - sed "s/$1/$2/g" | sed "s/\"iso_url\": \".*\",/\"iso_url\": \"$URL\",/g" | sed "s/\"iso_checksum\": \".*\",/\"iso_checksum\": \"$4\",/g"` + sed "s/$1/$2/g" | sed "s/\"iso_url\": \".*\",/\"iso_url\": \"$URL\",/g" | sed "s/\"iso_checksum\": \".*\",/\"iso_checksum\": \"sha256:$4\",/g"` jq --argjson new1 "${BUILDERS}" '.builders |= .[:-1] + $new1 + .[-1:]' packer-cache.json > packer-cache.new.json # Add provisioner/builder configs. BUILDERS=`jq "[ .builders[] | select( .name | contains(\"$1\")) ]" generic-hyperv.json | \ - sed "s/$1/$2/g" | sed "s/\"iso_url\": \".*\",/\"iso_url\": \"$URL\",/g" | sed "s/\"iso_checksum\": \".*\",/\"iso_checksum\": \"$4\",/g"` + sed "s/$1/$2/g" | sed "s/\"iso_url\": \".*\",/\"iso_url\": \"$URL\",/g" | sed "s/\"iso_checksum\": \".*\",/\"iso_checksum\": \"sha256:$4\",/g"` PROVISIONERS=`jq "[ .provisioners[] | select( .only[0] // \"no\" | contains(\"$1\")) ]" generic-hyperv.json | sed "s/$1/$2/g"` jq --argjson new1 "${PROVISIONERS}" --argjson new2 "${BUILDERS}" '.provisioners |= .[:-1] + $new1 + .[-1:] | .builders += $new2' generic-hyperv.json > generic-hyperv.new.json BUILDERS=`jq "[ .builders[] | select( .name | contains(\"$1\")) ]" generic-vmware.json | \ - sed "s/$1/$2/g" | sed "s/\"iso_url\": \".*\",/\"iso_url\": \"$URL\",/g" | sed "s/\"iso_checksum\": \".*\",/\"iso_checksum\": \"$4\",/g"` + sed "s/$1/$2/g" | sed "s/\"iso_url\": \".*\",/\"iso_url\": \"$URL\",/g" | sed "s/\"iso_checksum\": \".*\",/\"iso_checksum\": \"sha256:$4\",/g"` PROVISIONERS=`jq "[ .provisioners[] | select( .only[0] // \"no\" | contains(\"$1\")) ]" generic-vmware.json | sed "s/$1/$2/g"` jq --argjson new1 "${PROVISIONERS}" --argjson new2 "${BUILDERS}" '.provisioners |= .[:-1] + $new1 + .[-1:] | .builders += $new2' generic-vmware.json > generic-vmware.new.json BUILDERS=`jq "[ .builders[] | select( .name | contains(\"$1\")) ]" generic-libvirt.json | \ - sed "s/$1/$2/g" | sed "s/\"iso_url\": \".*\",/\"iso_url\": \"$URL\",/g" | sed "s/\"iso_checksum\": \".*\",/\"iso_checksum\": \"$4\",/g"` + sed "s/$1/$2/g" | sed "s/\"iso_url\": \".*\",/\"iso_url\": \"$URL\",/g" | sed "s/\"iso_checksum\": \".*\",/\"iso_checksum\": \"sha256:$4\",/g"` PROVISIONERS=`jq "[ .provisioners[] | select( .only[0] // \"no\" | contains(\"$1\")) ]" generic-libvirt.json | sed "s/$1/$2/g"` jq --argjson new1 "${PROVISIONERS}" --argjson new2 "${BUILDERS}" '.provisioners |= .[:-1] + $new1 + .[-1:] | .builders += $new2' generic-libvirt.json > generic-libvirt.new.json BUILDERS=`jq "[ .builders[] | select( .name | contains(\"$1\")) ]" generic-parallels.json | \ - sed "s/$1/$2/g" | sed "s/\"iso_url\": \".*\",/\"iso_url\": \"$URL\",/g" | sed "s/\"iso_checksum\": \".*\",/\"iso_checksum\": \"$4\",/g"` + sed "s/$1/$2/g" | sed "s/\"iso_url\": \".*\",/\"iso_url\": \"$URL\",/g" | sed "s/\"iso_checksum\": \".*\",/\"iso_checksum\": \"sha256:$4\",/g"` PROVISIONERS=`jq "[ .provisioners[] | select( .only[0] // \"no\" | contains(\"$1\")) ]" generic-parallels.json | sed "s/$1/$2/g"` jq --argjson new1 "${PROVISIONERS}" --argjson new2 "${BUILDERS}" '.provisioners |= .[:-1] + $new1 + .[-1:] | .builders += $new2' generic-parallels.json > generic-parallels.new.json BUILDERS=`jq "[ .builders[] | select( .name | contains(\"$1\")) ]" generic-virtualbox.json | \ - sed "s/$1/$2/g" | sed "s/\"iso_url\": \".*\",/\"iso_url\": \"$URL\",/g" | sed "s/\"iso_checksum\": \".*\",/\"iso_checksum\": \"$4\",/g"` + sed "s/$1/$2/g" | sed "s/\"iso_url\": \".*\",/\"iso_url\": \"$URL\",/g" | sed "s/\"iso_checksum\": \".*\",/\"iso_checksum\": \"sha256:$4\",/g"` PROVISIONERS=`jq "[ .provisioners[] | select( .only[0] // \"no\" | contains(\"$1\")) ]" generic-virtualbox.json | sed "s/$1/$2/g"` jq --argjson new1 "${PROVISIONERS}" --argjson new2 "${BUILDERS}" '.provisioners |= .[:-1] + $new1 + .[-1:] | .builders += $new2' generic-virtualbox.json > generic-virtualbox.new.json diff --git a/robox.sh b/robox.sh index 42ca3fde2..826a82813 100755 --- a/robox.sh +++ b/robox.sh @@ -72,7 +72,7 @@ DYNAMICURLS="http://cdimage.ubuntu.com/ubuntu-server/daily/current/disco-server- # Collect the list of ISO urls. ISOURLS=(`grep -E "iso_url|guest_additions_url" $FILES | grep -Ev "$DYNAMICURLS" | awk -F'"' '{print $4}'`) -ISOSUMS=(`grep -E "iso_checksum|guest_additions_sha256" $FILES | grep -Ev "iso_checksum_type|iso_checksum_url" | awk -F'"' '{print $4}'`) +ISOSUMS=(`grep -E "iso_checksum|guest_additions_sha256" $FILES | awk -F'"' '{print $4}' | awk -F':' '{print $2}'`) UNIQURLS=(`grep -E "iso_url|guest_additions_url" $FILES | awk -F'"' '{print $4}' | sort | uniq`) # Collect the list of box names. @@ -298,7 +298,7 @@ function iso() { # Replace the existing ISO and hash values with the update values. sed --in-place "s/$ISO_URL/$URL/g" $FILES - sed --in-place "s/$ISO_CHECKSUM/$SHA/g" $FILES + sed --in-place "s/$ISO_CHECKSUM/sha256:$SHA/g" $FILES elif [ "$1" == "arch" ]; then @@ -333,7 +333,7 @@ function iso() { # Replace the existing ISO and hash values with the update values. sed --in-place "s/$ISO_URL/$URL/g" $FILES - sed --in-place "s/$ISO_CHECKSUM/$SHA/g" $FILES + sed --in-place "s/$ISO_CHECKSUM/sha256:$SHA/g" $FILES fi