name: GitHub Bot CI/CD on: push: branches: - "release/*" paths: - "github-bot/**" workflow_dispatch: jobs: docker-push: runs-on: ubuntu-latest defaults: run: working-directory: ./github-bot steps: - name: Checkout uses: actions/checkout@v2 - name: Docker Hub login uses: docker/login-action@v1 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_TOKEN }} - name: Version tag run: 'echo "VERSION_TAG=$(cat package.json | grep version | head -1 | awk -F: ''{ print $2 }'' | sed ''s/[", ]//g'')" >> $GITHUB_ENV' - name: Set up Docker Buildx uses: docker/setup-buildx-action@v1 - name: Build and push id: docker_build uses: docker/build-push-action@v2 with: context: ./github-bot file: ./github-bot/Dockerfile push: true tags: ${{ secrets.DOCKER_USERNAME }}/tachi-gh-bot:stable,${{ secrets.DOCKER_USERNAME }}/tachi-bot:${{ env.VERSION_TAG }}, - name: Image digest run: echo ${{ steps.docker_build.outputs.digest }} deploy: runs-on: ubuntu-latest defaults: run: working-directory: ./github-bot needs: [docker-push] steps: - name: Deploy uses: appleboy/ssh-action@1a8b3784eaa665f677fa114edd5683bb6a6bfaa8 with: host: ${{ secrets.TACHI_HOST }} username: tachi key: ${{ secrets.TACHI_KEY }} script: tachi-github-bot-deploy