Add Persisten Volume Example for Unikraft Cloud#440
Add Persisten Volume Example for Unikraft Cloud#440Dan-Andrei-Simionescu wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
Pull request overview
Adds a new “persistent volume” walkthrough under persistent_volume_example/, showing how to provision and attach block volumes on Unikraft Cloud using Kraft CLI, Unikraft CLI, and direct API calls.
Changes:
- Introduces a minimal C app + container/rootfs packaging for demonstrating state persisted under
/data. - Adds a step-by-step README for volume lifecycle operations (create/list/attach/inspect/delete).
- Adds helper shell scripts for interacting with the Unikraft Cloud volumes/instances API.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 13 comments.
Show a summary per file
| File | Description |
|---|---|
| persistent_volume_example/README.md | End-to-end tutorial and command snippets for persistent volumes via CLI/API. |
| persistent_volume_example/ukc.config | Environment variable exports for user/metro/token used by the example. |
| persistent_volume_example/Kraftfile | Kraft packaging configuration for the example unikernel image. |
| persistent_volume_example/Dockerfile | Builds and packages the demo C binary into a minimal image. |
| persistent_volume_example/app_storage.c | Demo app that reads/writes a counter to /data/counter.txt. |
| persistent_volume_example/api/create-volume.sh | API helper to create a volume. |
| persistent_volume_example/api/list-volumes.sh | API helper to list volumes. |
| persistent_volume_example/api/attach-volume-deploy.sh | API helper to deploy an instance with an attached volume. |
| persistent_volume_example/api/get-volume-info.sh | API helper to fetch volume info. |
| persistent_volume_example/api/delete-volume.sh | API helper to delete a volume. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Antonio-88
left a comment
There was a problem hiding this comment.
Pretty good example using persistent volumes, I find that the inclusion of api/ often comes in handy. Also, the README is extensive and coherent .
acdf25d to
fa7095d
Compare
|
I reviewed the changes and tested the project. Everything worked correctly, and I didn’t encounter any issues. The implementation is clear and easy to follow. |
razvand
left a comment
There was a problem hiding this comment.
Thanks, @Dan-Andrei-Simionescu . Loosk good. Some comments.
- Start your commit line with capital. I recommend you use the verb
Introduce, as inIntroduce persistent volume example. - Add additional in the commit message (i.e. commit body) where you detail the content of the commit.
- Sign-off your commit.
- Use a blank line after each section heading.
- For commands and code snippets use triple backticks, followed by the the content type (json, console, etc.). See information here.
- Remove trainling whitespaces on lines (if any).
- Use the name
persistent-volume/as directory name (with-- minus) instead ofpersistent_volume_example/.
278faec to
d50d040
Compare
This example demonstrates how to provision, attach, and manage persistent block storage for Unikraft Cloud instances. It includes a C application that logs execution counts to a mounted volume, alongside Kraftfile configurations and detailed README instructions for both CLI and API usage. Signed-off-by: Dan-Andrei-Simionescu <andreidas04@gmail.com>
d50d040 to
0f95a78
Compare
No description provided.