diff --git a/.github/workflows/__autobuild-direct-tracing-with-working-dir.yml b/.github/workflows/__autobuild-direct-tracing-with-working-dir.yml new file mode 100644 index 0000000000..5d2ba7c2de --- /dev/null +++ b/.github/workflows/__autobuild-direct-tracing-with-working-dir.yml @@ -0,0 +1,92 @@ +# Warning: This file is generated automatically, and should not be modified. +# Instead, please modify the template in the pr-checks directory and run: +# (cd pr-checks; pip install ruamel.yaml@0.17.31 && python3 sync.py) +# to regenerate this file. + +name: PR Check - Autobuild direct tracing (custom working directory) +env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GO111MODULE: auto + CODEQL_EXTRACTOR_JAVA_AGENT_DISABLE_KOTLIN: 'true' +on: + push: + branches: + - main + - releases/v* + pull_request: + types: + - opened + - synchronize + - reopened + - ready_for_review + schedule: + - cron: '0 5 * * *' + workflow_dispatch: {} +jobs: + autobuild-direct-tracing-with-working-dir: + strategy: + fail-fast: false + matrix: + include: + - os: ubuntu-latest + version: linked + - os: windows-latest + version: linked + - os: ubuntu-latest + version: nightly-latest + - os: windows-latest + version: nightly-latest + name: Autobuild direct tracing (custom working directory) + permissions: + contents: read + security-events: write + timeout-minutes: 45 + runs-on: ${{ matrix.os }} + steps: + - name: Setup Python on MacOS + uses: actions/setup-python@v5 + if: >- + runner.os == 'macOS' && ( + + matrix.version == 'stable-20230403' || + + matrix.version == 'stable-v2.13.5' || + + matrix.version == 'stable-v2.14.6') + with: + python-version: '3.11' + - name: Check out repository + uses: actions/checkout@v4 + - name: Prepare test + id: prepare-test + uses: ./.github/actions/prepare-test + with: + version: ${{ matrix.version }} + use-all-platform-bundle: 'false' + - name: Test setup + shell: bash + run: | + # Make sure that Gradle build succeeds in autobuild-dir ... + cp -a ../action/tests/java-repo autobuild-dir + # ... and fails if attempted in the current directory + echo > build.gradle + - uses: ./../action/init + with: + build-mode: autobuild + languages: java + tools: ${{ steps.prepare-test.outputs.tools-url }} + - name: Check that indirect tracing is disabled + shell: bash + run: | + if [[ ! -z "${CODEQL_RUNNER}" ]]; then + echo "Expected indirect tracing to be disabled, but the" \ + "CODEQL_RUNNER environment variable is set." + exit 1 + fi + - uses: ./../action/autobuild + with: + working-directory: autobuild-dir + - uses: ./../action/analyze + env: + CODEQL_ACTION_AUTOBUILD_BUILD_MODE_DIRECT_TRACING: true + CODEQL_ACTION_TEST_MODE: true diff --git a/pr-checks/checks/autobuild-direct-tracing-with-working-dir.yml b/pr-checks/checks/autobuild-direct-tracing-with-working-dir.yml new file mode 100644 index 0000000000..e6ba989176 --- /dev/null +++ b/pr-checks/checks/autobuild-direct-tracing-with-working-dir.yml @@ -0,0 +1,34 @@ +name: "Autobuild direct tracing (custom working directory)" +description: > + An end-to-end integration test of a Java repository built using 'build-mode: autobuild', + with direct tracing enabled and a custom working directory specified as the input to the + autobuild Action. +operatingSystems: ["ubuntu", "windows"] +versions: ["linked", "nightly-latest"] +env: + CODEQL_ACTION_AUTOBUILD_BUILD_MODE_DIRECT_TRACING: true +steps: + - name: Test setup + shell: bash + run: | + # Make sure that Gradle build succeeds in autobuild-dir ... + cp -a ../action/tests/java-repo autobuild-dir + # ... and fails if attempted in the current directory + echo > build.gradle + - uses: ./../action/init + with: + build-mode: autobuild + languages: java + tools: ${{ steps.prepare-test.outputs.tools-url }} + - name: Check that indirect tracing is disabled + shell: bash + run: | + if [[ ! -z "${CODEQL_RUNNER}" ]]; then + echo "Expected indirect tracing to be disabled, but the" \ + "CODEQL_RUNNER environment variable is set." + exit 1 + fi + - uses: ./../action/autobuild + with: + working-directory: autobuild-dir + - uses: ./../action/analyze