Move Unit tests to GHA for DJ82 #5412
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "CodeQL" | |
on: | |
merge_group: | |
pull_request: | |
branches: | |
- main | |
- '[0-9]+.[0-9]+' | |
jobs: | |
analyze: | |
container: | |
image: domjudge/gitlabci:24.04 | |
options: --user domjudge | |
name: Analyze | |
runs-on: ubuntu-latest | |
env: | |
COMPILED: "cpp" | |
USER: "domjudge" | |
permissions: | |
actions: read | |
contents: read | |
security-events: write | |
strategy: | |
fail-fast: false | |
matrix: | |
language: [ 'cpp', 'java', 'javascript', 'python' ] | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Initialize CodeQL | |
uses: github/codeql-action/init@v3 | |
with: | |
languages: ${{ matrix.language }} | |
- name: Install composer files | |
if: ${{ contains(env.COMPILED, matrix.language) }} | |
run: | | |
cd webapp | |
composer install --no-scripts | |
- name: Configure Makefile | |
if: ${{ contains(env.COMPILED, matrix.language) }} | |
run: | | |
DIR=$(pwd) | |
mkdir ./installdir | |
make configure | |
./configure --enable-doc-build=no --prefix=$DIR/installdir | |
- name: Compile domserver | |
if: ${{ contains(env.COMPILED, matrix.language) }} | |
run: | | |
make domserver | |
make install-domserver | |
- name: Compile the build scripts for languages | |
run: | | |
make build-scripts | |
- name: Compile judgehost | |
if: ${{ contains(env.COMPILED, matrix.language) }} | |
run: | | |
make judgehost | |
sudo make install-judgehost | |
- name: Remove upstream code | |
run: | | |
rm -rf webapp/public/js/monaco doc/manual/_static | |
- name: Chown everything to the current runner user | |
if: ${{ contains(env.COMPILED, matrix.language) }} | |
run: sudo chown -R ${USER} ./installdir | |
- name: Perform CodeQL Analysis | |
uses: github/codeql-action/analyze@v3 |