IT:AD:NuGet:HowTo:Use Powershell to Remove Stale Nuget.org Listings

Example:

$name="XAct.Core";$i=50; While ($i -le 500) {c:\ProgramFiles\Nuget\Nuget delete $name 0.0.$i 3ac5a5f6... -NoPrompt; $i +=1}

Taken a bit further, that became:

$xml = [xml](get-content "c:\NugetPackagesToCleanup.config");
$packageNodes = $xml.SelectNodes("/packages/package");

$packageNameList = New-Object "System.Collections.ObjectModel.Collection[System.String]"
foreach ($_ in $packageNodes) {  $packageNameList.Add($_.innerText)}

  Write-Host("....");

  foreach($package in $packageNameList){
    Write-Host ($package);
  
    $i=50; 
    $iMax=530;
    $apiKey="...";
  
    While ($i -le $iMax) 
    {
      c:\ProgramFiles\Nuget\Nuget delete $package 0.0.$i -ApiKey $apiKey -NoPrompt
   $i +=1;
    }
  }

That's searching something that looks like:

<?xml version="1.0"?>
<packages>
  <package>XAct.Collections</package>
  <package>XAct.Core</package>
  <package>XAct.Data</package>
  <package>XAct.IO</package>
  <package>XAct.Data.Db</package>
  <package>XAct.UI.Core</package>
  <package>XAct.UI.Web</package>
  <package>XAct.Data.Mapping</package>
  <package>XAct.Resources</package>
  <package>XAct.Resources.Db</package>
  <package>XAct.Services.IoC.ASPMVC.Ninject</package>
  <package>XAct.Services.IoC.ASPMVC.Unity</package>
  <package>XAct.Services.IoC.ASPNet.Ninject</package>
  <package>XAct.Services.IoC.ASPNet.Unity</package>
  <package>XAct.Services.IoC.Ninject</package>
  <package>XAct.Services.IoC.Unity</package>
  <package>XAct.Settings</package>
  <package>XAct.Data.Db.EF</package>
  <package>XAct.Environment.IIS</package>
  <package>XAct.IO.FS</package>
  <package>XAct.Runtime.InteropServices</package>
  <package>XAct.Security</package>
  <package>XAct.Security.Windows</package>
  <package>XAct.Workflows.K2.CLient</package>
  <package>XAct.IO.TemplateENgines.NVelocity</package>
  <package>XAct.IO.Compression.DotNetZip</package>
  <package>XAct.IO.Compression.ZipPackage</package>
  <package>XAct.Security.Web</package>
  <package>XAct.EnterpriseLibrary</package>
  <package>XAct.Diagnostics.Log4Net</package>
  <package>XAct.IO.FileSystemWatcher</package>
  <package>XAct.Configuration</package>
  <package>XAct.Settings</package>
  <package>XAct.Dependency.K2.Client</package>
  <package>XAct.Settings.Host.AppSettings</package>
  <package>XAct.UI.Web.Mvc.v3</package>
  <package>XAct.Workflows</package>
  <package>XAct.ServiceProcess</package>
  <package>XAct.Services.IoC</package>
  <package>XAct.Workflows.Mocsk</package>
  <package>XAct.Resources.Db.EF</package>
  <package>XAct.Services.IoC.AspMvc</package>
  <package>XAct.Domain</package>
  <package>XAct.ObjectMapping</package>
  <package>XAct.History</package>
  <package>XAct.Sharepoint.Client</package>
  <package>XAct.XAct.UI.Web.Resources</package>
  <package>XAct.History.I.Db.EF</package>
  <package>XAct.UI.Db.EF</package>
  <package>XAct.UI.Web.Mvc</package>
  <package>XAct.ObjectMapping.AUtoMapper</package>
  <package>XAct.Language</package>
  <package>XAct.Languages.JS.Jurassic</package>
  <package>XAct.Rules</package>
  <package>XAct.Rules.Db.EF</package>

</packages>
  • /home/skysigal/public_html/data/pages/it/ad/nuget/howto/use_powershell_to_remove_stale_nuget.org_listings.txt
  • Last modified: 2023/11/04 01:51
  • by 127.0.0.1