name: CI on: push: branches: [main] pull_request: branches: [main] jobs: lint-and-build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: pnpm/action-setup@v4 with: version: latest - uses: actions/setup-node@v4 with: node-version: 20 cache: pnpm - run: pnpm install --frozen-lockfile - run: pnpm lint - run: pnpm build docker: needs: lint-and-build if: github.ref == 'refs/heads/main' && github.event_name == 'push' runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Docker login uses: docker/login-action@v3 with: registry: ${{ secrets.DOCKER_REGISTRY }} username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - name: Build & push uses: docker/build-push-action@v6 with: context: . push: true tags: | ${{ secrets.DOCKER_REGISTRY }}/kolaytercih:latest ${{ secrets.DOCKER_REGISTRY }}/kolaytercih:${{ github.sha }}