WIP: Deploy Matosthèque #19
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "agroudiev/matostheque"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Y'a quelques trucs qui m'étonnent sur le module mais je vais tester de mon côté pour pas dire de bêtises
@ -0,0 +145,4 @@} // commonServiceConfig;};systemd.services.matostheque-frontend = {Ce service me paraît étonnant pour un frontend fait en Next.js, logiquement ça compile les fichiers statiquement et tu n'as plus besoin de lancer
nodeetc?Je vais regarder de mon côté
je vois que ça n'a pas mis mon commentaire sur la bonne ligne, voir ligne 148 plutot
Oui, Tom m’avait déjà fait la remarque, il faut que j’ajoute
output: 'export’,dans la config Next.js et que je refactor pour avoir un seul service@ -0,0 +75,4 @@installPhase = ''mkdir -p $out/opt/matosthequecp -r . $out/opt/matosthequeSi tu fais comme ça, il ne faut pas être dans l'environment
buildPythonApplication, tu peux juste être dansmkDerivationÇa me permet d’avoir
makeWrappermakeWrapperest dans le packagemakeWrappersi tu veux l'utiliser@ -0,0 +5,4 @@src:{buildNpmPackage,host,dans l'idéal je dirais qu'on a pas envie d'avoir un input
host, mais avec NEXT.JS c'est un peu relou, mais ducoup:host ? "",à la place dehost,{NEXT,REACT}_*_URLtu mets un default et tu override le package quand tu en as besoin (typiquement dans ton module), avec<tonpackage>.overrideAttrs(regarde overrideAttrs sur internet si jamais)@ -0,0 +28,4 @@NEXT_PUBLIC_DJANGO_SERVER = "https://${host}/api";NEXT_PUBLIC_ASSETS = "https://${host}/static/";NEXT_TELEMETRY_DISABLED = "1";REACT_APP_API_URL = "https://${host}/api";Tu peux mettre les variables d'env dans l'attrs
env:Ça sera mieux pour la lecture, et les résultats sont différents (env est plus résilient, de mémoire,
envfait commeexportalors que si tu fais pas, ça n'exportpas, mais à vérifier exactement du comportement)@ -0,0 +34,4 @@runHook preInstallmkdir -p $outmkdir -p $out/binTu peux garder que
mkdir -p $out/bincar si$outn'existe pas, avec l'option-pdemkdir, ça va créer$outavant de créer$out/bincf. https://linux.die.net/man/1/mkdir
@ -0,0 +39,4 @@cp -r public $out/publiccp -r node_modules $out/node_modulescp package.json $out/package.jsoncp next.config.js $out/next.config.jsPetit tips bash, tu peux compresser toutes les lignes de
cpen une:cp -r {.next,public,node_modules,package.json,next.config.js} $outest exactement comme fairecp -r .next $outcp -r public $outetc.@ -0,0 +44,4 @@export NEXT_PUBLIC_DJANGO_SERVER=https://${host}/apiexport NEXT_PUBLIC_ASSETS=https://${host}/static/export NEXT_TELEMETRY_DISABLED=1export REACT_APP_API_URL=https://${host}/apiDonc effectivement tu n'auras pas besoin de ça si tu mets les variables d'env dans
env@ -85,0 +95,4 @@deployment.targetHost = "129.199.146.94";stateVersion = "24.05";Tu n'as pas installé un NixOS 25.05 ? si oui le stateVersion doit être 25.05
La documentation de wiki (lacunaire): https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
@ -0,0 +79,4 @@groups.matostheque = { };# Let nginx read files created by the matostheque service.users.nginx.extraGroups = [ "matostheque" ];Je me demande si on peut pas se débrouiller pour ne pas avec l'extraGroup aussi, comme ça ça évite de créer un user et group matosthèque et on peut utiliser le DynamicUser de systemd
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.