Skip to content

Rust release asset has ambiguous filename (docker-socket-policy instead of docker-socket-policy-rs-linux-amd64) #18

Description

@abienkowski

Problem

In .github/workflows/release.yml, the release-rust job uploads the binary like this:

- name: Upload Rust binary to release
  run: |
    gh release upload "${{ needs.version.outputs.tag }}" \
      rs/target/release/docker-socket-policy#docker-socket-policy-rs-linux-amd64 \
      --clobber

The <path>#<label> syntax only sets the display label shown in the GitHub UI — it does not rename the uploaded file. The actual asset filename remains docker-socket-policy (the source binary's basename), which is confusingly generic and inconsistent with the other two assets:

  • Go: docker-socket-policy-go
  • Rust: docker-socket-policy (label says docker-socket-policy-rs-linux-amd64, but the real filename doesn't)
  • TypeScript: docker-socket-policy-ts-vX.Y.Z.tar.gz

Confirmed on the v0.2.7 and v0.2.8 releases — both have an asset literally named docker-socket-policy with no language/arch indicator in the filename itself.

Solution

Rename the binary before uploading so the real filename matches the other two languages' convention, e.g.:

- name: Upload Rust binary to release
  run: |
    cp rs/target/release/docker-socket-policy docker-socket-policy-rs-linux-amd64
    gh release upload "${{ needs.version.outputs.tag }}" \
      docker-socket-policy-rs-linux-amd64 \
      --clobber

Which implementation(s) would this affect?

  • Rust

Additional context

Found while reviewing README/CHANGELOG post-first-release (v0.2.7/v0.2.8). Not a blocker — the asset is functional and correctly labeled in the UI — but the raw filename is misleading for anyone downloading via curl/script rather than the UI.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions