Compare commits
1 Commits
c2d74edf9c
...
4878389365
Author | SHA1 | Date |
---|---|---|
|
4878389365 |
|
@ -1,11 +1,11 @@
|
|||
---
|
||||
# drone encrypt ResiLien/portails $AWS_ACCESS_KEY_ID
|
||||
# drone encrypt ResiLien/gare-centrale $AWS_ACCESS_KEY_ID
|
||||
kind: secret
|
||||
name: P4PILLON_AWS_ACCESS_KEY_ID
|
||||
data: XY87aSNvLDeNNSMT1xHmVUTWXSpXJORM/P8RCRmsVWtByyefTbXX1cF0A4EuokVbOJs0DJZs
|
||||
|
||||
---
|
||||
# drone encrypt ResiLien/portails $AWS_SECRET_ACCESS_KEY
|
||||
# drone encrypt ResiLien/gare-centrale $AWS_SECRET_ACCESS_KEY
|
||||
kind: secret
|
||||
name: P4PILLON_AWS_SECRET_ACCESS_KEY
|
||||
data: 58Boc2Ux7MKwvh1nHh2xmY4JEje5CyX0/H/z6tM/ehLD1m4WQKblvc/+PX0DcaFqX86JPG8osLRsglkP9pyW7iH5WwuMQcXR/NzOAJioO+xgrh/14qUCYe+N5Yc=
|
||||
|
@ -19,6 +19,7 @@ steps:
|
|||
- name: Installation des dépendances & construction du site
|
||||
image: hugomods/hugo:exts-0.121.1
|
||||
environment:
|
||||
HUGO_ENVIRONEMENT: apps.p4pillon.org
|
||||
AWS_ACCESS_KEY_ID:
|
||||
from_secret: P4PILLON_AWS_ACCESS_KEY_ID
|
||||
AWS_SECRET_ACCESS_KEY:
|
||||
|
@ -28,5 +29,5 @@ steps:
|
|||
path: /drone/src/resources
|
||||
commands:
|
||||
- npm install --ignore-scripts
|
||||
- hugo --minify --environment apps.p4pillon.org
|
||||
- hugo deploy --environment apps.p4pillon.org
|
||||
- hugo --minify
|
||||
- hugo deploy
|
||||
|
|
|
@ -6,4 +6,3 @@ yarn-error.log
|
|||
node_modules
|
||||
public
|
||||
resources
|
||||
hugo_stats.json
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
[[footer]]
|
||||
name = "Sources du site"
|
||||
url = "https://git.resilien.fr/ResiLien/portails/"
|
||||
url = "https://git.resilien.fr/ResiLien/gare-centrale/"
|
||||
weight = 20
|
||||
|
||||
[[footer]]
|
||||
|
|
|
@ -32,11 +32,11 @@
|
|||
|
||||
## content
|
||||
[[mounts]]
|
||||
source = "portails/shared/content"
|
||||
source = "gare-centrale/content"
|
||||
target = "content"
|
||||
|
||||
[[mounts]]
|
||||
source = "portails/apps.p4pillon.org/content"
|
||||
source = "gare-centrale/apps.p4pillon.org/content"
|
||||
target = "content"
|
||||
|
||||
## data
|
||||
|
@ -49,11 +49,11 @@
|
|||
target = "data"
|
||||
|
||||
[[mounts]]
|
||||
source = "portails/shared/data"
|
||||
source = "gare-centrale/data"
|
||||
target = "data"
|
||||
|
||||
[[mounts]]
|
||||
source = "portails/apps.p4pillon.org/data"
|
||||
source = "gare-centrale/apps.p4pillon.org/data"
|
||||
target = "data"
|
||||
|
||||
## i18n
|
||||
|
@ -91,7 +91,7 @@
|
|||
target = "layouts"
|
||||
|
||||
[[mounts]]
|
||||
source = "portails/shared/layouts"
|
||||
source = "gare-centrale/layouts"
|
||||
target = "layouts"
|
||||
|
||||
## static
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
# Les portails de services de RésiLien
|
||||
|
||||
Permettre facilement de créer des portails de services (accompagné d'une documentation mutualisée) que RésiLien met à disposition.
|
||||
|
||||
## Développement
|
||||
|
||||
Pour utiliser ce projet il faut renseigner un environnement spécifique à Hugo : `export HUGO_ENVIRONEMENT=apps.p4pillon.org` par exemple.
|
||||
Puis lancer les commandes contenu dans `packages.json` comme par exemple `npm run dev`.
|
||||
|
||||
## Déploiement
|
||||
|
||||
Un déploiement automatique a été mis en place pour que Drone déploie automatiquement l'ensemble des sites sur notre cluster S3
|
||||
|
||||
## Surcharge de Doks
|
||||
|
||||
Pour faciliter la mise à jour du p
|
|
@ -1,4 +1,13 @@
|
|||
services:
|
||||
authelia:
|
||||
tool:
|
||||
name: Authelia
|
||||
link: https://www.authelia.com/
|
||||
title: Gérer vos données
|
||||
icon: files
|
||||
description: Gérer en collaboration vos fichiers, contacts et agendas pour permettre une bonne organisation.
|
||||
subdomain: nuage
|
||||
doc: /docs/nuage/gérer-vos-données/
|
||||
directus:
|
||||
tool:
|
||||
name: Directus
|
||||
|
@ -6,17 +15,8 @@ services:
|
|||
title: Gestion de contenu
|
||||
icon: route-2
|
||||
description: Directus est un logiciel de gestion de contenu qui permet de stocker et d'accéder au contenu via une API.
|
||||
subdomain: admin
|
||||
subdomain: nuage
|
||||
doc: /docs/nuage/gérer-vos-données/
|
||||
element:
|
||||
tool:
|
||||
name: Element
|
||||
link: https://element.io/
|
||||
title: Discussion entre équipes
|
||||
icon: messages
|
||||
description: Échanger ensemble avec une messagerie instantanée sécurisée et décentralisée sur différents sujets.
|
||||
subdomain: chat
|
||||
doc: /docs/chat/discussion-entre-%C3%A9quipes/
|
||||
gitea:
|
||||
tool:
|
||||
name: Gitea
|
||||
|
@ -44,6 +44,15 @@ services:
|
|||
description: Solution d'informatique décisionnelle, mise en place de graphique de ses données pour piloter son activité.
|
||||
subdomain: tableaudebord
|
||||
doc: /docs/nuage/gérer-vos-données/
|
||||
element:
|
||||
tool:
|
||||
name: Element
|
||||
link: https://element.io/
|
||||
title: Discussion entre équipes
|
||||
icon: messages
|
||||
description: Échanger ensemble avec une messagerie instantanée sécurisée et décentralisée sur différents sujets.
|
||||
subdomain: nuage
|
||||
doc: /docs/chat/discussion-entre-%C3%A9quipes/
|
||||
nextcloud:
|
||||
tool:
|
||||
name: Nextcloud
|
|
@ -22,8 +22,8 @@
|
|||
<section class="section section-md section-features">
|
||||
<div class="container">
|
||||
<div class="row justify-content-center text-center">
|
||||
{{ range $service := index site.Data site.Params.url }}
|
||||
{{ $defaultValues := index site.Data.shared.services $service.name }}
|
||||
{{ range $service := .Site.Data.services }}
|
||||
{{ $defaultValues := index site.Data.default.services $service.name }}
|
||||
<div class="col-lg-5">
|
||||
<h2 class="h4">
|
||||
{{- $icon := $service.icon | default $defaultValues.icon -}}
|
|
@ -1,7 +1,7 @@
|
|||
<hr class="mt-1 mb-1"/>
|
||||
<ul id="socialMenu" class="nav mx-auto flex-row order-lg-4">
|
||||
{{ range $service := index site.Data site.Params.url }}
|
||||
{{ $defaultValues := index site.Data.shared.services $service.name }}
|
||||
{{ range $service := site.Data.services }}
|
||||
{{ $defaultValues := index site.Data.default.services $service.name }}
|
||||
{{ $icon := $service.icon | default $defaultValues.icon }}
|
||||
<li class="nav-item">
|
||||
<a class="nav-link social-link" title="{{ $service.title | default $defaultValues.title }}" href="{{- if $service.subdomain -}}
|
|
@ -0,0 +1,280 @@
|
|||
{
|
||||
"htmlElements": {
|
||||
"tags": [
|
||||
"a",
|
||||
"article",
|
||||
"aside",
|
||||
"blockquote",
|
||||
"body",
|
||||
"br",
|
||||
"button",
|
||||
"circle",
|
||||
"details",
|
||||
"div",
|
||||
"footer",
|
||||
"form",
|
||||
"g",
|
||||
"h1",
|
||||
"h2",
|
||||
"h3",
|
||||
"h5",
|
||||
"head",
|
||||
"header",
|
||||
"hr",
|
||||
"html",
|
||||
"img",
|
||||
"input",
|
||||
"kbd",
|
||||
"label",
|
||||
"li",
|
||||
"line",
|
||||
"link",
|
||||
"main",
|
||||
"meta",
|
||||
"nav",
|
||||
"noscript",
|
||||
"p",
|
||||
"path",
|
||||
"script",
|
||||
"section",
|
||||
"small",
|
||||
"span",
|
||||
"strong",
|
||||
"style",
|
||||
"summary",
|
||||
"svg",
|
||||
"template",
|
||||
"time",
|
||||
"title",
|
||||
"ul"
|
||||
],
|
||||
"classes": [
|
||||
"DocSearch-Label",
|
||||
"active",
|
||||
"anchor",
|
||||
"bg-dots",
|
||||
"blog-header",
|
||||
"brand-git",
|
||||
"btn",
|
||||
"btn-close",
|
||||
"btn-group",
|
||||
"btn-link",
|
||||
"btn-outline-primary",
|
||||
"btn-primary",
|
||||
"callout",
|
||||
"callout-body",
|
||||
"callout-content",
|
||||
"callout-icon",
|
||||
"callout-tip",
|
||||
"callout-title",
|
||||
"card",
|
||||
"card-body",
|
||||
"card-list",
|
||||
"categories",
|
||||
"chart-dots-2",
|
||||
"col-lg-10",
|
||||
"col-lg-11",
|
||||
"col-lg-12",
|
||||
"col-lg-5",
|
||||
"col-lg-8",
|
||||
"col-lg-9",
|
||||
"col-md-12",
|
||||
"col-xl-3",
|
||||
"col-xl-4",
|
||||
"col-xl-8",
|
||||
"col-xl-9",
|
||||
"container",
|
||||
"container-fluid",
|
||||
"container-lg",
|
||||
"content",
|
||||
"contributors",
|
||||
"created-date",
|
||||
"d-flex",
|
||||
"d-lg-block",
|
||||
"d-lg-none",
|
||||
"d-md-block",
|
||||
"d-md-none",
|
||||
"d-none",
|
||||
"d-xl-block",
|
||||
"d-xl-none",
|
||||
"docs",
|
||||
"docs-content",
|
||||
"docs-link",
|
||||
"docs-links",
|
||||
"docs-sidebar",
|
||||
"docs-toc",
|
||||
"doks-sidebar",
|
||||
"error404",
|
||||
"files",
|
||||
"flex-column",
|
||||
"flex-grow-1",
|
||||
"flex-lg-row",
|
||||
"flex-md-row",
|
||||
"flex-row",
|
||||
"flex-sm-row",
|
||||
"flex-xl-nowrap",
|
||||
"footer",
|
||||
"form-control",
|
||||
"form-control-lg",
|
||||
"fs-5",
|
||||
"h-auto",
|
||||
"h4",
|
||||
"h5",
|
||||
"h6",
|
||||
"home",
|
||||
"icon",
|
||||
"icon-tabler",
|
||||
"icon-tabler-arrow-left",
|
||||
"icon-tabler-arrow-right",
|
||||
"icon-tabler-dots-vertical",
|
||||
"icon-tabler-menu",
|
||||
"icon-tabler-moon",
|
||||
"icon-tabler-search",
|
||||
"icon-tabler-sun",
|
||||
"icon-tabler-x",
|
||||
"info-circle",
|
||||
"justify-content-between",
|
||||
"justify-content-center",
|
||||
"justify-content-end",
|
||||
"justify-content-start",
|
||||
"lead",
|
||||
"list",
|
||||
"list-details",
|
||||
"list-inline",
|
||||
"list-inline-item",
|
||||
"list-unstyled",
|
||||
"list-view",
|
||||
"m-2",
|
||||
"mail-fast",
|
||||
"mb-0",
|
||||
"mb-1",
|
||||
"mb-2",
|
||||
"mb-3",
|
||||
"mb-4",
|
||||
"me-2",
|
||||
"me-auto",
|
||||
"me-lg-1",
|
||||
"me-lg-3",
|
||||
"mentions-legales",
|
||||
"message",
|
||||
"messages",
|
||||
"modal",
|
||||
"modal-body",
|
||||
"modal-content",
|
||||
"modal-dialog",
|
||||
"modal-dialog-scrollable",
|
||||
"modal-footer",
|
||||
"modal-fullscreen-md-down",
|
||||
"modal-header",
|
||||
"modal-title",
|
||||
"ms-2",
|
||||
"ms-3",
|
||||
"ms-lg-2",
|
||||
"mt-1",
|
||||
"mt-3",
|
||||
"mt-4",
|
||||
"mt-n3",
|
||||
"mx-2",
|
||||
"mx-auto",
|
||||
"my-3",
|
||||
"nav",
|
||||
"nav-item",
|
||||
"nav-link",
|
||||
"navbar",
|
||||
"navbar-brand",
|
||||
"navbar-expand-lg",
|
||||
"navbar-nav",
|
||||
"offcanvas",
|
||||
"offcanvas-body",
|
||||
"offcanvas-end",
|
||||
"offcanvas-header",
|
||||
"offcanvas-start",
|
||||
"offcanvas-title",
|
||||
"order-3",
|
||||
"order-lg-4",
|
||||
"p-0",
|
||||
"p-2",
|
||||
"page-footer-meta",
|
||||
"page-links",
|
||||
"page-nav",
|
||||
"pb-2",
|
||||
"pb-3",
|
||||
"pe-4",
|
||||
"pencil",
|
||||
"ps-3",
|
||||
"pt-4",
|
||||
"px-0",
|
||||
"query-no-results",
|
||||
"route-2",
|
||||
"row",
|
||||
"search-form",
|
||||
"search-input",
|
||||
"search-loading",
|
||||
"search-no-recent",
|
||||
"search-no-results",
|
||||
"search-result",
|
||||
"search-results",
|
||||
"search-text",
|
||||
"section",
|
||||
"section-features",
|
||||
"section-md",
|
||||
"shield-lock",
|
||||
"single",
|
||||
"social-link",
|
||||
"status",
|
||||
"sticky-top",
|
||||
"stretched-link",
|
||||
"submitted",
|
||||
"svg-inline",
|
||||
"tags",
|
||||
"taxonomy",
|
||||
"text-body-secondary",
|
||||
"text-center",
|
||||
"text-decoration-none",
|
||||
"text-end",
|
||||
"text-lg-end",
|
||||
"text-lg-start",
|
||||
"text-muted",
|
||||
"text-reset",
|
||||
"text-uppercase",
|
||||
"title",
|
||||
"title-submitted",
|
||||
"toc-mobile",
|
||||
"visually-hidden",
|
||||
"w-100",
|
||||
"wrap"
|
||||
],
|
||||
"ids": [
|
||||
"TableOfContents",
|
||||
"buttonColorMode",
|
||||
"cookie",
|
||||
"créer-un-compte",
|
||||
"directeur-de-publication",
|
||||
"doks-docs-nav",
|
||||
"développement-et-maintenance",
|
||||
"hébergement",
|
||||
"le-canal-lamelio-sur-matrix",
|
||||
"liens-hypertextes",
|
||||
"nextcloud",
|
||||
"offcanvasNavMain",
|
||||
"offcanvasNavMainLabel",
|
||||
"offcanvasNavSection",
|
||||
"offcanvasNavSectionLabel",
|
||||
"où-suis-je-",
|
||||
"projet-eimis",
|
||||
"query",
|
||||
"sauvegarde",
|
||||
"search-form",
|
||||
"searchModal",
|
||||
"searchModalLabel",
|
||||
"searchResults",
|
||||
"searchToggleDesktop",
|
||||
"searchToggleMobile",
|
||||
"sidebar-default",
|
||||
"socialMenu",
|
||||
"support",
|
||||
"toc",
|
||||
"éditeur"
|
||||
]
|
||||
}
|
||||
}
|
|
@ -1,27 +0,0 @@
|
|||
# Les portails de services de RésiLien
|
||||
|
||||
Ce projet permet de créer des portails de services, une page avec des liens vers les services que RésiLien met à disposition accompagné d'une documentation mutualisée entre les différents portails.
|
||||
|
||||
## Explication technique
|
||||
|
||||
Dans Hugo, il est possible de créer des environnements spécifiques en général on l'utilise pour différencier des environnements de test, pord ou local. Nous l'utiliserons ici pour mettre en place un portail par environement.
|
||||
|
||||
Lorsque l'on spécifie `export HUGO_ENVIRONEMENT=apps.p4pillon.org` et qu'on lance `npm run dev` qui n'est rien d'autre que la commande `hugo serve` avec des paramètres en plus alors il charge le dossier `config/apps.p4pillon.org`.
|
||||
|
||||
Dans ce dossier, on retrouve des fichiers de configuration dont le fichier `module.toml` qui permet de dire à Hugo quels dossiers sont pris en compte, ce qui nous permet d'avoir une configuration partagé dans le dossier `portails/shared` mais aussi de pouvoir surcharger facilement pour un besoin spécifique dans le dossier `portails/apps.p4pillon.org` par exemple.
|
||||
|
||||
Dans le dossier `portails/shared` nous allons avoir l'ensemble des templates (`layout`) que l'on surcharge de Doks, un catalogue de services dans le fichier `data/portails.yml` et l'ensemble de la documentation pour l'utilisation d'un service lui permettant de comprendre à l'utiliser.
|
||||
|
||||
Dans le dossier `portails/apps.p4pillon.org` nous aurons le dossier `content` permettant d'avoir du contenu spécifique mais aussi le fichier `data/services.yml` permettant de paramètrer les services.
|
||||
|
||||
## Déploiement
|
||||
|
||||
Un déploiement automatique a été mis en place `.drone.yml` pour que Drone déploie automatiquement l'ensemble des sites sur notre cluster S3.
|
||||
|
||||
## Mise à jour
|
||||
|
||||
Nous pouvons mettre à jour notre documentation générale ou les services proposés en ajoutant ou modifiant le contenu dans `portails/shared/` un dossier qui n'est pas référencé dans Doks ce qui simplifira les montés de version.
|
||||
|
||||
Pour mettre à jour Doks, il suffit d'ajouter le dépôt Git du projet original `git remote add doks git@github.com:gethyas/doks.git`, de rappatrier les nouveaux changement `git pull doks --rebase` et ainsi ne pas avoir de conflit. Seul le fichier `hugo_stats.json` qui récolte toutes les propriétés CSS du framework Tailwindcss utilisé dans les templates. C'est pourquoi un des premiers commit est la mise dans `.gitignore`.
|
||||
|
||||
Lors de la mise à jour de Doks, il faut vérifier s'il faut mettre à jour la version de Hugo dans `.drone.yml`. Je n'ai pas réussi à ce que l'image utilise le Drone importé par _npm_.
|
Loading…
Reference in New Issue