Skip to content

Commit 1e2968b

Browse files
authored
Merge pull request #134 from OneSignal/fadi-george-patch-1
chore: add CodeQL
2 parents 8fcd9c4 + bf7513d commit 1e2968b

File tree

2 files changed

+81
-1
lines changed

2 files changed

+81
-1
lines changed

.github/workflows/codeql.yml

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
name: "CodeQL"
2+
3+
concurrency:
4+
group: ${{ github.workflow }}-${{ github.ref }}
5+
cancel-in-progress: true
6+
7+
on:
8+
push:
9+
branches: ["main"]
10+
pull_request:
11+
branches: ["main"]
12+
schedule:
13+
- cron: "36 1 * * 0"
14+
15+
jobs:
16+
analyze:
17+
name: Analyze (${{ matrix.language }})
18+
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
19+
permissions:
20+
security-events: write
21+
packages: read
22+
23+
strategy:
24+
fail-fast: false
25+
matrix:
26+
include:
27+
- language: actions
28+
build-mode: none
29+
- language: swift
30+
build-mode: manual
31+
# Only include Swift analysis on scheduled runs
32+
run-swift: ${{ github.event_name == 'schedule' }}
33+
steps:
34+
- name: Checkout repository
35+
uses: actions/checkout@v6
36+
37+
- name: Cache Swift Package Manager binaries
38+
if: matrix.language == 'swift' && matrix.run-swift == true
39+
uses: actions/cache@v5
40+
with:
41+
path: |
42+
~/.swiftpm
43+
~/Library/Caches/org.swift.swiftpm
44+
~/Library/Developer/Xcode/DerivedData
45+
.build
46+
key: ${{ runner.os }}-spm-binaries-${{ hashFiles('Package.swift') }}
47+
restore-keys: |
48+
${{ runner.os }}-spm-binaries-
49+
50+
- name: Create missing wrapper directory
51+
if: matrix.language == 'swift' && matrix.run-swift == true
52+
run: |
53+
if [ ! -d "OneSignalLiveActivitiesWrapper" ]; then
54+
mkdir -p OneSignalLiveActivitiesWrapper/include
55+
echo "" > OneSignalLiveActivitiesWrapper/dummy.m
56+
echo "" > OneSignalLiveActivitiesWrapper/include/dummy.h
57+
fi
58+
59+
- name: Initialize CodeQL
60+
if: matrix.language != 'swift' || matrix.run-swift == true
61+
uses: github/codeql-action/init@v4
62+
with:
63+
languages: ${{ matrix.language }}
64+
build-mode: ${{ matrix.build-mode }}
65+
66+
- name: Build Swift Package
67+
if: matrix.language == 'swift' && matrix.run-swift == true
68+
timeout-minutes: 20
69+
run: |
70+
test -d OneSignalLiveActivitiesWrapper && test -f OneSignalLiveActivitiesWrapper/dummy.m && test -f OneSignalLiveActivitiesWrapper/include/dummy.h || (echo "ERROR: Directory structure invalid!" && exit 1)
71+
swift build --arch arm64 --target OneSignalOutcomesWrapper
72+
73+
- name: Perform CodeQL Analysis
74+
if: matrix.language != 'swift' || matrix.run-swift == true
75+
uses: github/codeql-action/analyze@v4
76+
with:
77+
category: "/language:${{matrix.language}}"

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,7 @@
66
.swiftpm
77
.swiftpm/xcode/xcuserdata
88
xcuserdata
9-
.swiftpm/xcode/package.xcworkspace/xcuserdata
9+
.swiftpm/xcode/package.xcworkspace/xcuserdata
10+
.build
11+
dummy.m
12+
dummy.h

0 commit comments

Comments
 (0)