L2Analytics.Deploy
6.0.0
See the version list below for details.
dotnet add package L2Analytics.Deploy --version 6.0.0
NuGet\Install-Package L2Analytics.Deploy -Version 6.0.0
<PackageReference Include="L2Analytics.Deploy" Version="6.0.0" />
<PackageVersion Include="L2Analytics.Deploy" Version="6.0.0" />
<PackageReference Include="L2Analytics.Deploy" />
paket add L2Analytics.Deploy --version 6.0.0
#r "nuget: L2Analytics.Deploy, 6.0.0"
#:package L2Analytics.Deploy@6.0.0
#addin nuget:?package=L2Analytics.Deploy&version=6.0.0
#tool nuget:?package=L2Analytics.Deploy&version=6.0.0
L2Analytics.Deploy
Transport-agnostic operations library for F#. Write a plain function and a pair of request/response types, wire it up as a Contract with JSON codecs, and choose an adapter to expose it — AWS Lambda, an ASP.NET Core web server (via Falco), or a command-line tool — without touching the contract's own code.
Packages
| Package | Description |
|---|---|
L2Analytics.Deploy |
Core: Codec, Contract, OpenApi |
L2Analytics.Deploy.Lambda |
AWS Lambda adapter |
L2Analytics.Deploy.Falco |
ASP.NET Core (Falco) adapter |
L2Analytics.Deploy.Cli |
CLI (stdin/stdout) adapter |
L2Analytics.Deploy.Templates |
dotnet new deploy scaffolding template |
Publishing a new release
This repo uses NuGet Trusted Publishing — no long-lived API key needed. Instead, nuget.org validates a short-lived OIDC token issued by GitHub at publish time, verifying it came from this repo and workflow.
One-time setup on nuget.org (already done)
A Trusted Publisher is registered at the L2Analytics owner level on nuget.org covering all packages pushed from this repo's publish.yml workflow.
Optional GitHub Actions secret:
| Secret | Value |
|---|---|
NUGET_USER |
Your nuget.org username (not email). If unset, workflow defaults to L2Admin. |
Releasing
Create a GitHub Release with a tag of the form v<major>.<minor>.<patch> (e.g. v1.0.0). Publishing the release triggers the workflow — all five packages are packed at that version and pushed to nuget.org automatically.
Dry-run testing before a real release
You can test the full pipeline (build + pack + NuGet trusted login) without pushing:
- In GitHub Actions, run
Publish to NuGetvia Run workflow - Set
publish=false(default) - Optionally set
version(default:0.0.0-dryrun)
This validates OIDC/Trusted Publishing wiring before you publish a real release tag.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- FSharp.Core (>= 10.1.301)
NuGet packages (4)
Showing the top 4 NuGet packages that depend on L2Analytics.Deploy:
| Package | Downloads |
|---|---|
|
L2Analytics.Deploy.Lambda
AWS Lambda deployment target for L2Analytics.Deploy. Provides LambdaConfig, Lambda.run, and an MSBuild props file that automatically configures consumer projects for the provided.al2023 custom runtime. |
|
|
L2Analytics.Deploy.Cli
Command-line deployment target for L2Analytics.Deploy. Every Contract becomes a subcommand (its Name segments joined by spaces); the payload is read from stdin as raw JSON, matching Contract.RequestCodec directly with no envelope — the same OpenAPI document L2Analytics.Deploy.Falco uses describes the request/response schemas here too. |
|
|
L2Analytics.Deploy.Falco
Falco (ASP.NET Core) deployment target for L2Analytics.Deploy. Every Contract becomes a POST endpoint at its httpPath — the OpenAPI document generated by L2Analytics.Deploy.OpenApi describes this adapter's wire format exactly, with no envelope, unlike L2Analytics.Deploy.Lambda. |
|
|
L2Analytics.Deploy.Wasm
Browser/Node WebAssembly deployment target for L2Analytics.Deploy. Provides WasmConfig, Wasm.run (TypeScript codegen from Contracts), and Dispatch (the runtime piece the one static JSExport shim delegates to). Unlike the other adapters, there is no MSBuild props file — the wasm-side C# shim is a small, static, hand-written file, not generated. |
GitHub repositories
This package is not used by any popular GitHub repositories.