Compare commits
1 Commits
39064633ed
...
docgen-use
Author | SHA1 | Date | |
---|---|---|---|
6bb97f6f7d |
@@ -1,94 +0,0 @@
|
|||||||
name: Build and Push MkDocs Docker Image
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
- master
|
|
||||||
paths:
|
|
||||||
- 'Dockerfile'
|
|
||||||
- 'user/**'
|
|
||||||
- 'admin/**'
|
|
||||||
- '.gitea/workflows/**'
|
|
||||||
workflow_dispatch:
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build-and-push:
|
|
||||||
runs-on: cth-ubuntu-latest
|
|
||||||
|
|
||||||
env:
|
|
||||||
REGISTRY: ${{ vars.REGISTRY }}
|
|
||||||
IMAGE: ${{ vars.IMAGE }}
|
|
||||||
IMAGE_NAME: ${{ env.REGISTRY }}/${{ IMAGE }}:${{ github.sha }}
|
|
||||||
KUBE_CA: ${{ vars.KUBE_CA }}
|
|
||||||
KUBE_SERVER: ${{ vars.KUBE_SERVER }}
|
|
||||||
REGISTRY_USERNAME: ${{ vars.REGISTRY_USERNAME }}
|
|
||||||
NAMESPACE: ${{ vars.NAMESPACE }}
|
|
||||||
DEPLOYMENT_NAME: ${{ vars.DEPLOYMENT_NAME }}
|
|
||||||
CONTAINER: ${{ vars.CONTAINER }}
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout code
|
|
||||||
uses: https://github.com/actions/checkout@v4
|
|
||||||
|
|
||||||
- name: Set up Docker Buildx
|
|
||||||
uses: https://github.com/docker/setup-buildx-action@v3
|
|
||||||
|
|
||||||
- name: Log in to Docker registry
|
|
||||||
uses: https://github.com/docker/login-action@v3
|
|
||||||
with:
|
|
||||||
registry: ${{ env.REGISTRY }}
|
|
||||||
username: ${{ env.REGISTRY_USERNAME }}
|
|
||||||
password: ${{ secrets.REGISTRY_PASSWORD }}
|
|
||||||
|
|
||||||
- name: Build and push
|
|
||||||
id: build-push
|
|
||||||
uses: https://github.com/docker/build-push-action@v5
|
|
||||||
with:
|
|
||||||
context: .
|
|
||||||
file: documentation.Dockerfile
|
|
||||||
push: true
|
|
||||||
tags: '${{ env.IMAGE_NAME }}'
|
|
||||||
|
|
||||||
- name: Install kubectl
|
|
||||||
run: |
|
|
||||||
curl -LO "https://dl.k8s.io/release/v1.31.0/bin/linux/amd64/kubectl"
|
|
||||||
chmod +x ./kubectl
|
|
||||||
sudo mv ./kubectl /usr/local/bin/kubectl
|
|
||||||
|
|
||||||
- name: Set up kubeconfig
|
|
||||||
env:
|
|
||||||
KUBE_SERVER: ${{ env.KUBE_SERVER }} # e.g. https://<API_ENDPOINT>
|
|
||||||
KUBE_CA: ${{ env.KUBE_CA }} # base64 encoded, or fetched via kubectl config view
|
|
||||||
KUBE_TOKEN: ${{ secrets.KUBE_TOKEN }} # Token generated via 'kubectl create token'
|
|
||||||
run: |
|
|
||||||
mkdir -p ~/.kube
|
|
||||||
cat <<EOF > ~/.kube/config
|
|
||||||
apiVersion: v1
|
|
||||||
kind: Config
|
|
||||||
clusters:
|
|
||||||
- name: default-cluster
|
|
||||||
cluster:
|
|
||||||
server: "$KUBE_SERVER"
|
|
||||||
certificate-authority-data: "$KUBE_CA"
|
|
||||||
contexts:
|
|
||||||
- name: default-context
|
|
||||||
context:
|
|
||||||
cluster: default-cluster
|
|
||||||
user: gitea-actions
|
|
||||||
current-context: default-context
|
|
||||||
users:
|
|
||||||
- name: gitea-actions
|
|
||||||
user:
|
|
||||||
token: "$KUBE_TOKEN"
|
|
||||||
EOF
|
|
||||||
|
|
||||||
- name: Patch Deployment Image
|
|
||||||
env:
|
|
||||||
NAMESPACE: ${{ env.NAMESPACE }}
|
|
||||||
DEPLOYMENT: ${{ env.DEPLOYMENT_NAME }}
|
|
||||||
CONTAINER: ${{ env.CONTAINER }}
|
|
||||||
run: |
|
|
||||||
echo "deploy new tag: $TAG_IMAGE"
|
|
||||||
env
|
|
||||||
kubectl -n ${NAMESPACE} set image deployment/${DEPLOYMENT} ${CONTAINER}=${IMAGE_NAME}
|
|
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,3 +1,2 @@
|
|||||||
build/*
|
build/*
|
||||||
*-manual.pdf
|
*-manual.pdf
|
||||||
.venv/
|
|
||||||
|
8
.idea/.gitignore
generated
vendored
8
.idea/.gitignore
generated
vendored
@@ -1,8 +0,0 @@
|
|||||||
# Default ignored files
|
|
||||||
/shelf/
|
|
||||||
/workspace.xml
|
|
||||||
# Editor-based HTTP Client requests
|
|
||||||
/httpRequests/
|
|
||||||
# Datasource local storage ignored files
|
|
||||||
/dataSources/
|
|
||||||
/dataSources.local.xml
|
|
6
.idea/inspectionProfiles/profiles_settings.xml
generated
6
.idea/inspectionProfiles/profiles_settings.xml
generated
@@ -1,6 +0,0 @@
|
|||||||
<component name="InspectionProjectProfileManager">
|
|
||||||
<settings>
|
|
||||||
<option name="USE_PROJECT_PROFILE" value="false" />
|
|
||||||
<version value="1.0" />
|
|
||||||
</settings>
|
|
||||||
</component>
|
|
17
.idea/manuals.iml
generated
17
.idea/manuals.iml
generated
@@ -1,17 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<module type="PYTHON_MODULE" version="4">
|
|
||||||
<component name="NewModuleRootManager">
|
|
||||||
<content url="file://$MODULE_DIR$">
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/.venv" />
|
|
||||||
</content>
|
|
||||||
<orderEntry type="jdk" jdkName="Python 3.10 (manuals)" jdkType="Python SDK" />
|
|
||||||
<orderEntry type="sourceFolder" forTests="false" />
|
|
||||||
</component>
|
|
||||||
<component name="TemplatesService">
|
|
||||||
<option name="TEMPLATE_FOLDERS">
|
|
||||||
<list>
|
|
||||||
<option value="$MODULE_DIR$/pandoc/cl/templates" />
|
|
||||||
</list>
|
|
||||||
</option>
|
|
||||||
</component>
|
|
||||||
</module>
|
|
6
.idea/misc.xml
generated
6
.idea/misc.xml
generated
@@ -1,6 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="Black">
|
|
||||||
<option name="sdkName" value="Python 3.10 (manuals)" />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
8
.idea/modules.xml
generated
8
.idea/modules.xml
generated
@@ -1,8 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="ProjectModuleManager">
|
|
||||||
<modules>
|
|
||||||
<module fileurl="file://$PROJECT_DIR$/.idea/manuals.iml" filepath="$PROJECT_DIR$/.idea/manuals.iml" />
|
|
||||||
</modules>
|
|
||||||
</component>
|
|
||||||
</project>
|
|
9
.idea/vcs.xml
generated
9
.idea/vcs.xml
generated
@@ -1,9 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="VcsDirectoryMappings">
|
|
||||||
<mapping directory="" vcs="Git" />
|
|
||||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
|
||||||
<mapping directory="$PROJECT_DIR$/pandoc/cl" vcs="Git" />
|
|
||||||
<mapping directory="$PROJECT_DIR$/pandoc/template" vcs="Git" />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
23
Dockerfile
23
Dockerfile
@@ -1,23 +0,0 @@
|
|||||||
# -------- Stage 1: Build the documentation using mkdocs --------
|
|
||||||
FROM python:3.13-slim AS builder
|
|
||||||
|
|
||||||
WORKDIR /build
|
|
||||||
|
|
||||||
# Install dependencies
|
|
||||||
COPY requirements.txt .
|
|
||||||
RUN pip install --no-cache-dir -r requirements.txt
|
|
||||||
|
|
||||||
COPY user/ user/
|
|
||||||
COPY admin/ admin/
|
|
||||||
|
|
||||||
RUN ls
|
|
||||||
RUN cd user && mkdocs build --clean && cd ..
|
|
||||||
RUN cd admin && mkdocs build --clean && cd ..
|
|
||||||
|
|
||||||
# -------- Stage 2: Serve the built documentation with nginx --------
|
|
||||||
FROM nginx:alpine
|
|
||||||
|
|
||||||
# Copy the built site from the builder stage
|
|
||||||
COPY --from=builder /build/admin/site /usr/share/nginx/html/admin
|
|
||||||
COPY --from=builder /build/user/site /usr/share/nginx/html/user
|
|
||||||
|
|
1
admin/.gitignore
vendored
1
admin/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
site/*
|
|
@@ -1,3 +0,0 @@
|
|||||||
# Documentation administrateur
|
|
||||||
|
|
||||||
En construction.
|
|
@@ -1,3 +1,4 @@
|
|||||||
|
|
||||||
# Génération de documents
|
# Génération de documents
|
||||||
|
|
||||||
L'administrateur fonctionnel prépare la génération des documents.
|
L'administrateur fonctionnel prépare la génération des documents.
|
||||||
@@ -138,9 +139,9 @@ Les options disponibles dépendent du contexte.
|
|||||||
|
|
||||||
Par exemple, pour un courrier généré dans un contexte "parcours", l'utilisateur pourra choisir un usager du parcours pour un courrier; l'administrateur indiquera qu'il s'agira du "destinataire" du courrier. Tandis que pour un formulaire officiel, l'administrateur configurera un "demandeur" et "co-demandeur", et ce sont ces libellés qui s'afficheront.
|
Par exemple, pour un courrier généré dans un contexte "parcours", l'utilisateur pourra choisir un usager du parcours pour un courrier; l'administrateur indiquera qu'il s'agira du "destinataire" du courrier. Tandis que pour un formulaire officiel, l'administrateur configurera un "demandeur" et "co-demandeur", et ce sont ces libellés qui s'afficheront.
|
||||||
|
|
||||||
## Variables par contexte
|
## Variables par contexte
|
||||||
|
|
||||||
### Pour tous les contextes { #sec:gendoc-champs-documents }
|
### Pour tous les contextes { #sec:gendoc:champs-documents }
|
||||||
|
|
||||||
#### Variables
|
#### Variables
|
||||||
|
|
||||||
@@ -469,12 +470,6 @@ Seul le champ `comment` est donc disponible.
|
|||||||
* `id` (texte): identifiant
|
* `id` (texte): identifiant
|
||||||
* `title` (texte): le titre du résultat
|
* `title` (texte): le titre du résultat
|
||||||
|
|
||||||
### GenderEntity (Genre)
|
|
||||||
|
|
||||||
* `label` (texte): label du genre;
|
|
||||||
* `id` (int): identifiant (utile pour des comparaisons);
|
|
||||||
* `genderTranslation` (texte): utilisation grammaticale;
|
|
||||||
|
|
||||||
### Household (Ménage)
|
### Household (Ménage)
|
||||||
|
|
||||||
|
|
||||||
@@ -543,7 +538,7 @@ La composition du ménage entre deux dates. Cette entité associe une `Household
|
|||||||
* `birthdate` (Date)
|
* `birthdate` (Date)
|
||||||
* `age`: (int) age de la personne;
|
* `age`: (int) age de la personne;
|
||||||
* `deathdate` (Date)
|
* `deathdate` (Date)
|
||||||
* `genderEntity` (GenderEntity): Genre;
|
* `gender` (texte): genre (texte traduit);
|
||||||
* `maritalStatus` (texte): représentation textuelle de l'état civil;
|
* `maritalStatus` (texte): représentation textuelle de l'état civil;
|
||||||
* `maritalStatusDate` (Date): date à la quelle le statut de l'état civil a été mis à jour;
|
* `maritalStatusDate` (Date): date à la quelle le statut de l'état civil a été mis à jour;
|
||||||
* `maritalStatusComment` (Comment): Commentaire sur l'état civil (avec la date de la dernière mise à jour)
|
* `maritalStatusComment` (Comment): Commentaire sur l'état civil (avec la date de la dernière mise à jour)
|
||||||
@@ -558,9 +553,6 @@ La composition du ménage entre deux dates. Cette entité associe une `Household
|
|||||||
* `address` (Adresse): l'adresse actuelle
|
* `address` (Adresse): l'adresse actuelle
|
||||||
* `resources` (PersonResource): les personnes ressources, ajoutées depuis le dossier de l'usager.
|
* `resources` (PersonResource): les personnes ressources, ajoutées depuis le dossier de l'usager.
|
||||||
|
|
||||||
|
|
||||||
**Note**: La clé `gender` est dépréciée. Merci d'utiliser `GenderEntity`.
|
|
||||||
|
|
||||||
#### variant `household`
|
#### variant `household`
|
||||||
|
|
||||||
* `household` (Household): le ménage actuel de l'usager;
|
* `household` (Household): le ménage actuel de l'usager;
|
||||||
@@ -714,12 +706,17 @@ Les variables présentent le nom de la relation (`text`), et la personne avec qu
|
|||||||
* `username` (texte): le login
|
* `username` (texte): le login
|
||||||
* `email` (texte): l'email de l'utilisateur
|
* `email` (texte): l'email de l'utilisateur
|
||||||
* `text` (texte): le libellé complet de l'utilisateur (avec son métier et son service entre parenthèse);
|
* `text` (texte): le libellé complet de l'utilisateur (avec son métier et son service entre parenthèse);
|
||||||
|
* `text_without_absent` (texte): le libellé complet de l'utilisateur, sans la mention "est absent";
|
||||||
* `label` (texte): le libellé de l'utilisateur, tel qu'il est enregistré par l'administrateur fonctionnel
|
* `label` (texte): le libellé de l'utilisateur, tel qu'il est enregistré par l'administrateur fonctionnel
|
||||||
* `main_scope` (Scope): service principal
|
* `main_scope` (Scope): service principal
|
||||||
* `user_job` (UserJob): métier principal
|
* `user_job` (UserJob): métier principal
|
||||||
* `current_location` (Location): lieu de l'utilisateur, celui actuellement choisi par l'utilisateur par le menu "utilisateur";
|
* `current_location` (Location): lieu de l'utilisateur, celui actuellement choisi par l'utilisateur par le menu "utilisateur";
|
||||||
* `main_location` (Location): localisation de l'utilisateur définie par l'administrateur fonctionnel (parfois appelé "résidence administrative"). L'utilisateur ne peut pas la modifier lui-même;
|
* `main_location` (Location): localisation de l'utilisateur définie par l'administrateur fonctionnel (parfois appelé "résidence administrative"). L'utilisateur ne peut pas la modifier lui-même;
|
||||||
|
* `main_center` (Center): Centre principal (défini par l'administrateur fonctionnel);
|
||||||
* `civility` (Civility): la civilité de l'utilisateur;
|
* `civility` (Civility): la civilité de l'utilisateur;
|
||||||
|
* `isAbsent` (bool): true si l'utilisateur est noté comme absent;
|
||||||
|
* `phonenumber` (texte): Numéro de téléphone de l'utilisateur
|
||||||
|
|
||||||
|
|
||||||
### UserJob (Métier)
|
### UserJob (Métier)
|
||||||
|
|
@@ -1,43 +0,0 @@
|
|||||||
---
|
|
||||||
site_name: "Manuel admnistrateur Chill"
|
|
||||||
site_url: https://manuel.chill.social/admin
|
|
||||||
repo_url: https://gitea.champs-libres.be/Chill-project/manuals
|
|
||||||
repo_name: Chill-project/manuals
|
|
||||||
theme:
|
|
||||||
name: material
|
|
||||||
features:
|
|
||||||
- content.code.copy
|
|
||||||
- content.code.select
|
|
||||||
- content.code.annotate
|
|
||||||
nav:
|
|
||||||
- Accueil: index.md
|
|
||||||
- Génération de document: generation-documents.md
|
|
||||||
markdown_extensions:
|
|
||||||
- markdown_include.include
|
|
||||||
# code layout
|
|
||||||
- pymdownx.highlight:
|
|
||||||
anchor_linenums: true
|
|
||||||
line_spans: __span
|
|
||||||
pygments_lang_class: true
|
|
||||||
use_pygments: true
|
|
||||||
linenums: true
|
|
||||||
- pymdownx.inlinehilite
|
|
||||||
- pymdownx.snippets
|
|
||||||
- pymdownx.superfences
|
|
||||||
# admonition
|
|
||||||
- admonition
|
|
||||||
- pymdownx.details
|
|
||||||
- pymdownx.superfences
|
|
||||||
# use emojis
|
|
||||||
- attr_list
|
|
||||||
- pymdownx.emoji:
|
|
||||||
emoji_index: !!python/name:material.extensions.emoji.twemoji
|
|
||||||
emoji_generator: !!python/name:material.extensions.emoji.to_svg
|
|
||||||
# footnotes
|
|
||||||
- footnotes
|
|
||||||
# https://squidfunk.github.io/mkdocs-material/reference/formatting/?h=key#adding-keyboard-keys
|
|
||||||
- pymdownx.critic
|
|
||||||
- pymdownx.caret
|
|
||||||
- pymdownx.keys
|
|
||||||
- pymdownx.mark
|
|
||||||
- pymdownx.tilde
|
|
@@ -4,8 +4,7 @@ set -e
|
|||||||
|
|
||||||
# enter the current directory
|
# enter the current directory
|
||||||
cd "$(dirname $0)"
|
cd "$(dirname $0)"
|
||||||
export PANDOC_DIR="$(pwd)/pandoc/cl"
|
export PANDOC_DIR="/pandoc/cl"
|
||||||
export OUTPUT_DIR="$(pwd)"
|
|
||||||
|
|
||||||
|
|
||||||
if [ -z $1 ]; then
|
if [ -z $1 ]; then
|
||||||
@@ -60,22 +59,23 @@ else
|
|||||||
exit 1;
|
exit 1;
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export PDF_TEMPLATE="$(pwd)/eisvogel.latex"
|
cd $kind
|
||||||
|
|
||||||
cd $kind/docs
|
|
||||||
|
|
||||||
export ARGS="
|
export ARGS="
|
||||||
--from markdown
|
--from markdown
|
||||||
--number-sections
|
--number-sections
|
||||||
--resource-path ./.
|
--resource-path ./.
|
||||||
--metadata-file ./metadata.yaml
|
--metadata-file ./metadata.yaml
|
||||||
|
`#--lua-filter "../${PANDOC_DIR}/format-link.lua`
|
||||||
"
|
"
|
||||||
|
export PDF_TEMPLATE="./../pandoc/template/eisvogel.tex"
|
||||||
export LATEX_ARGS="
|
export LATEX_ARGS="
|
||||||
--metadata=footer-left:$(date +%d-%m-%Y)
|
--metadata=footer-left:$(date +%d-%m-%Y)
|
||||||
--template ${PDF_TEMPLATE}
|
--template "${PDF_TEMPLATE}"
|
||||||
--lua-filter "${PANDOC_DIR}/boxes.lua"
|
--lua-filter "../${PANDOC_DIR}/boxes.lua"
|
||||||
"
|
"
|
||||||
|
|
||||||
|
|
||||||
if [ $target = "latex" ]; then
|
if [ $target = "latex" ]; then
|
||||||
pandoc $ARGS $LATEX_ARGS \
|
pandoc $ARGS $LATEX_ARGS \
|
||||||
--to latex \
|
--to latex \
|
||||||
@@ -84,7 +84,18 @@ elif [ $target = "pdf" ]; then
|
|||||||
pandoc $ARGS $LATEX_ARGS \
|
pandoc $ARGS $LATEX_ARGS \
|
||||||
--to pdf \
|
--to pdf \
|
||||||
--pdf-engine xelatex \
|
--pdf-engine xelatex \
|
||||||
-o "${OUTPUT_DIR}/$kind-manual.pdf" \
|
-o "./../$kind-manual.pdf" \
|
||||||
$files
|
$files
|
||||||
|
elif [ $target = "html" ]; then
|
||||||
|
# check target directory exists
|
||||||
|
if [ ! -d "./../build/html" ]; then
|
||||||
|
echo "create build/html directory"
|
||||||
|
mkdir -p "./../build/html"
|
||||||
|
fi
|
||||||
|
|
||||||
|
pandoc $ARGS \
|
||||||
|
--to html \
|
||||||
|
-o ./../build/html/index.html \
|
||||||
|
$files
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
1037
eisvogel.latex
1037
eisvogel.latex
File diff suppressed because it is too large
Load Diff
Submodule pandoc/template updated: 62377f36a0...04e329698d
@@ -1,3 +0,0 @@
|
|||||||
mkdocs
|
|
||||||
markdown-include
|
|
||||||
mkdocs-material
|
|
2
user/.gitignore
vendored
2
user/.gitignore
vendored
@@ -1,2 +0,0 @@
|
|||||||
site/*
|
|
||||||
|
|
@@ -1,3 +0,0 @@
|
|||||||
Documentation utilisateur de chill
|
|
||||||
|
|
||||||
En construction.
|
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user