-
Notifications
You must be signed in to change notification settings - Fork 4
59 lines (53 loc) · 2.41 KB
/
Copy pathadd-submodules.yml
File metadata and controls
59 lines (53 loc) · 2.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# Add new Boost Submodules from boostorg/boost to the per-library GitHub org.
#
# Trigger: repository_dispatch with event_type EVENT_ADD_SUBMODULES (add-submodules).
# Example: POST /repos/{owner}/{repo}/dispatches
# Body: {"event_type": "add-submodules", "client_payload": {"version": "boost-1.90.0"}}
#
# client_payload:
# version: (optional) Boost release ref (e.g. boost-1.90.0). Used for both library repos and .gitmodules
# auto-discovery. If omitted: library repos use develop, .gitmodules uses develop.
# submodules: (optional) List-like string of submodule names (e.g. [algorithm, system]). If set, .gitmodules is not fetched.
# lang_codes: (optional) Language code for Weblate (e.g. zh_Hans). Defaults to vars.LANG_CODES.
#
# Required secret: SYNC_TOKEN — PAT with repo and org create/push in MODULE_ORG.
# Repository variable SUBMODULES_ORG: GitHub org for library repos (e.g. CppDigest). If unset, MODULE_ORG is this repo's org.
# Optional: LANG_CODES.
name: Add submodules
on:
repository_dispatch:
# Must match EVENT_ADD_SUBMODULES in assets/env.sh
types: [add-submodules]
concurrency:
group: add-submodules-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
add-submodules:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
token: ${{ secrets.SYNC_TOKEN }}
persist-credentials: false
- name: Add submodules
shell: bash
env:
GITHUB_TOKEN: ${{ secrets.SYNC_TOKEN }}
LIBS_REF: ${{ github.event.client_payload.version || 'develop' }}
SUBMODULES: ${{ github.event.client_payload.submodules || '' }}
LANG_CODES: ${{ github.event.client_payload.lang_codes || vars.LANG_CODES }}
SUBMODULES_ORG: ${{ vars.SUBMODULES_ORG }}
run: |
set -euo pipefail
# shellcheck source=assets/env.sh
source "$GITHUB_WORKSPACE/.github/workflows/assets/env.sh"
# shellcheck source=assets/lib.sh
source "$GITHUB_WORKSPACE/.github/workflows/assets/lib.sh"
# shellcheck source=assets/add_submodules.sh
source "$GITHUB_WORKSPACE/.github/workflows/assets/add_submodules.sh"
# shellcheck source=assets/submodule_ops.sh
source "$GITHUB_WORKSPACE/.github/workflows/assets/submodule_ops.sh"
add_submodules_main