github.com/discordapp/buildkite-agent@v2.6.6+incompatible/scripts/publish-to-s3.sh (about)

     1  #!/usr/bin/env bash
     2  
     3  set -eo pipefail
     4  
     5  version=$(buildkite-agent meta-data get "agent-version")
     6  build=$(buildkite-agent meta-data get "agent-version-build")
     7  
     8  if [[ "$CODENAME" == "experimental" ]]; then
     9    version="$version.$build"
    10  fi
    11  
    12  echo "--- :package: Downloading built binaries"
    13  
    14  rm -rf pkg/*
    15  buildkite-agent artifact download "pkg/buildkite-agent-*" .
    16  cd pkg
    17  
    18  echo "--- :s3: Publishing $version to download.buildkite.com"
    19  
    20  s3_base_url="s3://download.buildkite.com/agent/$CODENAME"
    21  
    22  for binary in *; do
    23    binary_s3_url="$s3_base_url/$version/$binary"
    24  
    25    echo "Publishing $binary to $binary_s3_url"
    26    aws s3 --region "us-east-1" cp --acl "public-read" "$binary" "$binary_s3_url"
    27  
    28    echo "Calculating SHA256"
    29    sha256sum "$binary" | awk '{print $1}' > "$binary.sha256"
    30  
    31    echo "Publishing $binary.sha256 to $binary_s3_url.sha256"
    32    aws s3 cp --region "us-east-1" --acl "public-read" --content-type "text/plain" "$binary.sha256" "$binary_s3_url.sha256"
    33  done
    34  
    35  echo "--- :s3: Copying /$version to /latest"
    36  
    37  latest_version=$(aws s3 ls --region "us-east-1" "$s3_base_url/" | grep PRE | awk '{print $2}' | awk -F '/' '{print $1}' | ruby ../scripts/utils/latest_version.rb)
    38  latest_version_s3_url="$s3_base_url/$latest_version/"
    39  latest_s3_url="$s3_base_url/latest/"
    40  
    41  echo "Copying $latest_version_s3_url to $latest_s3_url"
    42  
    43  aws s3 cp --region "us-east-1" --acl "public-read" --recursive "$latest_version_s3_url" "$latest_s3_url"
    44  
    45  echo "--- :llama::sparkles::llama: All done!"