Get Latest Project Build from CodeBuild on Single EC2 Instance
If you are bootstrapping a new instance into your cluster, you probably don’t want to kick off an entire deployment pipeline to get the latest build onto just that one instance. I grab the latest build from CodeBuild S3 artifact storage and untar it right into the pertinent path. It’s a much quicker bootstrap and doesn’t take any other instance out of commission for a deployment. Note: This requires the jq package for parsing the response JSON.
PROJECT='YourBuildProject' LOCATION=$(aws codebuild batch-get-builds --ids $(aws codebuild list-builds-for-project --project-name $PROJECT | jq -r '.ids') | jq -r '.builds.artifacts.location' | sed 's/arn\:aws\:s3\:\:\:/s3:\/\//g') tar -xvf $LOCATION