Created
December 6, 2019 19:44
-
-
Save trstringer/e06848afa6072b3fd8617856440c6599 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash -i | |
set -e | |
# set -x | |
IMAGE="canonical:ubuntuserver:16.04-lts:latest" | |
NETCFG="/etc/network/interfaces.d/50-cloud-init.cfg" | |
KNOWN_HOSTS="/home/trstringer/.ssh/known_hosts" | |
CLOUD_INIT_VERSION="19.2-404-g5309266f-1~bddeb~16.04.1" | |
OUTPUT=$(az_vm_create "$IMAGE" "$IMAGE validation") | |
VM_NAME=$(echo "$OUTPUT" | head -n 1 | awk '{print $3}') | |
echo "$(date) - Created $VM_NAME" | |
az_vm_ssh "$VM_NAME" "cloud-init status --wait --long" | |
az_vm_ssh "$VM_NAME" "dpkg-query --show cloud-init" | |
az_vm_ssh "$VM_NAME" "sudo cat /run/cloud-init/result.json" | |
if az_vm_ssh "$VM_NAME" "grep Trace /var/log/cloud-init.log"; then | |
echo "Potential issue in cloud-init.log" | |
exit 1 | |
fi | |
az_vm_ssh "$VM_NAME" "systemd-analyze" | |
az_vm_ssh "$VM_NAME" "systemd-analyze blame" | |
az_vm_ssh "$VM_NAME" "cloud-init analyze show" | |
az_vm_ssh "$VM_NAME" "cloud-init analyze blame" | |
echo 'Networking config' | |
az_vm_ssh "$VM_NAME" "cat $NETCFG" | |
az_vm_ssh "$VM_NAME" "sudo apt-add-repository -y ppa:trstringer/ppa2" | |
az_vm_ssh "$VM_NAME" "sudo apt-get update" | |
az_vm_ssh "$VM_NAME" "sudo apt-get install -y cloud-init=$CLOUD_INIT_VERSION" | |
az_vm_ssh "$VM_NAME" "dpkg-query --show cloud-init" | |
az_vm_ssh "$VM_NAME" "sudo hostname SRU-didnt-work" | |
az_vm_ssh "$VM_NAME" "sudo rm -f $NETCFG" | |
az_vm_ssh "$VM_NAME" "sudo cloud-init clean --logs --reboot" || true | |
sleep 60 | |
ssh-keygen -f "$KNOWN_HOSTS" -R "$(full_dns_name $VM_NAME)" | |
az_vm_ssh "$VM_NAME" "cloud-init status --wait --long" | |
if az_vm_ssh "$VM_NAME" 'grep Trace /var/log/cloud-init\*'; then | |
echo "Potential issue in cloud-init logs" | |
exit 1 | |
fi | |
az_vm_ssh "$VM_NAME" "sudo cat /run/cloud-init/result.json" | |
az_vm_ssh "$VM_NAME" "sudo systemd-analyze blame" | |
az_vm_ssh "$VM_NAME" "cloud-init analyze show" | |
az_vm_ssh "$VM_NAME" "cloud-init analyze blame" | |
echo 'After upgrade Networking config' | |
az_vm_ssh "$VM_NAME" "cat $NETCFG" | |
az_vm_ssh "$VM_NAME" "cloud-init query --format \"'cloud-region: {{cloud_name}}-{{region}}'\"" | |
echo 'Get cloud-id' | |
az_vm_ssh "$VM_NAME" "cloud-id" | |
az_vm_ssh "$VM_NAME" "cloud-init query --format \"'cloud-region: {{cloud_name}}-{{ds.meta_data.imds.compute.location}}'\"" | |
echo 'Validating whether metadata is being updated per boot LP:1819913. Expect last log to be Sytem Boot' | |
az_vm_ssh "$VM_NAME" "sudo reboot" || true | |
sleep 30 | |
az_vm_ssh "$VM_NAME" "cloud-init status --wait --long" | |
echo 'After reboot' | |
az_vm_ssh "$VM_NAME" "grep 'Update datasource' /var/log/cloud-init.log" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment