Skip to content

Commit f231c0c

Browse files
GHA: license check and action pinning (#7)
1 parent a747afe commit f231c0c

4 files changed

Lines changed: 108 additions & 3 deletions

File tree

.github/workflows/builds.yml

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,29 @@ on:
77
branches: ["main"]
88
workflow_dispatch:
99

10+
permissions:
11+
contents: read
12+
1013
env:
1114
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
1215

1316
jobs:
17+
license-check:
18+
name: License Check
19+
uses: ./.github/workflows/license_check.yml
20+
permissions:
21+
contents: read
22+
23+
pin-check:
24+
name: Pin Check
25+
uses: ./.github/workflows/pin_check.yml
26+
permissions:
27+
contents: read
28+
1429
build:
30+
needs:
31+
- license-check
32+
- pin-check
1533
strategy:
1634
fail-fast: false
1735
matrix:
@@ -25,10 +43,12 @@ jobs:
2543

2644
name: Build (${{ matrix.name }})
2745
runs-on: ${{ matrix.os }}
46+
permissions:
47+
contents: read
2848

2949
steps:
3050
- name: Checkout
31-
uses: actions/checkout@v4
51+
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
3252

3353
# ---------- deps ----------
3454
- name: Install deps (Ubuntu)
@@ -68,7 +88,7 @@ jobs:
6888
6989
- name: Setup MSVC (Windows)
7090
if: runner.os == 'Windows'
71-
uses: ilammy/msvc-dev-cmd@v1
91+
uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
7292
with:
7393
arch: x64
7494

@@ -159,7 +179,7 @@ jobs:
159179
160180
# ---------- upload build output ----------
161181
- name: Upload binary
162-
uses: actions/upload-artifact@v4
182+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
163183
with:
164184
name: basic_room-${{ matrix.name }}
165185
path: |
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Copyright 2026 LiveKit, Inc.
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
name: License Check
16+
on:
17+
workflow_call: {}
18+
workflow_dispatch: {}
19+
20+
jobs:
21+
license-check:
22+
name: License Check
23+
runs-on: ubuntu-latest
24+
permissions:
25+
contents: read
26+
steps:
27+
- name: Checkout
28+
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
29+
- name: Check License Headers
30+
shell: bash
31+
run: |
32+
shopt -s globstar nullglob
33+
# ghcr.io/google/addlicense v1.2.0
34+
docker run --rm -v "${PWD}:/src" -w /src ghcr.io/google/addlicense@sha256:5a48f41ccc8cf3fdd04499649f02a9ee5877ab6f39fd1ac18fd1db5eb1062c5a \
35+
-check \
36+
-l apache \
37+
**/*.{cpp,h,hpp}

.github/workflows/pin_check.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Copyright 2026 LiveKit, Inc.
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
name: Pin Check
16+
on:
17+
workflow_call: {}
18+
workflow_dispatch:
19+
20+
jobs:
21+
pin-check:
22+
name: Pin Check
23+
runs-on: ubuntu-latest
24+
permissions:
25+
contents: read
26+
steps:
27+
- name: Checkout
28+
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
29+
- name: Pin Check
30+
uses: suzuki-shunsuke/pinact-action@cf51507d80d4d6522a07348e3d58790290eaf0b6 # v2.0.0
31+
with:
32+
skip_push: true

simple_data_stream/main.cpp

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,19 @@
1+
/*
2+
* Copyright 2026 LiveKit, Inc.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* http://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
117
#include <atomic>
218
#include <csignal>
319
#include <cstdlib>

0 commit comments

Comments
 (0)