@@ -38,16 +38,18 @@ jobs:
3838 run : |
3939 version="${GITHUB_REF_NAME#v}"
4040
41- # The tag is the single source of truth: stamp it into both manifests.
42- # Cargo.toml's [package] version is the only line starting with
43- # `version = `; mix.exs has exactly one `version: "..."` (the project
44- # version). `0,/re/` rewrites just the first match.
45- sed -i -E "0,/^version = \"[^\"]*\"/s//version = \"${version}\"/" native/suidhelper/Cargo.toml
41+ # The tag is the single source of truth: stamp it into every package
42+ # manifest. `0,/re/` rewrites only the first match, which for each
43+ # Cargo.toml is its own `[package] version` (xtask is intentionally
44+ # left at 0.0.0 — it is publish = false).
45+ for m in native/suidhelper/Cargo.toml native/suidhelper/meta/Cargo.toml native/guest-agent/Cargo.toml; do
46+ sed -i -E "0,/^version = \"[^\"]*\"/s//version = \"${version}\"/" "$m"
47+ done
4648 sed -i -E "0,/version: \"[^\"]*\"/s//version: \"${version}\"/" mix.exs
4749
4850 git config user.name "github-actions[bot]"
4951 git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
50- git add native/suidhelper/Cargo.toml mix.exs
52+ git add native/suidhelper/Cargo.toml native/suidhelper/meta/Cargo.toml native/guest-agent/Cargo.toml mix.exs
5153
5254 # Idempotent: a re-run after the bump already landed has nothing to commit.
5355 if git diff --cached --quiet; then
@@ -133,6 +135,18 @@ jobs:
133135 - name : Install dependencies
134136 run : mix deps.get
135137
138+ # The gitignored gRPC/guest-agent/suidhelper artifacts are regenerated by
139+ # Mix compilers on every compile; hex.build compiles, so the runner needs
140+ # their toolchain. Mirrors ci.yml.
141+ - name : Install protoc
142+ run : sudo apt-get update && sudo apt-get install -y protobuf-compiler
143+
144+ - name : Install protoc-gen-elixir
145+ run : mix escript.install hex protobuf 0.17.0 --force
146+
147+ - name : Install musl target for the guest-agent build
148+ run : rustup target add x86_64-unknown-linux-musl
149+
136150 - name : Build package tarball
137151 run : mix hex.build --output "hypervm-${{ needs.prepare-release.outputs.version }}.tar"
138152
@@ -191,6 +205,18 @@ jobs:
191205 - name : Install dependencies
192206 run : mix deps.get
193207
208+ # The gitignored gRPC/guest-agent/suidhelper artifacts are regenerated by
209+ # Mix compilers on every compile; hex.build compiles, so the runner needs
210+ # their toolchain. Mirrors ci.yml.
211+ - name : Install protoc
212+ run : sudo apt-get update && sudo apt-get install -y protobuf-compiler
213+
214+ - name : Install protoc-gen-elixir
215+ run : mix escript.install hex protobuf 0.17.0 --force
216+
217+ - name : Install musl target for the guest-agent build
218+ run : rustup target add x86_64-unknown-linux-musl
219+
194220 # HEX_API_KEY authenticates non-interactively; --yes skips the prompt.
195221 # Publishes both the package and its docs.
196222 - name : hex publish
0 commit comments