# ISN [![pipeline status](http://gitlab.pschneider.fr/Paul/nuget-host/badges/main/pipeline.svg)](http://gitlab.pschneider.fr/Paul/nuget-host/-/commits/main) ## Usage ````sh dotnet user-secrets set ConnectionStrings:DefaultConnection "Server=;Port=;Database=;Username=;Password=;" isnd& # get an api-key from isn push -k -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 Depuis le dossier de la solution, compiler la solution : ````bash dotnet build /restore -c Release dotnet publish -c Release ```` ### Déployer le serveur ````bash sudo mkdir -p /srv/www/isnd sudo cp -a src/isnd/bin/Release/netcoreapp2.1/publish/* /srv/www/isnd sudo cp contrib/isnd /etc/init.d/isnd sudo chmod +x /etc/init.d/isnd sudo chown -R www-data.www-data /srv/www/isnd sudo systemctl daemon-reload ```` * Créer une base de donées Postgresql, * ajuster un fichier de configuration `/srv/www/isnd/appsettings.Production.json` * Démarrer le serveur : ````bash sudo systemctl start isnd ```` * Activer le serveur : ````bash sudo systemctl enable isnd ```` ### Installer le client ````bash sudo mkdir /usr/local/lib/isn sudo cp -a src/isn/bin/Release/netcoreapp2.1/* /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 ````bash # compiler tout dotnet build -c Release dotnet publish -c Release -f netcoreapp2.1 src/isnd # MAJ du serveur sudo systemctl stop isnd sudo cp -a src/isnd/bin/Release/netcoreapp2.1/publish/* /srv/www/isnd sudo systemctl start isnd # MAJ du client sudo cp -a src/isn/bin/Release/netcoreapp2.1/* /usr/local/lib/isn sudo chown -R root.root /usr/local/lib/isn ```` ## TODO ```json { "@id": "https://api.nuget.org/v3/registration5-semver1/", "@type": "RegistrationsBaseUrl", "comment": "Base URL of Azure storage where NuGet package registration info is stored" }, { "@id": "https://api.nuget.org/v3-flatcontainer/", "@type": "PackageBaseAddress/3.0.0", "comment": "Base URL of where NuGet packages are stored, in the format https://api.nuget.org/v3-flatcontainer/{id-lower}/{version-lower}/{id-lower}.{version-lower}.nupkg" }, { "@id": "https://api.nuget.org/v3/registration5-semver1/", "@type": "RegistrationsBaseUrl/3.0.0-rc", "comment": "Base URL of Azure storage where NuGet package registration info is stored used by RC clients. This base URL does not include SemVer 2.0.0 packages." }, { "@id": "https://api.nuget.org/v3/registration5-semver1/", "@type": "RegistrationsBaseUrl/3.0.0-beta", "comment": "Base URL of Azure storage where NuGet package registration info is stored used by Beta clients. This base URL does not include SemVer 2.0.0 packages." }, { "@id": "https://www.nuget.org/packages/{id}/{version}?_src=template", "@type": "PackageDetailsUriTemplate/5.1.0", "comment": "URI template used by NuGet Client to construct details URL for packages" }, { "@id": "https://api.nuget.org/v3/registration5-gz-semver2/", "@type": "RegistrationsBaseUrl/3.6.0", "comment": "Base URL of Azure storage where NuGet package registration info is stored in GZIP format. This base URL includes SemVer 2.0.0 packages." }, ````