From dba6cceb4d6ffcfb19062d716e18a69d83b87a0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20F=2EP=2EP?= Date: Tue, 11 Jul 2023 18:36:42 -0300 Subject: [PATCH] feat: CD pipeline --- .github/workflows/delivery.yml | 55 ++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 .github/workflows/delivery.yml diff --git a/.github/workflows/delivery.yml b/.github/workflows/delivery.yml new file mode 100644 index 0000000..1a68d9e --- /dev/null +++ b/.github/workflows/delivery.yml @@ -0,0 +1,55 @@ +--- +name: Delivery + +on: + push: + branches: + - main + pull_request: + branches: + - main + +jobs: + publish: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Login to DockerHub + uses: docker/login-action@v2 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Publish the images that have changed. + run: | + FILES=$(git diff --name-only --diff-filter=ACMRT ${{ github.event.before }} ${GITHUB_SHA}) + readarray -t FILES_ARRAY <<< "$FILES" + IFS='/' + DOCKER_IMAGES=() + echo "${FILES_ARRAY}" + +# for FILENAME in "${FILES_ARRAY[@]}"; do +# if [[ "$FILENAME" != *"/"* ]]; then +# continue +# fi +# if [[ "$FILENAME" == "."* ]]; then +# continue +# fi +# +# read -a PATHS <<< "$FILENAME" +# if [[ ! (${#PATHS[@]} > 2) ]]; then +# continue +# fi +# +# DOCKER_IMAGE_NAME="${{ secrets.DOCKERHUB_USERNAME }}/${PATHS[0]}:${PATHS[1]}" +# if [[ " ${DOCKER_IMAGES[@]} " =~ " ${DOCKER_IMAGE_NAME} " ]]; then +# continue +# fi +# +# docker build -t "${DOCKER_IMAGE_NAME}" ${PATHS[0]}/${PATHS[1]}/ +# docker push "${DOCKER_IMAGE_NAME}" +# DOCKER_IMAGES+=($DOCKER_IMAGE_NAME) +# done