Compare commits

..

6 Commits

Author SHA1 Message Date
amery 0233245c5b m/eu/k8s_token [DO-NOT-MERGE]
Signed-off-by: Alejandro Mery <amery@jpi.io>
2024-03-02 21:05:30 +00:00
amery fcb3f2e106 import m tree [DO-NOT-MERGE]
Signed-off-by: Alejandro Mery <amery@jpi.io>
2024-03-02 21:05:30 +00:00
amery 5e4adbfee5 Merge branch 'pr-amery-k8s_token' into next-amery 2024-03-02 21:04:54 +00:00
amery 3a19922b34 cluster: introduce Region.Cluster and m/{region}/k8s_token
Signed-off-by: Alejandro Mery <amery@jpi.io>
2024-03-02 20:59:01 +00:00
amery e97aaf9c8c Merge branch 'pr-amery-ceph' into next-amery 2024-03-02 19:18:37 +00:00
amery 5aab1a3303 ceph: prevent osd label update on startup
Signed-off-by: Alejandro Mery <amery@jpi.io>
2024-03-02 19:15:59 +00:00
3 changed files with 23 additions and 46 deletions
+11 -16
View File
@@ -4,7 +4,6 @@ import (
"io/fs"
"path"
"sort"
"strings"
"darvaza.org/core"
)
@@ -226,26 +225,22 @@ func (z *Zone) loadRegions() error {
}
func (z *Zone) loadClusterToken() error {
var token string
filename := path.Join(z.Name, RegionClusterTokenFileName)
lines, err := z.zones.ReadLines(filename)
if err != nil {
return err
}
if err == nil {
var token string
// first non-empty line
for _, s := range lines {
s = strings.TrimSpace(s)
if s != "" {
token = s
break
for _, s := range lines {
if s != "" {
token = s
break
}
}
}
err = z.zones.setRegionClusterToken(z.Name, token)
if err != nil {
err = core.Wrap(err, filename)
err = z.zones.setRegionClusterToken(z.Name, token)
if err != nil {
err = core.Wrap(err, filename)
}
}
return err
+12 -19
View File
@@ -85,29 +85,22 @@ func (m *Env) writeEnvZone(w io.Writer, z *Zone) {
}
func (m *Env) writeEnvVarInts(w io.Writer, value []int, name string, args ...any) {
var buf bytes.Buffer
var s string
for _, v := range value {
if buf.Len() > 0 {
_, _ = fmt.Fprint(&buf, " ")
if n := len(value); n > 0 {
var buf bytes.Buffer
for i, v := range value {
if i != 0 {
_, _ = fmt.Fprint(&buf, " ")
}
_, _ = fmt.Fprintf(&buf, "%v", v)
}
_, _ = fmt.Fprintf(&buf, "%v", v)
s = buf.String()
}
m.writeEnvVar(w, buf.String(), name, args...)
}
func (m *Env) writeEnvVarStrings(w io.Writer, value []string, name string, args ...any) {
var buf bytes.Buffer
for _, v := range value {
if buf.Len() > 0 {
_, _ = fmt.Fprint(&buf, " ")
}
_, _ = fmt.Fprintf(&buf, "%s", v)
}
m.writeEnvVar(w, buf.String(), name, args...)
m.writeEnvVar(w, s, name, args...)
}
func (m *Env) writeEnvVar(w io.Writer, value string, name string, args ...any) {
-11
View File
@@ -8,14 +8,8 @@ import (
var (
_ MachineIterator = (*Region)(nil)
_ ZoneIterator = (*Region)(nil)
_ RegionIterator = (*Cluster)(nil)
)
// A RegionIterator is a set of Regions we can iterate on
type RegionIterator interface {
ForEachRegion(func(*Region) bool)
}
// Region represents a group of zones geographically related
type Region struct {
m *Cluster
@@ -210,11 +204,6 @@ func (z *Zone) SyncRegions() error {
} else {
err = p.WriteStringFile("none\n", "region")
}
if err == nil {
err = p.RemoveFile(RegionClusterTokenFileName)
}
return err != nil
})
}