From 3c373d118ddcf70188500e5add070074454ffcd1 Mon Sep 17 00:00:00 2001
From: Adriano Cunha <35786489+adrcunha@users.noreply.github.com>
Date: Sat, 14 Jul 2018 02:27:35 -0700
Subject: [PATCH] Initial Makefile for managing the Knative Prow instance (#5)

Bonus: add boilerplate to config.yaml
---
 prow/Makefile    | 26 ++++++++++++++++++++++++++
 prow/config.yaml | 14 ++++++++++++++
 2 files changed, 40 insertions(+)
 create mode 100644 prow/Makefile

diff --git a/prow/Makefile b/prow/Makefile
new file mode 100644
index 0000000000..3b2951b69d
--- /dev/null
+++ b/prow/Makefile
@@ -0,0 +1,26 @@
+# Copyright 2018 The Knative Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+CLUSTER ?= prow
+PROJECT ?= knative-tests
+ZONE    ?= us-central1-f
+
+get-cluster-credentials:
+	gcloud container clusters get-credentials "$(CLUSTER)" --project="$(PROJECT)" --zone="$(ZONE)"
+
+update-config: get-cluster-credentials
+	kubectl create configmap config --from-file=config.yaml=config.yaml --dry-run -o yaml | kubectl replace configmap config -f -
+
+update-plugins: get-cluster-credentials
+	kubectl create configmap plugins --from-file=plugins=plugins.yaml --dry-run -o yaml | kubectl replace configmap plugins -f -
diff --git a/prow/config.yaml b/prow/config.yaml
index dedd9ec4b1..44fa3ebd54 100644
--- a/prow/config.yaml
+++ b/prow/config.yaml
@@ -1,3 +1,17 @@
+# Copyright 2018 The Knative Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 plank:
   job_url_template: 'https://gubernator.knative.dev/build/{{with .Spec.Refs}}knative-prow/{{if or (eq .Spec.Type "presubmit") (eq .Spec.Type "batch")}}pr-logs/pull{{with .Spec.Refs}}/{{.Org}}_{{.Repo}}{{end}}{{else}}logs{{end}}{{if eq .Spec.Type "presubmit"}}/{{with index .Spec.Refs.Pulls 0}}{{.Number}}{{end}}{{else if eq .Spec.Type "batch"}}/batch{{end}}/{{.Spec.Job}}/{{.Status.BuildID}}/'
   report_template: '[Full PR test history](https://gubernator.knative.dev/pr/{{.Spec.Refs.Org}}_{{.Spec.Refs.Repo}}/{{with index .Spec.Refs.Pulls 0}}{{.Number}}{{end}}). [Your PR dashboard](https://gubernator.knative.dev/pr/{{with index .Spec.Refs.Pulls 0}}{{.Author}}{{end}}).'