upgrade notes

broken/ef
Paul Schneider 3 years ago
parent 82cec8eece
commit 1aef7ce614
4 changed files with 41 additions and 37 deletions

@ -12,7 +12,7 @@ isnd&
# get an api-key from <http://localhost:5000/ApkKeys>
isn push -k <lame-api-key> -s http://localhost:5000/packages your-lame-versionned.nupkg
isn push -k <lame-api-key> -s http://localhost:5000/index.json your-lame-versionned.nupkg
````
@ -65,8 +65,13 @@ sudo chown root.root /usr/local/bin/isn
### Mises à jour
````bash
# compiler tout
dotnet publish -c Release
# MAJ du serveur
sudo systemctl stop isnd
sudo cp -a src/isnd/bin/Release/netcoreapp2.1/publish/* /srv/www/isnd
sudo systemctl restart isnd
sudo systemctl start isnd
# MAJ du client
sudo cp -a src/isn/bin/Release/net472/* /usr/local/lib/isn
sudo chmod +x /usr/local/lib/isn/isn.exe
````

@ -20,7 +20,7 @@ namespace isn.Controllers
public partial class PackagesController
{
[HttpPut("packages")]
[HttpPut(_pkgRootPrefix)]
public async Task<IActionResult> Put()
{
try
@ -31,11 +31,11 @@ namespace isn.Controllers
var files = new List<string>();
ViewData["files"] = files;
var clearkey = protector.Unprotect(apiKey);
var apikey = dbContext.ApiKeys.SingleOrDefault(k => k.Id == clearkey);
var clearkey = _protector.Unprotect(apiKey);
var apikey = _dbContext.ApiKeys.SingleOrDefault(k => k.Id == clearkey);
if (apikey == null)
{
logger.LogError("403 : no api-key");
_logger.LogError("403 : no api-key");
return Unauthorized();
}
@ -70,14 +70,14 @@ namespace isn.Controllers
pkgid = reader.GetId();
version = reader.GetVersion();
string pkgidpath = Path.Combine(nugetSettings.PackagesRootDir,
string pkgidpath = Path.Combine(_nugetSettings.PackagesRootDir,
pkgid);
pkgpath = Path.Combine(pkgidpath, version.ToFullString());
string name = $"{pkgid}-{version}.nupkg";
fullpath = Path.Combine(pkgpath, name);
var destpkgiddir = new DirectoryInfo(pkgidpath);
Package package = dbContext.Packages.SingleOrDefault(p => p.Id == pkgid);
Package package = _dbContext.Packages.SingleOrDefault(p => p.Id == pkgid);
if (package != null)
{
if (package.OwnerId != apikey.UserId)
@ -94,7 +94,7 @@ namespace isn.Controllers
Description = pkgdesc,
OwnerId = apikey.UserId
};
dbContext.Packages.Add(package);
_dbContext.Packages.Add(package);
}
if (!destpkgiddir.Exists) destpkgiddir.Create();
@ -105,7 +105,7 @@ namespace isn.Controllers
{
ViewData["msg"] = "existant";
ViewData["ecode"] = 1;
logger.LogWarning("400 : existant");
_logger.LogWarning("400 : existant");
return base.BadRequest(new { error = ModelState });
}
else
@ -114,12 +114,12 @@ namespace isn.Controllers
source.MoveTo(fullpath);
files.Add(name);
string fullstringversion = version.ToFullString();
var pkgvers = dbContext.PackageVersions.Where
var pkgvers = _dbContext.PackageVersions.Where
(v => v.PackageId == package.Id && v.FullString == fullstringversion);
if (pkgvers.Count() > 0)
{
foreach (var v in pkgvers.ToArray())
dbContext.PackageVersions.Remove(v);
_dbContext.PackageVersions.Remove(v);
}
foreach (var type in types)
{
@ -133,11 +133,11 @@ namespace isn.Controllers
FullString = version.ToFullString(),
Type = type.Name
};
dbContext.PackageVersions.Add(pkgver);
_dbContext.PackageVersions.Add(pkgver);
}
await dbContext.SaveChangesAsync();
await _dbContext.SaveChangesAsync();
logger.LogInformation($"new package : {nuspec.Name}");
_logger.LogInformation($"new package : {nuspec.Name}");
}
}
using (var shacrypto = System.Security.Cryptography.SHA512.Create())
@ -163,8 +163,8 @@ namespace isn.Controllers
}
catch (Exception ex)
{
logger.LogError(ex.Message);
logger.LogError("Stack Trace: " + ex.StackTrace);
_logger.LogError(ex.Message);
_logger.LogError("Stack Trace: " + ex.StackTrace);
return new ObjectResult(new { ViewData, ex.Message })
{ StatusCode = 500 };
}

@ -28,30 +28,29 @@ namespace isn.Controllers
const string _pkgRootPrefix = "~/package";
const string defaultSemVer = "2.0.0";
private readonly Resource[] ressources;
private readonly ILogger<PackagesController> logger;
private readonly IDataProtector protector;
private readonly Resource[] _ressources;
private readonly ILogger<PackagesController> _logger;
private readonly IDataProtector _protector;
private readonly NugetSettings nugetSettings;
readonly ApplicationDbContext dbContext;
private readonly PackageManager packageManager;
private readonly NugetSettings _nugetSettings;
readonly ApplicationDbContext _dbContext;
private readonly PackageManager _packageManager;
private readonly IUnleash _unleashĈlient;
public PackagesController(
PackageManager packageManager,
ILoggerFactory loggerFactory,
IDataProtectionProvider provider,
IOptions<NugetSettings> nugetOptions,
IUnleash unleashĈlient,
ApplicationDbContext dbContext)
{
logger = loggerFactory.CreateLogger<PackagesController>();
nugetSettings = nugetOptions.Value;
protector = provider.CreateProtector(nugetSettings.ProtectionTitle);
this.dbContext = dbContext;
this.packageManager = packageManager;
_logger = loggerFactory.CreateLogger<PackagesController>();
_nugetSettings = nugetOptions.Value;
_protector = provider.CreateProtector(_nugetSettings.ProtectionTitle);
_dbContext = dbContext;
_packageManager = new PackageManager(dbContext);
_unleashĈlient = unleashĈlient;
ressources = packageManager.GetResources(_unleashĈlient).ToArray();
_ressources = _packageManager.GetResources(_unleashĈlient).ToArray();
}
// dotnet add . package -s http://localhost:5000/packages isn
@ -64,7 +63,7 @@ namespace isn.Controllers
[HttpGet("~/index.json")]
public IActionResult ApiIndex()
{
return Ok(ressources);
return Ok(_ressources);
}
@ -91,7 +90,7 @@ namespace isn.Controllers
}
if (ModelState.IsValid)
{
return Ok(packageManager.SearchByName(q,skip,take,prerelease,packageType));
return Ok(_packageManager.SearchByName(q,skip,take,prerelease,packageType));
}
return BadRequest(new { error = ModelState });
}
@ -116,7 +115,7 @@ namespace isn.Controllers
ModelState.AddModelError("semVerLevel", defaultSemVer + " expected");
}
return Ok(packageManager.AutoComplete(id,skip,take,prerelease,packageType));
return Ok(_packageManager.AutoComplete(id,skip,take,prerelease,packageType));
}
// TODO GET {@id}/{LOWER_ID}/index.json
// LOWER_ID URL string yes The package ID, lowercased
@ -145,7 +144,7 @@ namespace isn.Controllers
}
return Ok(new
{
versions = packageManager.GetVersions(
versions = _packageManager.GetVersions(
id, parsedVersion, prerelease, packageType, skip, take)
});
}
@ -159,7 +158,7 @@ namespace isn.Controllers
[FromRoute] string id, [FromRoute] string lower,
[FromRoute] string idf, [FromRoute] string lowerf)
{
var pkgpath = Path.Combine(nugetSettings.PackagesRootDir,
var pkgpath = Path.Combine(_nugetSettings.PackagesRootDir,
id, lower, $"{idf}.{lowerf}.nupkg"
);
@ -176,7 +175,7 @@ namespace isn.Controllers
[FromRoute][SafeName][Required] string idf,
[FromRoute][SafeName][Required] string lowerf)
{
var pkgpath = Path.Combine(nugetSettings.PackagesRootDir,
var pkgpath = Path.Combine(_nugetSettings.PackagesRootDir,
id, lower, $"{idf}.{lowerf}.nuspec");
FileInfo pkgfi = new FileInfo(pkgpath);

@ -20,6 +20,7 @@ using Unleash.ClientFactory;
using isnd.Entities;
using Microsoft.Extensions.Options;
using isnd.Helpers;
using isnd.Services;
namespace isn
{
@ -70,7 +71,6 @@ namespace isn
var config = s.GetRequiredService<IOptions<UnleashClientSettings>>();
return s.GetRequiredService<Microsoft.AspNetCore.Hosting.IHostingEnvironment>().CreateUnleahClient(config.Value);
});
// _unleashĈlient = env.CreateUnleahClient(unleashClientSettings.Value);
var smtpSettingsconf = Configuration.GetSection("Smtp");
services.Configure<SmtpSettings>(smtpSettingsconf);

Loading…