name: push on: push: branches: - main - develop tags: - v* jobs: image-build-and-push-query-service: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 - name: Set up QEMU uses: docker/setup-qemu-action@v1 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v1 with: version: latest - name: Login to DockerHub uses: docker/login-action@v1 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - uses: benjlevesque/short-sha@v1.2 id: short-sha - name: Get branch name id: branch-name uses: tj-actions/branch-names@v5.1 - name: Set docker tag environment run: | if [ '${{ steps.branch-name.outputs.is_tag }}' == 'true' ]; then tag="${{ steps.branch-name.outputs.tag }}" tag="${tag:1}" echo "DOCKER_TAG=$tag" >> $GITHUB_ENV elif [ '${{ steps.branch-name.outputs.current_branch }}' == 'main' ]; then echo "DOCKER_TAG=latest" >> $GITHUB_ENV else echo "DOCKER_TAG=${{ steps.branch-name.outputs.current_branch }}" >> $GITHUB_ENV fi - name: Build and push docker image run: make build-push-query-service image-build-and-push-frontend: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 - name: Install dependencies working-directory: frontend run: yarn install - name: Run Prettier working-directory: frontend run: npm run prettify continue-on-error: true - name: Run ESLint working-directory: frontend run: npm run lint continue-on-error: true - name: Set up Docker Buildx uses: docker/setup-buildx-action@v1 with: version: latest - name: Login to DockerHub uses: docker/login-action@v1 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - uses: benjlevesque/short-sha@v1.2 id: short-sha - name: Get branch name id: branch-name uses: tj-actions/branch-names@v5.1 - name: Set docker tag environment run: | if [ '${{ steps.branch-name.outputs.is_tag }}' == 'true' ]; then tag="${{ steps.branch-name.outputs.tag }}" tag="${tag:1}" echo "DOCKER_TAG=$tag" >> $GITHUB_ENV elif [ '${{ steps.branch-name.outputs.current_branch }}' == 'main' ]; then echo "DOCKER_TAG=latest" >> $GITHUB_ENV else echo "DOCKER_TAG=${{ steps.branch-name.outputs.current_branch }}" >> $GITHUB_ENV fi - name: Build and push docker image run: make build-push-frontend