https://github.com/loic-sharma/nuget.assembly
Extracts assemblies from NuGet packages into a content-addressable store.
https://github.com/loic-sharma/nuget.assembly
Last synced: 3 months ago
JSON representation
Extracts assemblies from NuGet packages into a content-addressable store.
- Host: GitHub
- URL: https://github.com/loic-sharma/nuget.assembly
- Owner: loic-sharma
- License: mit
- Created: 2019-10-01T04:51:56.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-10-01T05:00:39.000Z (over 5 years ago)
- Last Synced: 2025-02-02T12:47:55.173Z (4 months ago)
- Language: C#
- Size: 17.6 KB
- Stars: 0
- Watchers: 4
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# NuGet Assembly Store
Extracts assemblies from NuGet packages into a content-addressable store.
Extract Newtonsoft.Json to disk:
```ps1
dotnet NuGet.Assembly.dll extract Newtonsoft.Json 12.0.1
```The files' names are the hex-encoded SHA-512 hash of the files' contents.
## Running on Azure
First, setup the Azure resources:
1. Create a Azure Blob Storage account
1. Create an Azure Blob Storage container
1. Create a Service Bus queue
1. Update `NuGet.Assembly/appsettings.json`
1. Set `ServiceBusConnectionString`
1. Publish `NuGet.Assembly.Functions` to Azure Functions
1. Use the consumption plan if possible
1. Add a connection string `ServiceBusConnectionString`
1. Add app setting `BlobStorageConnectionString` (use Key Vault)
1. Add app setting `BlobContainerName`Now use the `NuGet.Assembly` tool to enqueue packages. You can queue a single package:
```ps1
dotnet NuGet.Assembly.dll queue Newtonsoft.Json 12.0.1
```Or, you can queue all packages:
```ps1
dotnet NuGet.Assembly.dll queue-all
```Enqueueing all NuGet.org packages should take ~20 minutes. The Azure Function should be able to process all packages in a few hours on the consumption plan.