name: Test dependency submission failures on: workflow_call: inputs: cache-key-prefix: type: string runner-os: type: string default: '["ubuntu-latest"]' skip-dist: type: boolean default: false env: SKIP_DIST: ${{ inputs.skip-dist }} GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: dependency-submission-failures-${{ inputs.cache-key-prefix }} GITHUB_DEPENDENCY_GRAPH_REF: 'refs/tags/v0.0.1' # Use a different ref to avoid updating the real dependency graph for the repository jobs: failing-build: runs-on: ubuntu-latest steps: - name: Checkout sources uses: actions/checkout@v4 - name: Initialize integ-test uses: ./.github/actions/init-integ-test - name: Submit with failing build id: gradle-build uses: ./dependency-submission with: build-root-directory: .github/workflow-samples/groovy-dsl additional-arguments: fail continue-on-error: true - name: Check step failed if: steps.gradle-build.outcome != 'failure' run: | echo "Expected dependency submission step to fail" exit 1 - name: Check no dependency graph is generated shell: bash run: | if [ ! -z "$(ls -A dependency-graph-reports)" ]; then echo "Expected no dependency graph files to be generated" ls -l dependency-graph-reports exit 1 fi unsupported-gradle-version: runs-on: ubuntu-latest steps: - name: Checkout sources uses: actions/checkout@v4 - name: Initialize integ-test uses: ./.github/actions/init-integ-test - name: Submit with unsupported Gradle version id: gradle-build uses: ./dependency-submission with: gradle-version: 7.0.1 build-root-directory: .github/workflow-samples/groovy-dsl continue-on-error: true - name: Check step failed if: steps.gradle-build.outcome != 'failure' run: | echo "Expected dependency submission step to fail" exit 1 - name: Check no dependency graph is generated shell: bash run: | if [ ! -z "$(ls -A dependency-graph-reports)" ]; then echo "Expected no dependency graph files to be generated" ls -l dependency-graph-reports exit 1 fi insufficient-permissions: runs-on: ubuntu-latest permissions: contents: read steps: - name: Checkout sources uses: actions/checkout@v4 - name: Initialize integ-test uses: ./.github/actions/init-integ-test - name: Submit with insufficient permissions id: gradle-build uses: ./dependency-submission with: build-root-directory: .github/workflow-samples/groovy-dsl continue-on-error: true - name: Check step failed if: steps.gradle-build.outcome != 'failure' run: | echo "Expected dependency submission step to fail" exit 1