Skip to content

Normalize the CLI-build block across all Dockerfiles#378

Closed
lilydoar wants to merge 1 commit into
lilydoar/stack/11from
lilydoar/stack/12
Closed

Normalize the CLI-build block across all Dockerfiles#378
lilydoar wants to merge 1 commit into
lilydoar/stack/11from
lilydoar/stack/12

Conversation

@lilydoar
Copy link
Copy Markdown
Contributor

@lilydoar lilydoar commented May 28, 2026

Stacked PRs:


Normalize the CLI-build block across all Dockerfiles

All seven Dockerfiles build the omes CLI with the same set of inputs, but the
duplicated block had drifted: java had metrics/scenarios in a different order,
dotnet folded an unrelated workers/proto/harness copy into it, typescript
appended versions.env, and the build invoked go via different paths
(go vs /usr/local/go/bin/go). That divergence is what let the earlier COPY-set
regression hide.

Unify them on one byte-identical block (the cached go-mod-download pattern):

  • ensure go is on PATH in every image so the build line is identical
  • move per-language extras out of the shared block into each file's
    language-specific section (cli: workers/proto for kitchen-sink-gen;
    typescript: versions.env; dotnet: workers/proto/harness)

The shared block is now identical across all seven (verified by hash). Built
cli, go, and ruby images with podman to cover both base-image patterns
(golang-native and go-installed-on-PATH).

@lilydoar lilydoar requested review from a team as code owners May 28, 2026 21:54
All seven Dockerfiles build the omes CLI with the same set of inputs, but the
duplicated block had drifted: java had metrics/scenarios in a different order,
dotnet folded an unrelated workers/proto/harness copy into it, typescript
appended versions.env, and the build invoked go via different paths
(go vs /usr/local/go/bin/go). That divergence is what let the earlier COPY-set
regression hide.

Unify them on one byte-identical block (the cached go-mod-download pattern):
- ensure go is on PATH in every image so the build line is identical
- move per-language extras out of the shared block into each file's
  language-specific section (cli: workers/proto for kitchen-sink-gen;
  typescript: versions.env; dotnet: workers/proto/harness)

The shared block is now identical across all seven (verified by hash). Built
cli, go, and ruby images with podman to cover both base-image patterns
(golang-native and go-installed-on-PATH).

stack-info: PR: #378, branch: lilydoar/stack/12
@lilydoar lilydoar force-pushed the lilydoar/stack/11 branch from 42bf863 to 9f1faf2 Compare May 28, 2026 21:54
@lilydoar lilydoar force-pushed the lilydoar/stack/12 branch from d67c18c to 99bdb6d Compare May 28, 2026 21:54
lilydoar added a commit that referenced this pull request May 29, 2026
All seven Dockerfiles build the omes CLI with the same set of inputs, but the
duplicated block had drifted: java had metrics/scenarios in a different order,
dotnet folded an unrelated workers/proto/harness copy into it, typescript
appended versions.env, and the build invoked go via different paths
(go vs /usr/local/go/bin/go). That divergence is what let the earlier COPY-set
regression hide.

Unify them on one byte-identical block (the cached go-mod-download pattern):
- ensure go is on PATH in every image so the build line is identical
- move per-language extras out of the shared block into each file's
  language-specific section (cli: workers/proto for kitchen-sink-gen;
  typescript: versions.env; dotnet: workers/proto/harness)

The shared block is now identical across all seven (verified by hash). Built
cli, go, and ruby images with podman to cover both base-image patterns
(golang-native and go-installed-on-PATH).

stack-info: PR: #378, branch: lilydoar/stack/12
lilydoar added a commit that referenced this pull request May 29, 2026
All seven Dockerfiles build the omes CLI with the same set of inputs, but the
duplicated block had drifted: java had metrics/scenarios in a different order,
dotnet folded an unrelated workers/proto/harness copy into it, typescript
appended versions.env, and the build invoked go via different paths
(go vs /usr/local/go/bin/go). That divergence is what let the earlier COPY-set
regression hide.

Unify them on one byte-identical block (the cached go-mod-download pattern):
- ensure go is on PATH in every image so the build line is identical
- move per-language extras out of the shared block into each file's
  language-specific section (cli: workers/proto for kitchen-sink-gen;
  typescript: versions.env; dotnet: workers/proto/harness)

The shared block is now identical across all seven (verified by hash). Built
cli, go, and ruby images with podman to cover both base-image patterns
(golang-native and go-installed-on-PATH).

stack-info: PR: #378, branch: lilydoar/stack/12
@lilydoar
Copy link
Copy Markdown
Contributor Author

Closing — the module-organization stack was rebased (devserver move dropped, since devserver must stay exported for temporal to import it). Recreating the stack fresh.

@lilydoar lilydoar closed this May 29, 2026
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.

1 participant