Skip to content

Commit 8135713

Browse files
feat(vz-cli): support one-command vm patch create specs
1 parent 0fcfb72 commit 8135713

3 files changed

Lines changed: 477 additions & 34 deletions

File tree

README.md

Lines changed: 8 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -137,37 +137,23 @@ sudo vz vm provision --image ~/.vz/images/base.img --allow-unpinned
137137
# Generate an Ed25519 signing key (PKCS#8 PEM)
138138
openssl genpkey -algorithm Ed25519 -out /tmp/vz-patch-signing-key.pem
139139

140-
# Prepare operations and payload digests
141-
cat >/tmp/patch-operations.json <<'JSON'
142-
[
143-
{
144-
"type": "write_file",
145-
"path": "/usr/local/libexec/vz-agent",
146-
"content_digest": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
147-
"mode": 493
148-
},
149-
{
150-
"type": "set_mode",
151-
"path": "/usr/local/libexec/vz-agent",
152-
"mode": 493
153-
}
154-
]
155-
JSON
156-
157-
mkdir -p /tmp/patch-payload
158-
cp /path/to/vz-agent /tmp/patch-payload/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
159-
140+
# One-command inline patch creation (no operations.json or payload directory required)
160141
vz vm patch create \
161142
--bundle /tmp/patch-1.vzpatch \
162143
--base-id stable \
163-
--operations /tmp/patch-operations.json \
164-
--payload-dir /tmp/patch-payload \
144+
--mkdir /usr/local/libexec:755 \
145+
--write-file /path/to/vz-agent:/usr/local/libexec/vz-agent:755 \
146+
--symlink /usr/local/bin/vz-agent:/usr/local/libexec/vz-agent \
147+
--set-owner /usr/local/libexec/vz-agent:0:0 \
148+
--set-mode /usr/local/libexec/vz-agent:755 \
165149
--signing-key /tmp/vz-patch-signing-key.pem
166150

167151
vz vm patch verify --bundle /tmp/patch-1.vzpatch
168152
sudo vz vm patch apply --bundle /tmp/patch-1.vzpatch --root /tmp/mounted-root
169153
```
170154

155+
For advanced CI workflows, `vz vm patch create` also supports `--operations <json>` + `--payload-dir <dir>`.
156+
171157
## Command groups
172158

173159
### Containers

0 commit comments

Comments
 (0)