Skip to content

Create Octopus.Tentacle.CrossPlatformBundle.Development nuget package#1264

Merged
LukeButters merged 1 commit into
mainfrom
claude/stoic-bassi-091424
Jun 24, 2026
Merged

Create Octopus.Tentacle.CrossPlatformBundle.Development nuget package#1264
LukeButters merged 1 commit into
mainfrom
claude/stoic-bassi-091424

Conversation

@acodrington

@acodrington acodrington commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Background

Following #1164 (which introduced the slim Octopus.Tentacle.CrossPlatformBundle.Server bundle for Octopus Server), this PR adds a third, even slimmer bundle variant — Octopus.Tentacle.CrossPlatformBundle.Development.

It is intended for the secondary bundle usages: local dev environment setup and integration/E2E test setup. It contains only the extractable Tentacle binary archives for the three platforms those scenarios actually run on.

What changed

  • New NUKE target PackCrossPlatformBundleForDevelopment in build/Build.Pack.cs.
  • Required-runtimes list ["win-x64", "osx-arm64", "linux-x64"] in build/Build.cs.
  • Registered the new target on the notional Pack target.
  • Fixed a pre-existing argument-order bug in the full bundle's CreateNugetPackage call (id, description, author, titleid, author, title, description) that scrambled the full CrossPlatformBundle's NuGet metadata.

Bundle contents

  • tentacle-net8.0-win-x64.zip
  • tentacle-net8.0-osx-arm64.tar.gz
  • tentacle-net8.0-linux-x64.tar.gz

Notes / out of scope

  • The in-repo integration-test consumer (NugetTentacleFetcher) is intentionally unchanged. It only downloads hard-coded historical Tentacle versions (the current build uses the locally-built exe), and those releases predate this bundle, so it cannot consume it. Rationale captured in the spec.
  • The external TeamCity build chain and feedz.io deployment wiring are handled separately (other repos), mirroring what was done for the .Server bundle.

How to review this PR

Test Plan

  • dotnet build build/_build.csproj compiles with no errors/warnings
  • PackCrossPlatformBundleForDevelopment appears in the NUKE target list and is a dependency of Pack
  • CI: confirm the produced .nupkg contains exactly the three archives above

🤖 Generated with Claude Code

@acodrington acodrington requested a review from a team as a code owner June 23, 2026 03:11
Adds a new slim NuGet bundle, Octopus.Tentacle.CrossPlatformBundle.Development,
containing only the Tentacle binary archives for the platforms used by local
dev environment setup and integration/E2E test setup:

- tentacle-net8.0-win-x64.zip
- tentacle-net8.0-osx-arm64.tar.gz
- tentacle-net8.0-linux-x64.tar.gz

Mirrors the in-repo footprint of the CrossPlatformBundle.Server variant
(PR #1164): a required-runtimes list in Build.cs, a pack target in
Build.Pack.cs, and registration on the notional Pack target. Also fixes a
pre-existing argument-order bug in the full bundle's CreateNugetPackage call
that scrambled its NuGet metadata.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@acodrington acodrington force-pushed the claude/stoic-bassi-091424 branch from cd4335d to b070d8f Compare June 24, 2026 03:52
Comment thread build/Build.Pack.cs
workingDirectory.CreateDirectory();

// Get the archives (binaries) for all required runtimes
foreach (var runtimeId in CrossPlatformBundleForDevelopmentRequiredRuntimes)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This for loop would probably be simpler unrolled and hard coded.

@LukeButters LukeButters enabled auto-merge (squash) June 24, 2026 06:13
@LukeButters LukeButters merged commit bda1dbe into main Jun 24, 2026
53 checks passed
@LukeButters LukeButters deleted the claude/stoic-bassi-091424 branch June 24, 2026 06:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants