Skip to content

Commit 5a4d7bc

Browse files
authored
Merge pull request #6 from UKHomeOffice/fixes
Few fixes
2 parents 9ffd0c8 + 12e7f8e commit 5a4d7bc

File tree

2 files changed

+15
-15
lines changed

2 files changed

+15
-15
lines changed

main.go

+5-11
Original file line numberDiff line numberDiff line change
@@ -92,17 +92,13 @@ func run(c *cli.Context) error {
9292
}
9393
defer f.Close()
9494

95-
resource := ObjectResource{}
96-
resource.FileName = fn
97-
data, err := ioutil.ReadAll(f)
98-
if err != nil {
95+
resource := ObjectResource{FileName: fn}
96+
if err := render(&resource, envToMap()); err != nil {
9997
return cli.NewExitError(err.Error(), 1)
10098
}
101-
if err := yaml.Unmarshal(data, &resource); err != nil {
99+
if err := yaml.Unmarshal(resource.Template, &resource); err != nil {
102100
return cli.NewExitError(err.Error(), 1)
103101
}
104-
resource.Template = data
105-
106102
if err := deploy(c, &resource); err != nil {
107103
return cli.NewExitError(err.Error(), 1)
108104
}
@@ -119,9 +115,7 @@ func deploy(c *cli.Context, r *ObjectResource) error {
119115
return err
120116
}
121117

122-
if err = render(r, envToMap(), stdin); err != nil {
123-
return err
124-
}
118+
stdin.Write(r.Template)
125119
stdin.Close()
126120
if err != nil {
127121
return err
@@ -159,7 +153,7 @@ func deploy(c *cli.Context, r *ObjectResource) error {
159153
continue
160154
}
161155

162-
if r.DeploymentStatus.UnavailableReplicas == 0 {
156+
if r.DeploymentStatus.UnavailableReplicas == 0 || r.DeploymentStatus.AvailableReplicas == r.DeploymentStatus.Replicas {
163157
fmt.Printf("%q deployment is complete. Available replicas: %d.\n",
164158
r.Name, r.DeploymentStatus.AvailableReplicas)
165159
return nil

tmpl.go

+10-4
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,24 @@
11
package main
22

33
import (
4-
"io"
4+
"bytes"
5+
"io/ioutil"
56
"os"
67
"strings"
78
"text/template"
89
)
910

10-
func render(r *ObjectResource, vars map[string]string, w io.Writer) error {
11-
t := template.Must(template.New(r.FileName).Parse(string(r.Template)))
12-
err := t.Execute(w, vars)
11+
func render(r *ObjectResource, vars map[string]string) error {
12+
tmpl, err := ioutil.ReadFile(r.FileName)
1313
if err != nil {
1414
return err
1515
}
16+
var b bytes.Buffer
17+
t := template.Must(template.New(r.FileName).Parse(string(tmpl)))
18+
if err = t.Execute(&b, vars); err != nil {
19+
return err
20+
}
21+
r.Template = b.Bytes()
1622
return nil
1723
}
1824

0 commit comments

Comments
 (0)