Paul Schneider 96f91c3ba0 | 6 months ago | |
---|---|---|
.vscode | 6 months ago | |
contrib | 1 year ago | |
src | 6 months ago | |
test | 6 months ago | |
.build | 1 year ago | |
.gitignore | 6 months ago | |
.gitlab-ci.yml | 1 year ago | |
GitVersion.yml | 1 year ago | |
LICENSE | 1 year ago | |
Makefile | 6 months ago | |
README.md | 6 months ago | |
dotnet-tools.json | 1 year ago | |
isn.sln | 1 year ago | |
isndtest.session.sql | 1 year ago | |
omnisharp.json | 6 months ago |
README.md
ISN
En cours de developement, le détail du paquet n'est toujours pas fourni en API.
Usage
dotnet user-secrets set ConnectionStrings:DefaultConnection "Server=<lame-pgserver>;Port=<lame-pgport>;Database=<lame-dbname>;Username=<lame-dbusername>;Password=<lame-dbpass>;"
isnd&
# get an api-key from <http://localhost:5000/ApkKeys>
isn push -k <lame-api-key> -s http://localhost:5000/index.json your-lame-versionned.nupkg
wget http://localhost:5000/package/index.json?q=your&prerelease=true&semVerLevel=2.0.0
Installation
Compilation
Depuis le dossier de la solution, compiler la solution :
dotnet build /restore -c Release
dotnet publish -c Release
Déploiement du serveur
Commençont par la livraison initiale, aujourd'hui :
sudo mkdir -p /srv/www/isnd
sudo cp -a src/isnd/bin/Release/net7.0/publish/* /srv/www/isnd
sudo cp contrib/isnd.service /etc/systemd/system
sudo systemctl daemon-reload
Une base de donées Postgresql est requise, avec, pour faire simple, son utilisateur, et le droit de créer des tables (ce dernier droit pourrait expirer, mais gare aux mises à jour).
Il faudra éditer la configuration pour indiquer :
- la connextion à une base de donnée Postresgql, sous la forme :
"Server=<pgserver>;Port=<pgport>;Database=<dbname>;Username=<dbusername>;Password=<dbpass>;"
- la connection au serveur de messagerie,
- l'URL du ou des sites à propulser,
- Les autres détails.
Pour faire ceci, vous pourrez éditer une copie du fichier appsettings.json
vers appsettings.Production.json
,
pour renseigner toutes les valeurs spécifiées.
- Démarrer le serveur :
sudo systemctl start isnd
- Activation du serveur :
sudo systemctl enable isnd
Installation du client
sudo mkdir /usr/local/lib/isn
sudo cp -a src/isn/bin/Release/net6.0/* /usr/local/lib/isn
sudo chown -R root.root /usr/local/lib/isn
sudo ln -s /usr/local/lib/isn/isn /usr/local/bin/isn
Mises à jour
Dans le détail, la séquence serait du style :
# compiler tout
dotnet build -c Release
dotnet publish -c Release -f net8.0 src/isnd
# MAJ du serveur
sudo systemctl stop isnd
sudo cp -a src/isnd/bin/Release/net8.0/publish/* /srv/www/isnd
sudo systemctl start isnd
# MAJ du client
sudo cp -a src/isn/bin/Release/net8.0/* /usr/local/lib/isn
sudo chown -R root:root /usr/local/lib/isn
On pourra cibler "client-update" ou "server-update", à la construction :
make server-update
make client-update