hack: remove redundant license headers in release (#171)

* remove per-yaml license headers in release manifests
* manually insert a license header in release manifests
* add README.md to /kubernetes-manifests indicating they're not ready to use
  (and refer to /release instead).
* regenerate manifests

Signed-off-by: Ahmet Alp Balkan <ahmetb@google.com>
This commit is contained in:
Ahmet Alp Balkan 2019-03-07 09:54:56 -08:00 committed by GitHub
parent d23fe9cf33
commit 342318a9ae
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 96 additions and 223 deletions

13
hack/license_header.txt Normal file
View file

@ -0,0 +1,13 @@
# Copyright 2018 Google LLC
#
# 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.

View file

@ -27,12 +27,31 @@ TAG="${TAG:?TAG env variable must be specified}"
REPO_PREFIX="${REPO_PREFIX:?REPO_PREFIX env variable must be specified}" REPO_PREFIX="${REPO_PREFIX:?REPO_PREFIX env variable must be specified}"
OUT_DIR="${OUT_DIR:-${SCRIPTDIR}/../release}" OUT_DIR="${OUT_DIR:-${SCRIPTDIR}/../release}"
print_license_header() {
cat "${SCRIPTDIR}/license_header.txt"
echo
}
print_autogenerated_warning() {
cat<<EOF
----------------------------------------------------------
WARNING: This file is autogenerated. Do not manually edit.
----------------------------------------------------------
EOF
}
read_manifests() { read_manifests() {
local dir local dir
dir="$1" dir="$1"
while IFS= read -d $'\0' -r file; do while IFS= read -d $'\0' -r file; do
cat "${file}" # strip license headers (pattern "^# ")
awk '
/^[^# ]/ { found = 1 }
found { print }' "${file}"
echo "---" echo "---"
done < <(find "${dir}" -name '*.yaml' -type f -print0) done < <(find "${dir}" -name '*.yaml' -type f -print0)
} }
@ -50,6 +69,9 @@ mk_kubernetes_manifests() {
replace="\1image: $image\3" replace="\1image: $image\3"
out_manifest="$(gsed -r "s|$pattern|$replace|g" <(echo "${out_manifest}") )" out_manifest="$(gsed -r "s|$pattern|$replace|g" <(echo "${out_manifest}") )"
done done
print_license_header
print_autogenerated_warning
echo "${out_manifest}" echo "${out_manifest}"
} }

View file

@ -0,0 +1,8 @@
# ./kubernetes-manifests
:warning: Kubernetes manifests provided in this directory are not directly
deployable to a cluster. They are meant to be used with `skaffold` command to
insert the correct `image:` tags.
Use the manifests in [/release](/release) directory which are configured with
pre-built public images.

View file

@ -1,17 +1,3 @@
# Copyright 2018 Google LLC
#
# 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.
apiVersion: networking.istio.io/v1alpha3 apiVersion: networking.istio.io/v1alpha3
kind: Gateway kind: Gateway
metadata: metadata:
@ -43,20 +29,6 @@ spec:
port: port:
number: 80 number: 80
--- ---
# Copyright 2018 Google LLC
#
# 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.
apiVersion: networking.istio.io/v1alpha3 apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry kind: ServiceEntry
metadata: metadata:
@ -72,20 +44,6 @@ spec:
name: https name: https
protocol: HTTPS protocol: HTTPS
--- ---
# Copyright 2018 Google LLC
#
# 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.
apiVersion: networking.istio.io/v1alpha3 apiVersion: networking.istio.io/v1alpha3
kind: VirtualService kind: VirtualService
metadata: metadata:
@ -100,20 +58,6 @@ spec:
port: port:
number: 80 number: 80
--- ---
# Copyright 2018 Google LLC
#
# 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.
apiVersion: networking.istio.io/v1alpha3 apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry kind: ServiceEntry
metadata: metadata:

View file

@ -12,11 +12,18 @@
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
apiVersion: extensions/v1beta1 ----------------------------------------------------------
WARNING: This file is autogenerated. Do not manually edit.
----------------------------------------------------------
apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
name: emailservice name: emailservice
spec: spec:
selector:
matchLabels:
app: emailservice
template: template:
metadata: metadata:
labels: labels:
@ -57,25 +64,14 @@ spec:
port: 5000 port: 5000
targetPort: 8080 targetPort: 8080
--- ---
# Copyright 2018 Google LLC apiVersion: apps/v1
#
# 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.
apiVersion: extensions/v1beta1
kind: Deployment kind: Deployment
metadata: metadata:
name: checkoutservice name: checkoutservice
spec: spec:
selector:
matchLabels:
app: checkoutservice
template: template:
metadata: metadata:
labels: labels:
@ -128,25 +124,14 @@ spec:
port: 5050 port: 5050
targetPort: 5050 targetPort: 5050
--- ---
# Copyright 2018 Google LLC apiVersion: apps/v1
#
# 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.
apiVersion: extensions/v1beta1
kind: Deployment kind: Deployment
metadata: metadata:
name: recommendationservice name: recommendationservice
spec: spec:
selector:
matchLabels:
app: recommendationservice
template: template:
metadata: metadata:
labels: labels:
@ -190,25 +175,14 @@ spec:
port: 8080 port: 8080
targetPort: 8080 targetPort: 8080
--- ---
# Copyright 2018 Google LLC apiVersion: apps/v1
#
# 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.
apiVersion: extensions/v1beta1
kind: Deployment kind: Deployment
metadata: metadata:
name: frontend name: frontend
spec: spec:
selector:
matchLabels:
app: frontend
template: template:
metadata: metadata:
labels: labels:
@ -286,25 +260,14 @@ spec:
port: 80 port: 80
targetPort: 8080 targetPort: 8080
--- ---
# Copyright 2018 Google LLC apiVersion: apps/v1
#
# 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.
apiVersion: extensions/v1beta1
kind: Deployment kind: Deployment
metadata: metadata:
name: paymentservice name: paymentservice
spec: spec:
selector:
matchLabels:
app: paymentservice
template: template:
metadata: metadata:
labels: labels:
@ -343,25 +306,14 @@ spec:
port: 50051 port: 50051
targetPort: 50051 targetPort: 50051
--- ---
# Copyright 2018 Google LLC apiVersion: apps/v1
#
# 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.
apiVersion: extensions/v1beta1
kind: Deployment kind: Deployment
metadata: metadata:
name: productcatalogservice name: productcatalogservice
spec: spec:
selector:
matchLabels:
app: productcatalogservice
template: template:
metadata: metadata:
labels: labels:
@ -403,25 +355,14 @@ spec:
port: 3550 port: 3550
targetPort: 3550 targetPort: 3550
--- ---
# Copyright 2018 Google LLC apiVersion: apps/v1
#
# 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.
apiVersion: extensions/v1beta1
kind: Deployment kind: Deployment
metadata: metadata:
name: cartservice name: cartservice
spec: spec:
selector:
matchLabels:
app: cartservice
template: template:
metadata: metadata:
labels: labels:
@ -470,25 +411,14 @@ spec:
port: 7070 port: 7070
targetPort: 7070 targetPort: 7070
--- ---
# Copyright 2018 Google LLC apiVersion: apps/v1
#
# 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.
apiVersion: extensions/v1beta1
kind: Deployment kind: Deployment
metadata: metadata:
name: loadgenerator name: loadgenerator
spec: spec:
selector:
matchLabels:
app: loadgenerator
replicas: 1 replicas: 1
template: template:
metadata: metadata:
@ -524,25 +454,14 @@ spec:
cpu: 500m cpu: 500m
memory: 512Mi memory: 512Mi
--- ---
# Copyright 2018 Google LLC apiVersion: apps/v1
#
# 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.
apiVersion: extensions/v1beta1
kind: Deployment kind: Deployment
metadata: metadata:
name: currencyservice name: currencyservice
spec: spec:
selector:
matchLabels:
app: currencyservice
template: template:
metadata: metadata:
labels: labels:
@ -582,25 +501,14 @@ spec:
port: 7000 port: 7000
targetPort: 7000 targetPort: 7000
--- ---
# Copyright 2018 Google LLC apiVersion: apps/v1
#
# 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.
apiVersion: extensions/v1beta1
kind: Deployment kind: Deployment
metadata: metadata:
name: shippingservice name: shippingservice
spec: spec:
selector:
matchLabels:
app: shippingservice
template: template:
metadata: metadata:
labels: labels:
@ -642,25 +550,14 @@ spec:
port: 50051 port: 50051
targetPort: 50051 targetPort: 50051
--- ---
# Copyright 2018 Google LLC apiVersion: apps/v1
#
# 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.
apiVersion: extensions/v1beta1
kind: Deployment kind: Deployment
metadata: metadata:
name: redis-cart name: redis-cart
spec: spec:
selector:
matchLabels:
app: redis-cart
template: template:
metadata: metadata:
labels: labels:
@ -706,25 +603,14 @@ spec:
port: 6379 port: 6379
targetPort: 6379 targetPort: 6379
--- ---
# Copyright 2018 Google LLC apiVersion: apps/v1
#
# 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.
apiVersion: extensions/v1beta1
kind: Deployment kind: Deployment
metadata: metadata:
name: adservice name: adservice
spec: spec:
selector:
matchLabels:
app: adservice
template: template:
metadata: metadata:
labels: labels: