Fix branch names support for k8s runtime (#2020)

* fix branch names support for k8s

* remove logs

Co-authored-by: Asim Aslam <asim@aslam.me>
This commit is contained in:
Dominic Wong
2020-09-25 08:41:28 +01:00
committed by GitHub
parent a18806c9ef
commit 76275e857c
3 changed files with 10 additions and 6 deletions

View File

@@ -211,7 +211,6 @@ func (k *kubernetes) getService(labels map[string]string, opts ...client.GetOpti
// now try get a deeper status
state := item.Status.Containers[0].State
// set start time
if state.Running != nil {
svc.Metadata["started"] = state.Running.Started
@@ -484,7 +483,7 @@ func (k *kubernetes) Read(opts ...runtime.ReadOption) ([]*runtime.Service, error
// add version to labels if a version has been supplied
if len(options.Version) > 0 {
labels["version"] = options.Version
labels["version"] = client.Format(options.Version)
}
if len(options.Type) > 0 {
@@ -521,7 +520,7 @@ func (k *kubernetes) Update(s *runtime.Service, opts ...runtime.UpdateOption) er
}
if len(s.Version) > 0 {
labels["version"] = s.Version
labels["version"] = client.Format(s.Version)
}
// get the existing service

View File

@@ -88,13 +88,16 @@ func CertsFromPEM(pemCerts []byte) ([]*x509.Certificate, error) {
}
// Format is used to format a string value into a k8s valid name
// https://kubernetes.io/docs/concepts/overview/working-with-objects/names/
func Format(v string) string {
// to lower case
v = strings.ToLower(v)
// / to dashes
v = strings.ReplaceAll(v, "/", "-")
// dots to dashes
v = strings.ReplaceAll(v, ".", "-")
replaceChars := []string{"/", ".", "_"}
for _, s := range replaceChars {
v = strings.ReplaceAll(v, s, "-")
}
// limit to 253 chars
if len(v) > 253 {
v = v[:253]

View File

@@ -36,6 +36,8 @@ func TestFormatName(t *testing.T) {
{"foo.bar", "foo-bar"},
{"Foo.Bar", "foo-bar"},
{"go.micro.foo.bar", "go-micro-foo-bar"},
{"go.micro.foo.bar", "go-micro-foo-bar"},
{"foo/bar_baz", "foo-bar-baz"},
}
for _, test := range testCases {