diff --git a/.circleci/config.yml b/.circleci/config.yml index 9882e19..954267c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -44,6 +44,14 @@ executors: POSTGRES_DB: myUsr POSTGRES_PASSWORD: somePwd + executors: + dockerhub-publisher: + environment: + IMAGE_NAME: morganlmd/devops-tp-final-back-docker + IMAGE_NAME_TMP: app + docker: + - image: circleci/buildpack-deps:stretch + jobs: initial-build: executor: docker-python-executor @@ -72,6 +80,25 @@ jobs: # flask test - save_cache_cmd + dockerhub-publishing: + working_directory: /dockerapp + executor: dockerhub-publisher + steps: + - checkout + - setup_remote_docker + - run: + name: Building docker image + command: | + docker build --cache-from=app -t app . + - deploy: + name: publishing docker image to dockerhub + command: | + docker login -e $DOCKERHUB_EMAIL -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD + docker tag $IMAGE_NAME_TMP $IMAGE_NAME:$CIRCLE_BUILD_NUM + docker tag $IMAGE_NAME_TMP $IMAGE_NAME:latest + docker push $IMAGE_NAME:$CIRCLE_BUILD_NUM + docker push $IMAGE_NAME:latest + workflows: version: 2 build-test-back-and-db: @@ -80,3 +107,7 @@ workflows: - setup-and-test-db: requires: - initial-build + - docker-build: + requires: + - initial-build + - setup-and-test-db