Skip to content

Instantly share code, notes, and snippets.

@thierryturpin
Last active December 5, 2020 11:20
Show Gist options
  • Save thierryturpin/7ead3f280013cf744fa2dc9c00f66f37 to your computer and use it in GitHub Desktop.
Save thierryturpin/7ead3f280013cf744fa2dc9c00f66f37 to your computer and use it in GitHub Desktop.
Dockerfile_buildspec.yml
vversion: 0.2
phases:
pre_build:
commands:
- echo Logging in to Amazon ECR...
- $(aws ecr get-login --registry-ids $AWS_ACCOUNT_ID --no-include-email --region $AWS_DEFAULT_REGION)
- echo Get Airflow version out of Dockerfile for version tagging
- AIRFLOW_VERSION=$(awk '$1=="ARG"{print $2}' Dockerfile | awk -F "=" '$1=="AIRFLOW_VERSION"{print $2}' -)
- echo Airflow version found $AIRFLOW_VERSION
build:
commands:
- echo Build started on `date`
- echo Building the Docker image...
- docker build -t $IMAGE_REPO_NAME:$IMAGE_TAG . --build-arg LABEL_BUILD_NUMBER=$CODEBUILD_BUILD_NUMBER --build-arg LABEL_BUILD_ID=$CODEBUILD_BUILD_ID --build-arg LABEL_TRIGGER=$CODEBUILD_WEBHOOK_TRIGGER --build-arg SOURCE_VERSION=$CODEBUILD_RESOLVED_SOURCE_VERSION
- docker tag $IMAGE_REPO_NAME:$IMAGE_TAG $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$IMAGE_TAG
- docker tag $IMAGE_REPO_NAME:$IMAGE_TAG $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$AIRFLOW_VERSION
- docker tag $IMAGE_REPO_NAME:$IMAGE_TAG $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$AIRFLOW_VERSION.$CODEBUILD_BUILD_NUMBER
post_build:
commands:
- echo Build completed on `date`
- echo Pushing the Docker image...
- docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$IMAGE_TAG
- docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$AIRFLOW_VERSION
- docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$AIRFLOW_VERSION.$CODEBUILD_BUILD_NUMBER
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment