Compare commits

...

8 Commits

Author SHA1 Message Date
Gara Dorta
a8c455bb2e
Merge 6e1698e8200a2ffdc41f59b9e7bb16caa7ad60c4 into 81efbd25e12963bc8be03d25c2612000d3e7859c 2026-06-02 23:33:37 +02:00
Bernhard B
81efbd25e1 use java 25 in check-docs.yml 2026-06-01 20:47:46 +02:00
Bernhard B
9e7fa344a8 fixed typo in check-docs.yml 2026-06-01 20:35:05 +02:00
Bernhard B
25eaf7a5eb fixed bug in check-docs.yml
* forgot to add 'sudo'
2026-06-01 20:29:24 +02:00
Bernhard B
60b19339c3 updated check-docs.yml
* build signal-cli json schemas inside the CI job
2026-06-01 20:25:00 +02:00
Bernhard B.
c88c3f18c2
Merge pull request #853 from Gara-Dorta/release-fix
feat: add receive schemas to check-docks worflow
2026-06-01 20:13:58 +02:00
Gara Dorta
e63536cb7a feat: add receive schemas to check-docks worflow 2026-05-23 20:51:47 +02:00
Gara Dorta
6e1698e820 feat: deploy pages with CI
Co-authored-by: Copilot <copilot@github.com>
2026-05-06 12:01:26 +01:00
4 changed files with 77 additions and 1 deletions

View File

@ -23,6 +23,21 @@ jobs:
working-directory: src
run: go run github.com/swaggo/swag/cmd/swag@v1.16.6 init --requiredByDefault
- name: Build json schemas
run: |
export JAVA_HOME="$JAVA_HOME_25_X64"
export PATH="$JAVA_HOME/bin:$PATH"
SIGNAL_CLI_VERSION="$(grep -m1 '^ARG SIGNAL_CLI_VERSION=' Dockerfile | cut -d= -f2)"
git clone --depth 1 --branch v${SIGNAL_CLI_VERSION} https://github.com/AsamK/signal-cli/ signal-cli
cd signal-cli
./gradlew jsonSchemas
cp -r build/generated/META-INF/schemas ${GITHUB_WORKSPACE}/src/docs/signal-cli-schemas
- name: Inject receive schemas
working-directory: src/docs
run: |
go run add_v1_receive_schemas.go signal-cli-schemas
- name: Fail if docs are out of date
run: |
git diff --exit-code -- src/docs/docs.go src/docs/swagger.json src/docs/swagger.yaml

37
.github/workflows/deploy-pages.yml vendored Normal file
View File

@ -0,0 +1,37 @@
name: Deploy API Docs to GitHub Pages
on:
release:
types:
- published
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: pages
cancel-in-progress: false
jobs:
build-and-deploy:
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup Pages
uses: actions/configure-pages@v6
- name: Build static documentation bundle
run: src/docs/build-static-bundle.sh site "${{ github.event.release.tag_name }}"
- name: Upload Pages artifact
uses: actions/upload-pages-artifact@v5
with:
path: site
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v5

24
src/docs/build-static-bundle.sh Executable file
View File

@ -0,0 +1,24 @@
#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
DOCS_DIR="$ROOT_DIR/src/docs"
INDEX_FILE="$DOCS_DIR/index.html"
OUT_DIR="${1:?output directory argument is required}"
DOCS_VERSION="${2:?docs version argument is required}"
NORMALIZED_DOCS_VERSION="${DOCS_VERSION#v}"
echo "Normalized docs version: $NORMALIZED_DOCS_VERSION"
rm -rf "$OUT_DIR"
mkdir -p "$OUT_DIR"
cp "$DOCS_DIR/swagger.json" "$OUT_DIR/swagger.json"
cp "$INDEX_FILE" "$OUT_DIR/index.html"
touch "$OUT_DIR/.nojekyll"
jq --arg version "$NORMALIZED_DOCS_VERSION" '.info.version = $version' "$OUT_DIR/swagger.json" > "$OUT_DIR/swagger.json.tmp"
mv "$OUT_DIR/swagger.json.tmp" "$OUT_DIR/swagger.json"
echo "Static bundle created at: $OUT_DIR"

View File

@ -11,7 +11,7 @@
window.onload = function () {
// Begin Swagger UI call region
const ui = SwaggerUIBundle({
url: "src/docs/swagger.json", //Location of Open API spec in the repo
url: "swagger.json",
dom_id: '#swagger-ui',
deepLinking: true,
presets: [