Merge pull request #9709 from filecoin-project/id/discontinue-ECR
_build_: Remove ECR image publishing
This commit is contained in:
commit
4ae2d400d1
@ -584,129 +584,6 @@ jobs:
|
|||||||
command: |
|
command: |
|
||||||
snapcraft upload *.snap --release << parameters.channel >>
|
snapcraft upload *.snap --release << parameters.channel >>
|
||||||
|
|
||||||
build-and-push-image:
|
|
||||||
description: build and push docker images to public AWS ECR registry
|
|
||||||
executor: aws-cli/default
|
|
||||||
parameters:
|
|
||||||
profile-name:
|
|
||||||
type: string
|
|
||||||
default: "default"
|
|
||||||
description: AWS profile name to be configured.
|
|
||||||
|
|
||||||
aws-access-key-id:
|
|
||||||
type: env_var_name
|
|
||||||
default: AWS_ACCESS_KEY_ID
|
|
||||||
description: >
|
|
||||||
AWS access key id for IAM role. Set this to the name of
|
|
||||||
the environment variable you will set to hold this
|
|
||||||
value, i.e. AWS_ACCESS_KEY.
|
|
||||||
|
|
||||||
aws-secret-access-key:
|
|
||||||
type: env_var_name
|
|
||||||
default: AWS_SECRET_ACCESS_KEY
|
|
||||||
description: >
|
|
||||||
AWS secret key for IAM role. Set this to the name of
|
|
||||||
the environment variable you will set to hold this
|
|
||||||
value, i.e. AWS_SECRET_ACCESS_KEY.
|
|
||||||
|
|
||||||
region:
|
|
||||||
type: env_var_name
|
|
||||||
default: AWS_REGION
|
|
||||||
description: >
|
|
||||||
Name of env var storing your AWS region information,
|
|
||||||
defaults to AWS_REGION
|
|
||||||
|
|
||||||
account-url:
|
|
||||||
type: env_var_name
|
|
||||||
default: AWS_ECR_ACCOUNT_URL
|
|
||||||
description: >
|
|
||||||
Env var storing Amazon ECR account URL that maps to an AWS account,
|
|
||||||
e.g. {awsAccountNum}.dkr.ecr.us-west-2.amazonaws.com
|
|
||||||
defaults to AWS_ECR_ACCOUNT_URL
|
|
||||||
|
|
||||||
dockerfile:
|
|
||||||
type: string
|
|
||||||
default: Dockerfile
|
|
||||||
description: Name of dockerfile to use. Defaults to Dockerfile.
|
|
||||||
|
|
||||||
path:
|
|
||||||
type: string
|
|
||||||
default: .
|
|
||||||
description: Path to the directory containing your Dockerfile and build context. Defaults to . (working directory).
|
|
||||||
|
|
||||||
extra-build-args:
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
description: >
|
|
||||||
Extra flags to pass to docker build. For examples, see
|
|
||||||
https://docs.docker.com/engine/reference/commandline/build
|
|
||||||
|
|
||||||
repo:
|
|
||||||
type: string
|
|
||||||
description: Name of an Amazon ECR repository
|
|
||||||
|
|
||||||
tag:
|
|
||||||
type: string
|
|
||||||
default: "latest"
|
|
||||||
description: A comma-separated string containing docker image tags to build and push (default = latest)
|
|
||||||
|
|
||||||
target:
|
|
||||||
type: string
|
|
||||||
default: "lotus-all-in-one"
|
|
||||||
description: Docker target to build
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- run:
|
|
||||||
name: Confirm that environment variables are set
|
|
||||||
command: |
|
|
||||||
if [ -z "$AWS_ACCESS_KEY_ID" ]; then
|
|
||||||
echo "No AWS_ACCESS_KEY_ID is set. Skipping build-and-push job ..."
|
|
||||||
circleci-agent step halt
|
|
||||||
fi
|
|
||||||
|
|
||||||
- aws-cli/setup:
|
|
||||||
profile-name: <<parameters.profile-name>>
|
|
||||||
aws-access-key-id: <<parameters.aws-access-key-id>>
|
|
||||||
aws-secret-access-key: <<parameters.aws-secret-access-key>>
|
|
||||||
aws-region: <<parameters.region>>
|
|
||||||
|
|
||||||
- run:
|
|
||||||
name: Log into Amazon ECR
|
|
||||||
command: |
|
|
||||||
aws ecr-public get-login-password --region $<<parameters.region>> --profile <<parameters.profile-name>> | docker login --username AWS --password-stdin $<<parameters.account-url>>
|
|
||||||
|
|
||||||
- checkout
|
|
||||||
|
|
||||||
- setup_remote_docker:
|
|
||||||
version: 19.03.13
|
|
||||||
docker_layer_caching: false
|
|
||||||
|
|
||||||
- run:
|
|
||||||
name: Build docker image
|
|
||||||
command: |
|
|
||||||
registry_id=$(echo $<<parameters.account-url>> | sed "s;\..*;;g")
|
|
||||||
|
|
||||||
docker_tag_args=""
|
|
||||||
IFS="," read -ra DOCKER_TAGS \<<< "<< parameters.tag >>"
|
|
||||||
for tag in "${DOCKER_TAGS[@]}"; do
|
|
||||||
docker_tag_args="$docker_tag_args -t $<<parameters.account-url>>/<<parameters.repo>>:$tag"
|
|
||||||
done
|
|
||||||
|
|
||||||
docker build \
|
|
||||||
<<#parameters.extra-build-args>><<parameters.extra-build-args>><</parameters.extra-build-args>> \
|
|
||||||
--target <<parameters.target>> \
|
|
||||||
-f <<parameters.path>>/<<parameters.dockerfile>> \
|
|
||||||
$docker_tag_args \
|
|
||||||
<<parameters.path>>
|
|
||||||
|
|
||||||
- run:
|
|
||||||
name: Push image to Amazon ECR
|
|
||||||
command: |
|
|
||||||
IFS="," read -ra DOCKER_TAGS \<<< "<< parameters.tag >>"
|
|
||||||
for tag in "${DOCKER_TAGS[@]}"; do
|
|
||||||
docker push $<<parameters.account-url>>/<<parameters.repo>>:${tag}
|
|
||||||
done
|
|
||||||
|
|
||||||
publish-packer-snap:
|
publish-packer-snap:
|
||||||
description: build packer image with snap. mainnet only.
|
description: build packer image with snap. mainnet only.
|
||||||
executor:
|
executor:
|
||||||
@ -1191,20 +1068,6 @@ workflows:
|
|||||||
tags:
|
tags:
|
||||||
only:
|
only:
|
||||||
- /^v\d+\.\d+\.\d+(-rc\d+)?$/
|
- /^v\d+\.\d+\.\d+(-rc\d+)?$/
|
||||||
- build-and-push-image:
|
|
||||||
name: "Publish ECR (lotus-all-in-one)"
|
|
||||||
dockerfile: Dockerfile.lotus
|
|
||||||
path: .
|
|
||||||
repo: lotus-dev
|
|
||||||
tag: '${CIRCLE_SHA1:0:8}'
|
|
||||||
target: lotus-all-in-one
|
|
||||||
- build-and-push-image:
|
|
||||||
name: "Publish ECR (lotus-test)"
|
|
||||||
dockerfile: Dockerfile.lotus
|
|
||||||
path: .
|
|
||||||
repo: lotus-test
|
|
||||||
tag: '${CIRCLE_SHA1:0:8}'
|
|
||||||
target: lotus-test
|
|
||||||
- publish-snapcraft:
|
- publish-snapcraft:
|
||||||
name: "Publish Snapcraft (lotus-filecoin / candidate)"
|
name: "Publish Snapcraft (lotus-filecoin / candidate)"
|
||||||
channel: stable
|
channel: stable
|
||||||
|
@ -584,129 +584,6 @@ jobs:
|
|||||||
command: |
|
command: |
|
||||||
snapcraft upload *.snap --release << parameters.channel >>
|
snapcraft upload *.snap --release << parameters.channel >>
|
||||||
|
|
||||||
build-and-push-image:
|
|
||||||
description: build and push docker images to public AWS ECR registry
|
|
||||||
executor: aws-cli/default
|
|
||||||
parameters:
|
|
||||||
profile-name:
|
|
||||||
type: string
|
|
||||||
default: "default"
|
|
||||||
description: AWS profile name to be configured.
|
|
||||||
|
|
||||||
aws-access-key-id:
|
|
||||||
type: env_var_name
|
|
||||||
default: AWS_ACCESS_KEY_ID
|
|
||||||
description: >
|
|
||||||
AWS access key id for IAM role. Set this to the name of
|
|
||||||
the environment variable you will set to hold this
|
|
||||||
value, i.e. AWS_ACCESS_KEY.
|
|
||||||
|
|
||||||
aws-secret-access-key:
|
|
||||||
type: env_var_name
|
|
||||||
default: AWS_SECRET_ACCESS_KEY
|
|
||||||
description: >
|
|
||||||
AWS secret key for IAM role. Set this to the name of
|
|
||||||
the environment variable you will set to hold this
|
|
||||||
value, i.e. AWS_SECRET_ACCESS_KEY.
|
|
||||||
|
|
||||||
region:
|
|
||||||
type: env_var_name
|
|
||||||
default: AWS_REGION
|
|
||||||
description: >
|
|
||||||
Name of env var storing your AWS region information,
|
|
||||||
defaults to AWS_REGION
|
|
||||||
|
|
||||||
account-url:
|
|
||||||
type: env_var_name
|
|
||||||
default: AWS_ECR_ACCOUNT_URL
|
|
||||||
description: >
|
|
||||||
Env var storing Amazon ECR account URL that maps to an AWS account,
|
|
||||||
e.g. {awsAccountNum}.dkr.ecr.us-west-2.amazonaws.com
|
|
||||||
defaults to AWS_ECR_ACCOUNT_URL
|
|
||||||
|
|
||||||
dockerfile:
|
|
||||||
type: string
|
|
||||||
default: Dockerfile
|
|
||||||
description: Name of dockerfile to use. Defaults to Dockerfile.
|
|
||||||
|
|
||||||
path:
|
|
||||||
type: string
|
|
||||||
default: .
|
|
||||||
description: Path to the directory containing your Dockerfile and build context. Defaults to . (working directory).
|
|
||||||
|
|
||||||
extra-build-args:
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
description: >
|
|
||||||
Extra flags to pass to docker build. For examples, see
|
|
||||||
https://docs.docker.com/engine/reference/commandline/build
|
|
||||||
|
|
||||||
repo:
|
|
||||||
type: string
|
|
||||||
description: Name of an Amazon ECR repository
|
|
||||||
|
|
||||||
tag:
|
|
||||||
type: string
|
|
||||||
default: "latest"
|
|
||||||
description: A comma-separated string containing docker image tags to build and push (default = latest)
|
|
||||||
|
|
||||||
target:
|
|
||||||
type: string
|
|
||||||
default: "lotus-all-in-one"
|
|
||||||
description: Docker target to build
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- run:
|
|
||||||
name: Confirm that environment variables are set
|
|
||||||
command: |
|
|
||||||
if [ -z "$AWS_ACCESS_KEY_ID" ]; then
|
|
||||||
echo "No AWS_ACCESS_KEY_ID is set. Skipping build-and-push job ..."
|
|
||||||
circleci-agent step halt
|
|
||||||
fi
|
|
||||||
|
|
||||||
- aws-cli/setup:
|
|
||||||
profile-name: <<parameters.profile-name>>
|
|
||||||
aws-access-key-id: <<parameters.aws-access-key-id>>
|
|
||||||
aws-secret-access-key: <<parameters.aws-secret-access-key>>
|
|
||||||
aws-region: <<parameters.region>>
|
|
||||||
|
|
||||||
- run:
|
|
||||||
name: Log into Amazon ECR
|
|
||||||
command: |
|
|
||||||
aws ecr-public get-login-password --region $<<parameters.region>> --profile <<parameters.profile-name>> | docker login --username AWS --password-stdin $<<parameters.account-url>>
|
|
||||||
|
|
||||||
- checkout
|
|
||||||
|
|
||||||
- setup_remote_docker:
|
|
||||||
version: 19.03.13
|
|
||||||
docker_layer_caching: false
|
|
||||||
|
|
||||||
- run:
|
|
||||||
name: Build docker image
|
|
||||||
command: |
|
|
||||||
registry_id=$(echo $<<parameters.account-url>> | sed "s;\..*;;g")
|
|
||||||
|
|
||||||
docker_tag_args=""
|
|
||||||
IFS="," read -ra DOCKER_TAGS \<<< "<< parameters.tag >>"
|
|
||||||
for tag in "${DOCKER_TAGS[@]}"; do
|
|
||||||
docker_tag_args="$docker_tag_args -t $<<parameters.account-url>>/<<parameters.repo>>:$tag"
|
|
||||||
done
|
|
||||||
|
|
||||||
docker build \
|
|
||||||
<<#parameters.extra-build-args>><<parameters.extra-build-args>><</parameters.extra-build-args>> \
|
|
||||||
--target <<parameters.target>> \
|
|
||||||
-f <<parameters.path>>/<<parameters.dockerfile>> \
|
|
||||||
$docker_tag_args \
|
|
||||||
<<parameters.path>>
|
|
||||||
|
|
||||||
- run:
|
|
||||||
name: Push image to Amazon ECR
|
|
||||||
command: |
|
|
||||||
IFS="," read -ra DOCKER_TAGS \<<< "<< parameters.tag >>"
|
|
||||||
for tag in "${DOCKER_TAGS[@]}"; do
|
|
||||||
docker push $<<parameters.account-url>>/<<parameters.repo>>:${tag}
|
|
||||||
done
|
|
||||||
|
|
||||||
publish-packer-snap:
|
publish-packer-snap:
|
||||||
description: build packer image with snap. mainnet only.
|
description: build packer image with snap. mainnet only.
|
||||||
executor:
|
executor:
|
||||||
@ -886,20 +763,6 @@ workflows:
|
|||||||
tags:
|
tags:
|
||||||
only:
|
only:
|
||||||
- /^v\d+\.\d+\.\d+(-rc\d+)?$/
|
- /^v\d+\.\d+\.\d+(-rc\d+)?$/
|
||||||
- build-and-push-image:
|
|
||||||
name: "Publish ECR (lotus-all-in-one)"
|
|
||||||
dockerfile: Dockerfile.lotus
|
|
||||||
path: .
|
|
||||||
repo: lotus-dev
|
|
||||||
tag: '${CIRCLE_SHA1:0:8}'
|
|
||||||
target: lotus-all-in-one
|
|
||||||
- build-and-push-image:
|
|
||||||
name: "Publish ECR (lotus-test)"
|
|
||||||
dockerfile: Dockerfile.lotus
|
|
||||||
path: .
|
|
||||||
repo: lotus-test
|
|
||||||
tag: '${CIRCLE_SHA1:0:8}'
|
|
||||||
target: lotus-test
|
|
||||||
- publish-snapcraft:
|
- publish-snapcraft:
|
||||||
name: "Publish Snapcraft (lotus-filecoin / candidate)"
|
name: "Publish Snapcraft (lotus-filecoin / candidate)"
|
||||||
channel: stable
|
channel: stable
|
||||||
|
Loading…
Reference in New Issue
Block a user