...
|
...
|
@@ -13,6 +13,7 @@ import (
|
13
|
13
|
|
14
|
14
|
"k8s.io/kubernetes/pkg/credentialprovider"
|
15
|
15
|
kcmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util"
|
|
16
|
+ "k8s.io/kubernetes/pkg/util/interrupt"
|
16
|
17
|
|
17
|
18
|
cmdutil "github.com/openshift/origin/pkg/cmd/util"
|
18
|
19
|
"github.com/openshift/origin/pkg/cmd/util/clientcmd"
|
...
|
...
|
@@ -119,10 +120,16 @@ func (o *DockerbuildOptions) Run() error {
|
119
|
119
|
if glog.V(2) {
|
120
|
120
|
glog.Infof("Builder: "+format, args...)
|
121
|
121
|
} else {
|
122
|
|
- fmt.Fprintf(e.ErrOut, "# %s\n", fmt.Sprintf(format, args...))
|
|
122
|
+ fmt.Fprintf(e.ErrOut, "--> %s\n", fmt.Sprintf(format, args...))
|
123
|
123
|
}
|
124
|
124
|
}
|
125
|
|
- return stripLeadingError(e.Build(f, o.Arguments))
|
|
125
|
+ safe := interrupt.New(func(os.Signal) { os.Exit(1) }, func() {
|
|
126
|
+ glog.V(5).Infof("invoking cleanup")
|
|
127
|
+ if err := e.Cleanup(); err != nil {
|
|
128
|
+ fmt.Fprintf(o.Err, "error: Unable to clean up build: %v\n", err)
|
|
129
|
+ }
|
|
130
|
+ })
|
|
131
|
+ return safe.Run(func() error { return stripLeadingError(e.Build(f, o.Arguments)) })
|
126
|
132
|
}
|
127
|
133
|
|
128
|
134
|
func stripLeadingError(err error) error {
|