Skip to content

[swiftsrc2cpg] Call and type decl member/access rework #8991

[swiftsrc2cpg] Call and type decl member/access rework

[swiftsrc2cpg] Call and type decl member/access rework #8991

Workflow file for this run

name: pr
on: pull_request
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Set up JDK
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 21
cache: sbt
- uses: sbt/setup-sbt@v1
- name: Install php
if: matrix.os == 'macos-latest'
run: brew install php
- name: Set up Go
uses: actions/setup-go@v5
with:
cache: false
go-version: 1.18
- name: Set up Swift
uses: SwiftyLab/setup-swift@latest
with:
swift-version: "6.1"
- name: Delete `.rustup` directory
run: rm -rf /home/runner/.rustup # to save disk space
if: runner.os == 'Linux'
- name: Delete `.cargo` directory # to save disk space
run: rm -rf /home/runner/.cargo
if: runner.os == 'Linux'
- name: Run tests
run: sbt clean test
formatting:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Set up JDK
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 21
cache: sbt
- uses: sbt/setup-sbt@v1
- name: Check formatting
run: sbt scalafmtCheck Test/scalafmtCheck
- run: echo "Previous step failed because code is not formatted. Run 'sbt scalafmt Test/scalafmt'"
if: ${{ failure() }}
- name: Validate CITATION.cff
uses: dieghernan/cff-validator@v3
with:
install-r: true
linting:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Set up JDK
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 21
cache: sbt
- uses: sbt/setup-sbt@v1
- name: Check for usage of restricted imports
run: sbt "scalafix RestrictedImports"
- run: echo "Previous step failed because certain coding quality expectations were violated. Please check the logs."
if: ${{ failure() }}
test-scripts:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Set up JDK
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 21
cache: sbt
- uses: sbt/setup-sbt@v1
- name: Install coreutils
if: matrix.os == 'macos-latest'
run: brew install coreutils
- name: Install php
if: matrix.os == 'macos-latest'
run: brew install php
- name: Install Python dependencies for distribution test (Linux, MacOS)
if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'
run: |
python -m pip install requests pexpect
- name: Install Python dependencies for distribution test (Windows)
if: matrix.os == 'windows-latest'
run: |
python -m pip install requests wexpect
- name: Test distribution
run: |
sbt joerncli/stage querydb/createDistribution
python -u ./testDistro.py