blob: 4d752a0df89f44dd2dc2d2e016b4fc9d3eab2f07 [file] [log] [blame]
Luca Prete1b823d62018-12-13 17:33:47 -08001#!/usr/bin/env bash
2
3# Copyright 2018-present Open Networking Foundation
4#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16
17# helmrepo.sh
18# creates a helm repo for publishing on guide website
19
20set -eu -o pipefail
21
22# when not running under Jenkins, use current dir as workspace
23WORKSPACE=${WORKSPACE:-.}
24
25REPO_DIR="${REPO_DIR:-chart_repo}"
26
27GERRIT_BRANCH="${GERRIT_BRANCH:-$(git symbolic-ref --short HEAD)}"
28PUBLISH_URL="${PUBLISH_URL:-https://charts.opencord.org}"
29
Luca Prete94d95192018-12-14 09:56:00 -080030ORIGINAL_INDEX_YAML="${ORIGINAL_INDEX_YAML:-/var/www/charts/index.yaml}"
31
Luca Prete1b823d62018-12-13 17:33:47 -080032mkdir -p "${REPO_DIR}"
33
34while IFS= read -r -d '' chart
35do
36 chartdir=$(dirname "${chart}")
37
38 echo "Adding ${chartdir}"
39
40 helm package --dependency-update --destination "${REPO_DIR}" "${chartdir}"
41
42done < <(find "${WORKSPACE}" -name Chart.yaml -print0)
43
44echo "Generating repo index"
45
Luca Prete05ba35b2018-12-14 11:08:12 -080046scp "${PUBLISH_URL}":"${ORIGINAL_INDEX_YAML}" .
47
48helm repo index "${REPO_DIR}" --url "${PUBLISH_URL}" --merge index.yaml
Luca Prete1b823d62018-12-13 17:33:47 -080049
50echo "Finished, chart repo generated: ${REPO_DIR}"
51