CaptureConfig: Update config if it already exists.

Change-Id: I0ecd09a65f0d74806d0329772e04ffa57e9a40ee
diff --git a/apps/capture-config/main.go b/apps/capture-config/main.go
index 73b94d6..86ac22c 100644
--- a/apps/capture-config/main.go
+++ b/apps/capture-config/main.go
@@ -8,6 +8,7 @@
 	"path"
 
 	v1 "k8s.io/api/core/v1"
+	"k8s.io/apimachinery/pkg/api/errors"
 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
 	"k8s.io/client-go/kubernetes"
 	"k8s.io/client-go/rest"
@@ -73,7 +74,15 @@
 	}
 	fmt.Printf("--- MERGED:\n%s\n", string(merged))
 	config := newConig(merged)
-	if _, err := client.Create(context.TODO(), config, metav1.CreateOptions{}); err != nil {
+	_, err = client.Create(context.TODO(), config, metav1.CreateOptions{})
+	if err == nil {
+		return
+	}
+	if !errors.IsAlreadyExists(err) {
+		panic(err)
+	}
+	_, err = client.Update(context.TODO(), config, metav1.UpdateOptions{})
+	if err != nil {
 		panic(err)
 	}
 }