Переглянути джерело

cleanup aws tools, add tool to delete packer ami images

tags/v0.12.2
Jonathan Cobb 4 роки тому
джерело
коміт
290bc05048
6 змінених файлів з 68 додано та 4 видалено
  1. +26
    -0
      bin/aws/aws_delete_image.sh
  2. +23
    -0
      bin/aws/aws_delete_images.sh
  3. +2
    -2
      bin/aws/aws_delete_subnets.sh
  4. +1
    -1
      bin/aws/aws_delete_test_instances.sh
  5. +1
    -1
      bin/aws/aws_init_configs.sh
  6. +15
    -0
      bin/aws/aws_list_images.sh

+ 26
- 0
bin/aws/aws_delete_image.sh Переглянути файл

@@ -0,0 +1,26 @@
#!/bin/bash

function die {
echo 1>&2 "${1}"
exit 1
}

IMAGEID=${1:?no IMAGEID provided}
THISDIR=$(cd $(dirname ${0}) && pwd)

for region in $(${THISDIR}/aws_list_regions.sh) ; do
${THISDIR}/aws_set_region.sh ${region} || die "Error setting aws region ${region}"
if [[ ${1} == "-n" ]] ; then
IMAGE_NAME=${2:?no image name provided}
echo 1>&2 "Deleting image named: ${IMAGE_NAME} in region ${region}"
IMAGEID=$(aws ec2 describe-images --filters "Name=name,Values=${IMAGE_NAME}" | jq -r '.Images[].ImageId')
if [[ -z "${IMAGEID}" ]] ; then
echo 1>&2 "No images with name=${IMAGE_NAME} found in region ${region}"
continue
fi
fi
echo 1>&2 "Deleting image ${IMAGEID} in region ${region}"
for image in ${IMAGEID} ; do
aws ec2 deregister-image --image-id ${image} || echo 1>&2 "Error deleting image ${image} in aws region ${region}"
done
done

+ 23
- 0
bin/aws/aws_delete_images.sh Переглянути файл

@@ -0,0 +1,23 @@
#!/bin/bash

function die {
echo 1>&2 "${1}"
exit 1
}

IMAGE_FILTER=${1:-'packer_bubble_*'}
THISDIR=$(cd $(dirname ${0}) && pwd)

for region in $(${THISDIR}/aws_list_regions.sh) ; do
${THISDIR}/aws_set_region.sh ${region} || die "Error setting aws region ${region}"
echo 1>&2 "Deleting images matching: ${IMAGE_FILTER} in region ${region}"
IMAGE_IDS=$(aws ec2 describe-images --filters "Name=name,Values=${IMAGE_FILTER}" | jq -r '.Images[].ImageId')
if [[ -z "${IMAGE_IDS}" ]] ; then
echo 1>&2 "No images with name=${IMAGE_NAME} found in region ${region}"
continue
fi
for image in ${IMAGE_IDS} ; do
echo 1>&2 "Deleting image: ${image} in region ${region}"
aws ec2 deregister-image --image-id ${image} || echo 1>&2 "Error deleting image ${image} in aws region ${region}"
done
done

+ 2
- 2
bin/aws/aws_delete_subnets.sh Переглянути файл

@@ -8,9 +8,9 @@ function die {
}

THISDIR=$(cd $(dirname ${0}) && pwd)
for region in $(${THISDIR}/list_regions.sh) ; do
for region in $(${THISDIR}/aws_list_regions.sh) ; do
echo "Deleting subnets in region ${region}"
${THISDIR}/set_aws_region.sh ${region} || die "Error setting aws region ${region}"
${THISDIR}/aws_set_region.sh ${region} || die "Error setting aws region ${region}"
for subnet in $(aws ec2 describe-subnets --filters "Name=default-for-az,Values=false" | grep SubnetId | cut -d\" -f4) ; do
echo "Deleting subnet ${subnet} in region ${region}"
aws ec2 delete-subnet --subnet-id ${subnet} || echo "WARNING: Error deleting subnet ${subnet} in region ${region}"


+ 1
- 1
bin/aws/aws_delete_test_instances.sh Переглянути файл

@@ -8,7 +8,7 @@

SCRIPT="${0}"
SCRIPT_DIR=$(cd $(dirname ${SCRIPT}) && pwd)
. ${SCRIPT_DIR}/list_test_instances.sh
. ${SCRIPT_DIR}/aws_list_test_instances.sh

if [[ ${INSTANCES_COUNT} -gt 0 ]] ; then



+ 1
- 1
bin/aws/aws_init_configs.sh Переглянути файл

@@ -3,6 +3,6 @@
# Copyright (c) 2020 Bubble, Inc. All rights reserved. For personal (non-commercial) use, see license: https://getbubblenow.com/bubble-license/
#
THISDIR=$(cd $(dirname ${0}) && pwd)
for region in $(${THISDIR}/list_regions.sh) ; do
for region in $(${THISDIR}/aws_list_regions.sh) ; do
cat ${THISDIR}/config.template | sed -e "s/__REGION__/${region}" > ~/.aws/config.${region} && echo "created config for region ${region}"
done

+ 15
- 0
bin/aws/aws_list_images.sh Переглянути файл

@@ -0,0 +1,15 @@
#!/bin/bash
#
# Copyright (c) 2020 Bubble, Inc. All rights reserved. For personal (non-commercial) use, see license: https://getbubblenow.com/bubble-license/
#
function die {
echo 1>&2 "${1}"
exit 1
}

THISDIR=$(cd $(dirname ${0}) && pwd)
for region in $(${THISDIR}/aws_list_regions.sh) ; do
echo 1>&2 "Listing images in region ${region}"
${THISDIR}/aws_set_region.sh ${region} || die "Error setting aws region ${region}"
aws ec2 describe-images --filters "Name=name,Values=packer_bubble_*"
done

Завантаження…
Відмінити
Зберегти