Skip to content
Snippets Groups Projects
Select Git revision
  • 72632c9e553901e7b589f117a634159a04c2f5ad
  • main default
2 results

delete_all.sh

Blame
  • delete_all.sh 1.08 KiB
    #!/bin/bash
    : ${BUCKET_NAME:=restictmp}
    : ${PROFILE:="cesnet_listvm_backup"}
    CESNET="--endpoint-url https://s3.cl4.du.cesnet.cz --profile ${PROFILE}"
    
    # Get list of all object versions
    aws ${CESNET} s3api list-object-versions --bucket "${BUCKET_NAME}" --output json | jq -r '.Versions[] | .Key + " " + .VersionId ' > /tmp/versions.txt 
    
    # Delete all object versions
    while read -r LINE; do
      KEY=$(awk '{print $1}' <<< "$LINE")
      VERSION_ID=$(awk '{print $2}' <<< "$LINE")
      aws ${CESNET} s3api delete-object --bucket "$BUCKET_NAME" --key "$KEY" --version-id="$VERSION_ID"
    done < /tmp/versions.txt
    
    # Get list of all delete markers
    aws ${CESNET} s3api list-object-versions --bucket "$BUCKET_NAME" --output json | jq -r '.DeleteMarkers[] | .Key + " " + .VersionId ' > /tmp/delete_markers.txt 
    
    # Delete all delete markers
    while read -r LINE; do
      KEY=$(awk '{print $1}' <<< "$LINE")
      VERSION_ID=$(awk '{print $2}' <<< "$LINE")
      aws ${CESNET} s3api delete-object --bucket "$BUCKET_NAME" --key "$KEY" --version-id="$VERSION_ID"
    done < /tmp/delete_markers.txt
    
    rm /tmp/versions.txt
    rm /tmp/delete_markers.txt