Skip to content

Commit d74e43c

Browse files
Add workflows & documentation build (#18)
This adds some workflows. - Tests - Copyright checks - Documentation publishing & cleanup
1 parent ef27e88 commit d74e43c

File tree

6 files changed

+156
-0
lines changed

6 files changed

+156
-0
lines changed

.github/workflows/copyright.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# *******************************************************************************
2+
# Copyright (c) 2025 Contributors to the Eclipse Foundation
3+
#
4+
# See the NOTICE file(s) distributed with this work for additional
5+
# information regarding copyright ownership.
6+
#
7+
# This program and the accompanying materials are made available under the
8+
# terms of the Apache License Version 2.0 which is available at
9+
# https://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# SPDX-License-Identifier: Apache-2.0
12+
# *******************************************************************************
13+
14+
name: Copyright checks
15+
on:
16+
pull_request:
17+
types: [opened, reopened, synchronize]
18+
merge_group:
19+
types: [checks_requested]
20+
jobs:
21+
copyright-check:
22+
uses: eclipse-score/cicd-workflows/.github/workflows/copyright.yml@main
23+
with:
24+
bazel-target: "run //:copyright.check"

.github/workflows/docs-cleanup.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# *******************************************************************************
2+
# Copyright (c) 2025 Contributors to the Eclipse Foundation
3+
#
4+
# See the NOTICE file(s) distributed with this work for additional
5+
# information regarding copyright ownership.
6+
#
7+
# This program and the accompanying materials are made available under the
8+
# terms of the Apache License Version 2.0 which is available at
9+
# https://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# SPDX-License-Identifier: Apache-2.0
12+
# *******************************************************************************
13+
14+
name: Documentation Cleanup
15+
16+
permissions:
17+
contents: write
18+
pages: write
19+
id-token: write
20+
21+
on:
22+
schedule:
23+
- cron: '0 0 * * *' # Runs every day at midnight UTC
24+
25+
jobs:
26+
docs-cleanup:
27+
uses: eclipse-score/cicd-workflows/.github/workflows/docs-cleanup.yml@main
28+
secrets:
29+
token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/docs.yml

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# *******************************************************************************
2+
# Copyright (c) 2025 Contributors to the Eclipse Foundation
3+
#
4+
# See the NOTICE file(s) distributed with this work for additional
5+
# information regarding copyright ownership.
6+
#
7+
# This program and the accompanying materials are made available under the
8+
# terms of the Apache License Version 2.0 which is available at
9+
# https://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# SPDX-License-Identifier: Apache-2.0
12+
# *******************************************************************************
13+
14+
name: Documentation
15+
16+
permissions:
17+
contents: write
18+
pages: write
19+
pull-requests: write
20+
id-token: write
21+
22+
on:
23+
pull_request_target:
24+
types: [opened, reopened, synchronize] # Allows forks to trigger the docs build
25+
push:
26+
branches:
27+
- main
28+
merge_group:
29+
types: [checks_requested]
30+
31+
jobs:
32+
build-docs:
33+
uses: eclipse-score/cicd-workflows/.github/workflows/docs.yml@main
34+
permissions:
35+
contents: write
36+
pages: write
37+
pull-requests: write
38+
id-token: write
39+
40+
with:
41+
bazel-target: "//process:github_pages__latest"
42+
retention-days: 3

.github/workflows/tests.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# *******************************************************************************
2+
# Copyright (c) 2025 Contributors to the Eclipse Foundation
3+
#
4+
# See the NOTICE file(s) distributed with this work for additional
5+
# information regarding copyright ownership.
6+
#
7+
# This program and the accompanying materials are made available under the
8+
# terms of the Apache License Version 2.0 which is available at
9+
# https://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# SPDX-License-Identifier: Apache-2.0
12+
# *******************************************************************************
13+
name: Bazel Tests
14+
15+
on:
16+
pull_request:
17+
types: [opened, reopened, synchronize]
18+
merge_group:
19+
types: [checks_requested]
20+
21+
jobs:
22+
setup-and-run-tests:
23+
runs-on: ubuntu-latest
24+
steps:
25+
- name: Checkout repository
26+
uses: actions/checkout@v4.2.2
27+
28+
- name: Setup Bazel with shared caching
29+
uses: bazel-contrib/setup-bazel@0.14.0
30+
with:
31+
disk-cache: true
32+
repository-cache: true
33+
bazelisk-cache: true
34+
35+
- name: Run Tests via Bazel
36+
run: |
37+
echo "Running: bazel test //..."
38+
bazel test //...

BUILD

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
load("@score_cr_checker//:cr_checker.bzl", "copyright_checker")
2+
13
# *******************************************************************************
24
# Copyright (c) 2025 Contributors to the Eclipse Foundation
35
#
@@ -12,7 +14,21 @@
1214
# *******************************************************************************
1315
load("@score_format_checker//:macros.bzl", "use_format_targets")
1416

17+
package(default_visibility = ["//visibility:public"])
18+
1519
# Enables formatting targets
1620
#'bazel test //:format.check'
1721
#'bazel run //:format.fix'
1822
use_format_targets()
23+
24+
copyright_checker(
25+
name = "copyright",
26+
srcs = [
27+
"process",
28+
"//:BUILD",
29+
"//:MODULE.bazel",
30+
],
31+
config = "@score_cr_checker//resources:config",
32+
template = "@score_cr_checker//resources:templates",
33+
visibility = ["//visibility:public"],
34+
)

README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,3 +55,10 @@ bazel test //:format.test
5555
bazel run //:format.fix
5656
```
5757

58+
#### Find & fix missing copyright
59+
60+
```bash
61+
bazel test //:copyright.test
62+
bazel run //:copyright.fix
63+
```
64+

0 commit comments

Comments
 (0)