name: Build Container run-name: Build Container on: push: jobs: container: name: Build Container runs-on: ubuntu-latest container: docker steps: - name: Build Container run: | git clone -b "${{github.ref_name}}" "$(echo ${{github.server_url}}/${{github.repository}}.git | sed s%://%://${{github.token}}@% )" . REGISTRY="$(echo ${{github.server_url}} | sed s%http://%% | sed s%https://%% )" VERSION="$(cat Dockerfile | grep "ARG CADDY_VERSION" | grep -Eo '=.+' | grep -Eo '[[:alnum:]\.\/\-]+')" docker build -t $REGISTRY/${{github.repository}}:${{ github.ref_name}} . docker login -u ${{github.repository_owner}} -p ${{secrets.DEPLOY_TOKEN}} $REGISTRY docker push $REGISTRY/${{github.repository}}:${{ github.ref_name}} if [ '${{github.ref_name}}' == 'master' ]; then docker tag $REGISTRY/${{github.repository}}:$VERSION $REGISTRY/${{github.repository}}:${{github.ref_name}} docker push $REGISTRY/${{github.repository}}:$VERSION docker tag $REGISTRY/${{github.repository}}:latest $REGISTRY/${{github.repository}}:${{github.ref_name}} && \ docker push $REGISTRY/${{github.repository}}:latest fi tag: name: Git Tag runs-on: ubuntu-latest container: alpine/git steps: - name: Git Tag run: | git clone -b "${{github.ref_name}}" "$(echo ${{github.server_url}}/${{github.repository}}.git | sed s%://%://${{github.token}}@% )" . VERSION="$(cat Dockerfile | grep "ARG CADDY_VERSION" | grep -Eo '=.+' | grep -Eo '[[:alnum:]\.\/\-]+')" git tag -f $VERSION ${{github.sha}} git push -f origin $VERSION