Skip to content

Commit 0576dbd

Browse files
authored
machine: add --cachedrive-size flag to run and update (#4805)
1 parent f0c9fb2 commit 0576dbd

File tree

3 files changed

+22
-3
lines changed

3 files changed

+22
-3
lines changed

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ require (
7373
github.com/spf13/pflag v1.0.10
7474
github.com/spf13/viper v1.20.1
7575
github.com/stretchr/testify v1.11.1
76-
github.com/superfly/fly-go v0.4.2
76+
github.com/superfly/fly-go v0.4.3
7777
github.com/superfly/graphql v0.2.6
7878
github.com/superfly/lfsc-go v0.1.1
7979
github.com/superfly/macaroon v0.3.0

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -653,8 +653,8 @@ github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu
653653
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
654654
github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8=
655655
github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU=
656-
github.com/superfly/fly-go v0.4.2 h1:QDAKDUSjR0tzYHoSqWTaHJXkECTwNl/F6RUFAaWikgQ=
657-
github.com/superfly/fly-go v0.4.2/go.mod h1:9ZPc5Yagx2y4gQJ0yP1+xxHyWR9U9lA2QSKjb5h4944=
656+
github.com/superfly/fly-go v0.4.3 h1:vJd7t3gY0VfXTJacKYFIqZJ1WnMjJE5gHZxQbgKUe6g=
657+
github.com/superfly/fly-go v0.4.3/go.mod h1:9ZPc5Yagx2y4gQJ0yP1+xxHyWR9U9lA2QSKjb5h4944=
658658
github.com/superfly/graphql v0.2.6 h1:zppbodNerWecoXEdjkhrqaNaSjGqobhXNlViHFuZzb4=
659659
github.com/superfly/graphql v0.2.6/go.mod h1:CVfDl31srm8HnJ9udwLu6hFNUW/P6GUM2dKcG1YQ8jc=
660660
github.com/superfly/lfsc-go v0.1.1 h1:dGjLgt81D09cG+aR9lJZIdmonjZSR5zYCi7s54+ZU2Q=

internal/command/machine/run.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,10 @@ var sharedFlags = flag.Set{
163163
Name: "swap-size",
164164
Description: "Swap size in MB. Accepts a plain number (in MB) or a human-readable size (e.g. 512mb, 1gb).",
165165
},
166+
flag.String{
167+
Name: "cachedrive-size",
168+
Description: "Cache drive size in MB. Accepts a plain number (in MB) or a human-readable size (e.g. 512mb, 10gb). Set to 0 to disable.",
169+
},
166170
}
167171

168172
var runOrCreateFlags = flag.Set{
@@ -758,6 +762,21 @@ func determineMachineConfig(
758762
machineConf.Init.SwapSizeMB = new(sizeMB)
759763
}
760764

765+
if flag.IsSpecified(ctx, "cachedrive-size") {
766+
sizeMB, err := helpers.ParseSize(flag.GetString(ctx, "cachedrive-size"), units.RAMInBytes, units.MiB)
767+
if err != nil {
768+
return machineConf, fmt.Errorf("invalid cachedrive size: %w", err)
769+
}
770+
if sizeMB < 0 {
771+
return machineConf, fmt.Errorf("--cachedrive-size must not be negative")
772+
}
773+
if sizeMB == 0 {
774+
machineConf.CacheDrive = nil
775+
} else {
776+
machineConf.CacheDrive = &fly.MachineCacheDrive{SizeMB: uint64(sizeMB)}
777+
}
778+
}
779+
761780
parsedEnv, err := parseKVFlag(ctx, "env", machineConf.Env)
762781
if err != nil {
763782
return machineConf, err

0 commit comments

Comments
 (0)