name: "frontend:test:build test docker" on: push jobs: # only (but most important) job from this workflow required for pull requests # check results serve as run conditions for all other jobs here files-changed: name: Detect File Changes - frontend-test-build-docker runs-on: ubuntu-latest outputs: changes: ${{ steps.changes.outputs.frontend-test-build-docker }} steps: - uses: actions/checkout@9a9194f87191a7e9055e3e9b95b8cfb13023bb08 # v4.1.7 - name: Check for frontend file changes uses: dorny/paths-filter@dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2 id: changes with: token: ${{ github.token }} filters: .github/file-filters.yml list-files: shell build-production: if: needs.files-changed.outputs.changes == 'true' name: Build Docker Production - Frontend needs: files-changed runs-on: ubuntu-latest env: WORKING_DIRECTORY: ./frontend steps: - name: Checkout code uses: actions/checkout@9a9194f87191a7e9055e3e9b95b8cfb13023bb08 # v4.1.7 - name: Frontend | Build Docker Production run: docker compose -f docker-compose.yml build working-directory: ${{env.WORKING_DIRECTORY}} build-development: if: needs.files-changed.outputs.changes == 'true' name: Build Docker Development - Frontend needs: files-changed runs-on: ubuntu-latest env: WORKING_DIRECTORY: ./frontend steps: - name: Checkout code uses: actions/checkout@9a9194f87191a7e9055e3e9b95b8cfb13023bb08 # v4.1.7 - name: Frontend | Build Docker Development run: docker compose build working-directory: ${{env.WORKING_DIRECTORY}}