liquidmetal-dev / liquidmetal-dev/flintlock
Update the e2es to run with an `additional_volume` spec
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 1.5k
- Forks
- 73
- Avg merge
- 17h 24m
- Merged PRs (30d)
- 30
Description
Update the e2es with the following patch:
```diff
diff --git a/test/e2e/utils/utils.go b/test/e2e/utils/utils.go
index 6f631c2..7a92c6b 100644
--- a/test/e2e/utils/utils.go
+++ b/test/e2e/utils/utils.go
@@ -79,7 +79,8 @@ func PidRunning(pid int) bool {
func defaultTestMicroVM(name, namespace string) *types.MicroVMSpec {
var (
- binImage = "ghcr.io/weaveworks-liquidmetal/flintlock-kernel:5.10.77"
+ binImage = "ghcr.io/weaveworks-liquidmetal/firecracker-kernel-bin:5.10.77"
+ modImage = "ghcr.io/weaveworks-liquidmetal/firecracker-kernel-modules:5.10.77"
osImage = "ghcr.io/weaveworks-liquidmetal/capmvm-k8s-os:1.23.5"
)
@@ -100,6 +101,16 @@ func defaultTestMicroVM(name, namespace string) *types.MicroVMSpec {
ContainerSource: pointyString(osImage),
},
},
+ AdditionalVolumes: []*types.Volume{
+ {
+ Id: "modules",
+ IsReadOnly: false,
+ Source: &types.VolumeSource{
+ ContainerSource: pointyString(modImage),
+ },
+ MountPoint: pointyString("/lib/modules/5.10.77"),
+ },
+ },
Interfaces: []*types.NetworkInterface{
{
DeviceId: "eth1",
```
When i have done this so far, something weird has happened when running the tests: the mvm will create, sortof, then flintlock or containerd will go into a really aggressive hot loop somewhere around [here](https://github.com/weaveworks-liquidmetal/flintlock/blob/main/infrastructure/firecracker/provider.go#L118). I wasn't able to grab logs at the time, but if I see it again I will.
I have used this feature a bunch and had zero problem, so I wonder if it is something with the tests?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in test/e2e/utils/utils.go at defaultTestMicroVM and review the proposed AdditionalVolumes entry using the firecracker kernel modules image. Run the e2e tests and inspect infrastructure/firecracker/provider.go around line 118 if the microVM enters the reported hot loop. Done means the e2es run successfully with the additional_volume specification.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- testing
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100