name: Build and Push Docker Image on: push: branches: - dev jobs: build: name: Build and Push Docker Image runs-on: ubuntu-latest steps: # Checkout the code from the repository - name: Checkout repository uses: actions/checkout@v3 # Download the latest release binary from GitHub releases - name: Download latest release binary run: | latest_release=$(curl --silent "https://api.github.com/repos/donetick/donetick/releases/latest" | jq -r '.tag_name') curl -L "https://github.com/donetick/donetick/releases/download/${latest_release}/donetick_Linux_x86_64.tar.gz" -o donetick_Linux_x86_64.tar.gz tar -xzf donetick_Linux_x86_64.tar.gz chmod +x ./donetick # Log in to Docker Hub - name: Log in to Docker Hub uses: docker/login-action@v2 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} # # Log in to GitHub Container Registry # - name: Login to GitHub Container Registry # uses: docker/login-action@v3.3.0 # with: # registry: ghcr.io # username: ${{ github.repository_owner }} # password: ${{ secrets.GITHUB_TOKEN }} # Build and tag Docker image - name: Build Docker image run: | docker build -t ${{ secrets.DOCKER_USERNAME }}/donetick:${{ github.sha }} . # Push Docker image - name: Push Docker image run: | docker push ${{ secrets.DOCKER_USERNAME }}/donetick:${{ github.sha }} docker push ${{ secrets.DOCKER_USERNAME }}/donetick:latest