name: Login Quality on: workflow_call: inputs: ignore-run-cache: description: "Ignore run caches" type: boolean required: true node_version: required: true type: string secrets: DEPOT_TOKEN: required: true jobs: quality: name: Ensure Quality runs-on: depot-ubuntu-22.04-8 timeout-minutes: 30 permissions: actions: write env: CACHE_DIR: /tmp/login-run-caches steps: - uses: actions/checkout@v4 - uses: depot/setup-action@v1 - name: Restore Run Caches uses: actions/cache/restore@v4 id: run-caches-restore with: path: ${{ env.CACHE_DIR }} key: ${{ runner.os }}-login-run-caches-${{github.ref_name}}-${{ github.sha }}-${{github.run_attempt}} restore-keys: | ${{ runner.os }}-login-run-caches-${{github.ref_name}}-${{ github.sha }}- ${{ runner.os }}-login-run-caches-${{github.ref_name}}- ${{ runner.os }}-login-run-caches- - uses: actions/download-artifact@v4 with: path: .artifacts name: zitadel-linux-amd64 - name: Unpack executable run: | tar -xvf .artifacts/zitadel-linux-amd64.tar.gz mv zitadel-linux-amd64/zitadel ./zitadel - uses: pnpm/action-setup@v4 - uses: actions/setup-node@v4 with: node-version: ${{ inputs.node_version }} cache: "pnpm" cache-dependency-path: pnpm-lock.yaml - name: Install dependencies run: pnpm install - name: Run login quality checks with Turbo run: pnpm turbo test:unit --filter=@zitadel/login env: DEPOT_TOKEN: ${{ secrets.DEPOT_TOKEN }} LOGIN_BAKE_CLI: depot bake DEPOT_PROJECT_ID: w47wkxzdtw IGNORE_RUN_CACHE: ${{ github.event.inputs.ignore-run-cache }} NODE_VERSION: ${{ inputs.node_version }} - name: Save Run Caches uses: actions/cache/save@v4 with: path: ${{ env.CACHE_DIR }} key: ${{ steps.run-caches-restore.outputs.cache-primary-key }} if: always()