From 897ddf266207a475b808fdd6fd34787017ab70d6 Mon Sep 17 00:00:00 2001 From: Henry Mercer Date: Thu, 14 Sep 2023 15:32:09 +0100 Subject: [PATCH] Add PR check --- .github/workflows/__language-aliases.yml | 69 ++++++++++++++++++++++++ pr-checks/checks/language-aliases.yml | 20 +++++++ 2 files changed, 89 insertions(+) create mode 100644 .github/workflows/__language-aliases.yml create mode 100644 pr-checks/checks/language-aliases.yml diff --git a/.github/workflows/__language-aliases.yml b/.github/workflows/__language-aliases.yml new file mode 100644 index 000000000..442669705 --- /dev/null +++ b/.github/workflows/__language-aliases.yml @@ -0,0 +1,69 @@ +# 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 - Language aliases +env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GO111MODULE: auto + CODEQL_EXTRACTOR_JAVA_AGENT_DISABLE_KOTLIN: 'true' +on: + push: + branches: + - main + - releases/v2 + pull_request: + types: + - opened + - synchronize + - reopened + - ready_for_review + workflow_dispatch: {} +jobs: + language-aliases: + strategy: + matrix: + include: + - os: ubuntu-latest + version: latest + name: Language aliases + permissions: + contents: read + security-events: write + timeout-minutes: 45 + runs-on: ${{ matrix.os }} + steps: + - 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: Set environment variable for Swift enablement + if: >- + runner.os != 'Windows' && ( + matrix.version == '20220908' || + matrix.version == '20221211' + ) + shell: bash + run: echo "CODEQL_ENABLE_EXPERIMENTAL_FEATURES_SWIFT=true" >> $GITHUB_ENV + - uses: ./../action/init + with: + languages: C#,java-kotlin,swift,typescript + tools: ${{ steps.prepare-test.outputs.tools-url }} + + - name: Check languages + run: | + expected_languages="csharp,java,swift,javascript" + actual_languages=$(jq -r '.languages | join(",")' "$RUNNER_TEMP"/config) + + if [ "$expected_languages" != "$actual_languages" ]; then + echo "Resolved languages did not match expected list. " \ + "Expected languages: $expected_languages. Actual languages: $actual_languages." + exit 1 + fi + env: + CODEQL_ACTION_TEST_MODE: true diff --git a/pr-checks/checks/language-aliases.yml b/pr-checks/checks/language-aliases.yml new file mode 100644 index 000000000..b503ace55 --- /dev/null +++ b/pr-checks/checks/language-aliases.yml @@ -0,0 +1,20 @@ +name: "Language aliases" +description: "Tests that ML-powered queries are run with the security-extended suite and that they produce alerts on a test DB" +versions: ["latest"] +operatingSystems: ["ubuntu"] +steps: + - uses: ./../action/init + with: + languages: C#,java-kotlin,swift,typescript + tools: ${{ steps.prepare-test.outputs.tools-url }} + + - name: "Check languages" + run: | + expected_languages="csharp,java,swift,javascript" + actual_languages=$(jq -r '.languages | join(",")' "$RUNNER_TEMP"/config) + + if [ "$expected_languages" != "$actual_languages" ]; then + echo "Resolved languages did not match expected list. " \ + "Expected languages: $expected_languages. Actual languages: $actual_languages." + exit 1 + fi