forked from GothenburgBitFactory/timewarrior
-
Notifications
You must be signed in to change notification settings - Fork 0
41 lines (36 loc) · 1.65 KB
/
update-docs.yml
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
name: Update docs on ti.net
on:
workflow_dispatch:
release:
types:
- published
jobs:
trigger:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Trigger remote workflow to update docs
run: |
repo_owner="GothenburgBitFactory"
repo_name="ti.net"
event_type="update-docs"
version="${{ github.event.release.tag_name }}"
# Collect .adoc documentation files
doc_filenames=$(find doc/man1 -name '*.adoc' -type f; find doc/man7 -name '*.adoc' -type f)
# Format doc_filenames with double quotes and commas
formatted_doc_filenames="[ $(echo ${doc_filenames} | sed 's/\S\+/\"&\",/g; s/,$//') ]"
base64_encoded_files=()
while IFS= read -r filename; do
base64_encoded_file=$(base64 "${filename}" | tr -d '\n')
base64_encoded_files+=("\"${base64_encoded_file}\"")
done <<< "${doc_filenames}"
# Format encoded_file_contents with quotes and commas
formatted_encoded_file_contents="[ $(IFS=,; echo "${base64_encoded_files[*]}") ]"
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer ${{ secrets.UPDATE_DOCS }}" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/${repo_owner}/${repo_name}/dispatches \
-d "{\"event_type\": \"$event_type\", \"client_payload\": {\"version\": \"${version}\", \"doc_filenames\": ${formatted_doc_filenames}, \"encoded_file_contents\": ${formatted_encoded_file_contents} }}"