Skip to content

Merge branch 'main' of github.com:sctg-development/sctgdesk-api-server #132

Merge branch 'main' of github.com:sctg-development/sctgdesk-api-server

Merge branch 'main' of github.com:sctg-development/sctgdesk-api-server #132

Workflow file for this run

name: Build and Deploy
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
workflow_call:
permissions:
contents: write
pages: write
id-token: write
packages: write
attestations: write
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
# - target: x86_64-apple-darwin
# os: macos-latest
# - target: aarch64-apple-darwin
# os: macos-latest
- target: x86_64-unknown-linux-gnu
os: ubuntu-latest
# - target: aarch64-unknown-linux-gnu
# os: ubuntu-latest
steps:
- name: Export GitHub Actions cache environment variables
uses: actions/github-script@v7
with:
script: |
core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || '');
core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- uses: actions/checkout@v2
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y gcc-aarch64-linux-gnu
if: matrix.target == 'aarch64-unknown-linux-gnu'
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
target: ${{ matrix.target }}
override: true
- name: Cache cargo registry
uses: actions/cache@v4
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}
- name: Cache cargo index
uses: actions/cache@v4
with:
path: ~/.cargo/git
key: ${{ runner.os }}-cargo-git-${{ hashFiles('**/Cargo.lock') }}
- name: Cache cargo build
uses: actions/cache@v4
with:
path: target
key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }}
- name: Build
uses: actions-rs/cargo@v1
with:
command: build
args: --release --target ${{ matrix.target }}
- name: Extract openapi3.json
run: |
mkdir -p docs
target/${{ matrix.target }}/release/sctgdesk-api-server &
sleep 5
curl http://127.0.0.1:21114/openapi.json > docs/openapi3.json
kill $!
- name: Create Rapidoc index.html
run: |
mkdir -p docs
cat <<EOF > docs/index.html
<!DOCTYPE html>
<!-- Important: must specify -->
<html>
<head>
<meta charset="utf-8" />
<!-- Important: rapi-doc uses utf8 charecters -->
<script
type="module"
src="https://unpkg.com/rapidoc/dist/rapidoc-min.js"
></script>
<script src="openapisnippet.min.js"></script>
<script>
window.addEventListener('DOMContentLoaded', (event) => {
const rapidocEl = document.getElementById('rapidoc');
const spec_url = "data:application/json;base64,$(base64 -w 0 docs/openapi3.json)";
const targets = ['c','javascript_fetch','go','php'];
fetch(spec_url)
.then((res) => res.json())
.then((data) => {
if (data['host'] === undefined) {
data['host'] = window.location.host;
}
if (data['basePath'] === undefined) {
data['basePath'] = '/';
}
for (let path in data.paths) {
for (let method in data.paths[path]) {
const snippets = OpenAPISnippets.getEndpointSnippets(data,path,method,targets);
const pathItem = data.paths[path][method];
const code_samples = [];
for (let snippet of snippets.snippets) {
code_samples.push({
lang: snippet.id,
label: snippet.title,
source: snippet.content
});
}
pathItem['x-code-samples'] = code_samples;
}
}
rapidocEl.loadSpec(data);
});
});
</script>
</head>
<body>
<rapi-doc
id="rapidoc"
allow-spec-file-download="true"
spec-url=""
render-style="read"
>
<img slot="logo" src="data:image/png;base64,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" alt="logo" style="max-width: 150px; max-height: 50px">
<slot name="footer">
<p slot="footer" style="margin:0; padding:16px 36px; background-color:orangered; color:#fff; text-align:center;">
© 2024 SCTG. All rights reserved.
</p>
</slot>
</rapi-doc>
</body>
</html>
EOF
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: ${{ matrix.target }}
path: target/${{ matrix.target }}/release/
- name: Publish CI binary (${{ matrix.target }})
continue-on-error: true
run: |
zip -r /tmp/${{ matrix.os }}_${{ matrix.target }}_${{ github.event.release.tag_name }}.zip target/${{ matrix.target }}/release/sctgdesk-api-server
- name: Upload Release Assets binaries for ${{ matrix.os }} ${{ matrix.target }}
uses: softprops/action-gh-release@v2
continue-on-error: true
with:
draft: true
tag_name: nightly
files: |
/tmp/${{ matrix.os }}_${{ matrix.target }}_${{ github.event.release.tag_name }}.zip
docs/openapi3.json
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload Release Assets binaries for Ubuntu amd64
uses: softprops/action-gh-release@v2
continue-on-error: true
with:
files: |
docs/openapi3.json
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Commit and push to GitHub
continue-on-error: true
run: |
git config --global user.name 'github-actions'
git config --global user.email 'github-actions@github.com'
git add -v -f docs/openapi3.json docs/index.html docs/openapisnippet.min.js
git commit -m "Update GitHub Pages" docs/*
git push origin HEAD
- name: Upload pages artifact
uses: actions/upload-pages-artifact@v3
with:
# Upload docs directory
path: 'docs'
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Setup Pages
uses: actions/configure-pages@v5
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4