pondělí 6. října 2014

Vytvoření NuGet package

V první řadě je potřeba vytvořit soubor s definicá balíčku *.nuspec. To vygenerujeme pomocí příkazu
nuget spec
Který spustíme v pracovním adresáři projektu.

Není špatné si nainstalovat NuGet Package Explorer
NuGetPackageExplorer

Ve Visual Studiu pak nastavíme v properties projektu PostBuild Step

cd $(MSBuildProjectDirectory)
NuGet pack -Properties Configuration=Release
REM *** Release Confuguration ***
nuget pack -properties configuration=release -IncludeReferencedProjects
REM *** Release Confuguration ***
nuget pack -properties configuration=release -symbols -IncludeReferencedProjects
REM *** Push NuGet Package ***
NuGet.exe push -source \\pc-Zbynek\NuGetPackages\ My.Assembly.1.4.3.0.nupkg

středa 1. října 2014

Nuget server - neúplný návod

Co je potřeba udělat ?

  1. Vytvořit prázdný ASP web form projekt
  2. Nainstalovat z nugetu balíček Nuget.Server (Install-Package Nuget.Server)
  3. v App.configu vyplnit apiKey na libovolné heslo
  4. Vytvořit novou stránku na IIS a nastavit jí 
  5. Nastavi Publish profile na váš IIS server
  6. Vypublikovat aplikaci
  7. Nastavit složce Packages oprávnění zápisu pro uživatele IIS_IUSRS (nebo uživatele AppPoolu)
Práce na půl hodiny

Aby jsme mohli vytvořit vlastní balíčet. Následně je potřeba:
  1. Si stáhnout NuGet.exe z webu https://nuget.codeplex.com/releases
  2. vytvořit si příkaz pro vytvoření specifikace
  3. Balíčku
  4. Publish do NugetRepository
CreateSpec
c:\NugetCommand\NuGet.exe spec "lib\MyAssembly.dll"

CreatePack
c:\NugetCommand\NuGet.exe pack "lib\MyAssembly.dll.nuspec"

Deploy Command
nuget push MyAssembly.1.0.0.nupkg -source http://pc-zbynek/ -ApiKey NwoNugetKey


Podařilo se mi rozjet NugetServerAplikaci na lokálním serveru.

Na Win8 je potřeba povoli Internetovou informařní služnu a pomocí Platform instaleru doinstalovat podporu pro .NET 4.5

Stránce je potřeba nastavit applikační Pool na .NET v4.5 který jsme právě nainstalovali.

Ale potom jsem se dvě a půl hodiny snažil uploadovat balíček na server.


 Ve Visual Studiju si ale můžete nastavit Package source na lokální NuGet server ale balíčky do něj budete moc dostat pouze kopírováním do složky C:\inetpub\NugetServer\Packages





Failed to process request. 'Not Found'.
Vzdálený server vrátil chybu: (404) Nenalezeno..

https://nuget.codeplex.com/discussions/568792


Na Windows 7
Na Win 7 se mi server podařilo rozjed podstatně rychleji. Při Push příkazu mi vracel chybu

Failed to process request. 'Internal Server Error'.
Vzdálený server vrátil chybu: (500) Vnitřní chyba serveru..

Ale po nastavení oprávnění do složky Packages se balíčen na serveru objevil

Zdroj:
https://www.youtube.com/watch?v=KaEmsdf0oKU