Use helm 3 in chart build
`helm serve` is removed in helm 3 so this moves to using local `file://` dependencies [0] instead. [0]: https://helm.sh/docs/chart_best_practices/dependencies/#repository-urls Signed-off-by: Sean Eagan <seaneagan1@gmail.com> Change-Id: Ia45c57e0cccac477f6ff59a254d03d6fcec14bef
This commit is contained in:
parent
ccadbc05b8
commit
9d696ca0a4
@ -10,7 +10,6 @@ charts/*/requirements.lock
|
|||||||
.eggs
|
.eggs
|
||||||
.fiotest
|
.fiotest
|
||||||
.git
|
.git
|
||||||
.helm-pid
|
|
||||||
.tox
|
.tox
|
||||||
AUTHORS
|
AUTHORS
|
||||||
ChangeLog
|
ChangeLog
|
||||||
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -5,11 +5,11 @@
|
|||||||
/charts/*.tgz
|
/charts/*.tgz
|
||||||
/charts/*/charts
|
/charts/*/charts
|
||||||
/charts/*/requirements.lock
|
/charts/*/requirements.lock
|
||||||
|
/charts/deps/*/
|
||||||
|
|
||||||
# Build & test artifacts
|
# Build & test artifacts
|
||||||
/.cache
|
/.cache
|
||||||
/.eggs
|
/.eggs
|
||||||
/.helm-pid
|
|
||||||
/.pytest_cache
|
/.pytest_cache
|
||||||
/.tox
|
/.tox
|
||||||
/build
|
/build
|
||||||
|
16
Makefile
16
Makefile
@ -27,14 +27,10 @@ LABEL ?= org.airshipit.build=community
|
|||||||
COMMIT ?= $(shell git rev-parse HEAD)
|
COMMIT ?= $(shell git rev-parse HEAD)
|
||||||
DISTRO ?= ubuntu_bionic
|
DISTRO ?= ubuntu_bionic
|
||||||
PYTHON = python3
|
PYTHON = python3
|
||||||
CHARTS := $(patsubst charts/%/.,%,$(wildcard charts/*/.))
|
CHARTS := $(filter-out deps, $(patsubst charts/%/.,%,$(wildcard charts/*/.)))
|
||||||
IMAGE := ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${IMAGE_NAME}:${IMAGE_TAG}-${DISTRO}
|
IMAGE := ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${IMAGE_NAME}:${IMAGE_TAG}-${DISTRO}
|
||||||
BASE_IMAGE ?=
|
BASE_IMAGE ?=
|
||||||
|
|
||||||
HELM_PIDFILE ?= $(abspath ./.helm-pid)
|
|
||||||
|
|
||||||
CHARTS := $(patsubst charts/%/.,%,$(wildcard charts/*/.))
|
|
||||||
|
|
||||||
all: charts lint
|
all: charts lint
|
||||||
|
|
||||||
tests: external-deps gate-lint
|
tests: external-deps gate-lint
|
||||||
@ -63,9 +59,9 @@ charts: $(CHARTS)
|
|||||||
|
|
||||||
helm-init: $(addprefix helm-init-,$(CHARTS))
|
helm-init: $(addprefix helm-init-,$(CHARTS))
|
||||||
|
|
||||||
helm-init-%: helm-serve
|
helm-init-%: helm-toolkit
|
||||||
@echo Initializing chart $*
|
@echo Initializing chart $*
|
||||||
cd charts;if [ -s $*/requirements.yaml ]; then echo "Initializing $*";$(HELM) dep up $*; fi
|
cd charts;if [ -s $*/requirements.yaml ]; then echo "Initializing $*";$(HELM) dep up --skip-refresh $*; fi
|
||||||
|
|
||||||
lint: helm-lint gate-lint
|
lint: helm-lint gate-lint
|
||||||
|
|
||||||
@ -127,8 +123,8 @@ ifeq ($(PUSH_IMAGE), true)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
helm-serve: helm-install
|
helm-toolkit: helm-install
|
||||||
./tools/helm_tk.sh $(HELM) $(HELM_PIDFILE)
|
./tools/helm_tk.sh $(HELM)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -rf doc/build
|
rm -rf doc/build
|
||||||
@ -143,5 +139,5 @@ helm-install:
|
|||||||
|
|
||||||
.PHONY: $(CHARTS) all build_promenade charts check-docker clean docs \
|
.PHONY: $(CHARTS) all build_promenade charts check-docker clean docs \
|
||||||
dry-run dry-run-% external-deps gate-lint gate-lint-deps helm-init \
|
dry-run dry-run-% external-deps gate-lint gate-lint-deps helm-init \
|
||||||
helm-init-% helm-install helm-lint helm-lint-% helm-serve images \
|
helm-init-% helm-install helm-lint helm-lint-% helm-toolkit images \
|
||||||
lint tests tests-pep8 tests-security tests-unit
|
lint tests tests-pep8 tests-security tests-unit
|
||||||
|
@ -14,5 +14,5 @@
|
|||||||
|
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: helm-toolkit
|
- name: helm-toolkit
|
||||||
repository: http://localhost:8879/charts
|
repository: file://../deps/helm-toolkit
|
||||||
version: ">= 0.1.0"
|
version: ">= 0.1.0"
|
||||||
|
@ -14,5 +14,5 @@
|
|||||||
|
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: helm-toolkit
|
- name: helm-toolkit
|
||||||
repository: http://localhost:8879/charts
|
repository: file://../deps/helm-toolkit
|
||||||
version: ">= 0.1.0"
|
version: ">= 0.1.0"
|
||||||
|
@ -14,5 +14,5 @@
|
|||||||
|
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: helm-toolkit
|
- name: helm-toolkit
|
||||||
repository: http://localhost:8879/charts
|
repository: file://../deps/helm-toolkit
|
||||||
version: ">= 0.1.0"
|
version: ">= 0.1.0"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
- name: helm-toolkit
|
- name: helm-toolkit
|
||||||
repository: http://localhost:8879/charts
|
repository: file://../deps/helm-toolkit
|
||||||
version: ">= 0.1.0"
|
version: ">= 0.1.0"
|
||||||
|
0
charts/deps/.gitkeep
Normal file
0
charts/deps/.gitkeep
Normal file
@ -14,5 +14,5 @@
|
|||||||
|
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: helm-toolkit
|
- name: helm-toolkit
|
||||||
repository: http://localhost:8879/charts
|
repository: file://../deps/helm-toolkit
|
||||||
version: ">= 0.1.0"
|
version: ">= 0.1.0"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
- name: helm-toolkit
|
- name: helm-toolkit
|
||||||
repository: http://localhost:8879/charts
|
repository: file://../deps/helm-toolkit
|
||||||
version: ">= 0.1.0"
|
version: ">= 0.1.0"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
- name: helm-toolkit
|
- name: helm-toolkit
|
||||||
repository: http://localhost:8879/charts
|
repository: file://../deps/helm-toolkit
|
||||||
version: ">= 0.1.0"
|
version: ">= 0.1.0"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
- name: helm-toolkit
|
- name: helm-toolkit
|
||||||
repository: http://localhost:8879/charts
|
repository: file://../deps/helm-toolkit
|
||||||
version: ">= 0.1.0"
|
version: ">= 0.1.0"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
- name: helm-toolkit
|
- name: helm-toolkit
|
||||||
repository: http://localhost:8879/charts
|
repository: file://../deps/helm-toolkit
|
||||||
version: ">= 0.1.0"
|
version: ">= 0.1.0"
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
set -x
|
set -x
|
||||||
|
|
||||||
HELM=$1
|
HELM=$1
|
||||||
HELM_ARTIFACT_URL=${HELM_ARTIFACT_URL:-"https://get.helm.sh/helm-v2.17.0-linux-amd64.tar.gz"}
|
HELM_ARTIFACT_URL=${HELM_ARTIFACT_URL:-"https://get.helm.sh/helm-v3.6.3-linux-amd64.tar.gz"}
|
||||||
|
|
||||||
|
|
||||||
function install_helm_binary {
|
function install_helm_binary {
|
||||||
|
@ -16,62 +16,16 @@
|
|||||||
|
|
||||||
set -eux
|
set -eux
|
||||||
|
|
||||||
HELM=${1}
|
HTK_REPO=${HTK_REPO:-"https://opendev.org/openstack/openstack-helm-infra.git"}
|
||||||
HELM_PIDFILE=${2}
|
|
||||||
SERVE_DIR=$(mktemp -d)
|
|
||||||
|
|
||||||
HTK_STABLE_COMMIT=${HTK_COMMIT:-"4a490b894ce2a3c547075a5559de58fd07124401"}
|
HTK_STABLE_COMMIT=${HTK_COMMIT:-"4a490b894ce2a3c547075a5559de58fd07124401"}
|
||||||
|
|
||||||
${HELM} init --client-only --skip-refresh
|
TMP_DIR=$(mktemp -d)
|
||||||
|
|
||||||
if [[ -s ${HELM_PIDFILE} ]]; then
|
|
||||||
HELM_PID=$(cat "${HELM_PIDFILE}")
|
|
||||||
if ps "${HELM_PID}"; then
|
|
||||||
kill "${HELM_PID}"
|
|
||||||
sleep 0.5
|
|
||||||
if ps "${HELM_PID}"; then
|
|
||||||
echo Failed to terminate Helm, PID = "${HELM_PID}"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
${HELM} serve & > /dev/null
|
|
||||||
HELM_PID=${!}
|
|
||||||
echo Started Helm, PID = "${HELM_PID}"
|
|
||||||
echo "${HELM_PID}" > "${HELM_PIDFILE}"
|
|
||||||
|
|
||||||
set +x
|
|
||||||
if [[ -z $(curl -s 127.0.0.1:8879 | grep 'Helm Repository') ]]; then
|
|
||||||
while [[ -z $(curl -s 127.0.0.1:8879 | grep 'Helm Repository') ]]; do
|
|
||||||
sleep 1
|
|
||||||
echo "Waiting for Helm Repository"
|
|
||||||
done
|
|
||||||
else
|
|
||||||
echo "Helm serve already running"
|
|
||||||
fi
|
|
||||||
set -x
|
|
||||||
|
|
||||||
if ${HELM} repo list | grep -q "^stable" ; then
|
|
||||||
${HELM} repo remove stable
|
|
||||||
fi
|
|
||||||
|
|
||||||
${HELM} repo add local http://localhost:8879/charts
|
|
||||||
|
|
||||||
|
|
||||||
#OSH Makefile is bugged, so ensure helm is in the path
|
|
||||||
if [[ ${HELM} != "helm" ]]
|
|
||||||
then
|
|
||||||
export PATH=${PATH}:$(dirname ${HELM})
|
|
||||||
fi
|
|
||||||
|
|
||||||
{
|
{
|
||||||
cd "${SERVE_DIR}"
|
HTK_REPO_DIR=$TMP_DIR/htk
|
||||||
git clone https://git.openstack.org/openstack/openstack-helm-infra.git || true
|
git clone "$HTK_REPO" "$HTK_REPO_DIR"
|
||||||
cd openstack-helm-infra
|
(cd "$HTK_REPO_DIR" && git reset --hard "${HTK_STABLE_COMMIT}")
|
||||||
git reset --hard "${HTK_STABLE_COMMIT}"
|
cp -r "${HTK_REPO_DIR}/helm-toolkit" charts/deps/
|
||||||
|
|
||||||
make helm-toolkit
|
|
||||||
}
|
}
|
||||||
|
|
||||||
rm -rf "${SERVE_DIR}"
|
rm -rf "${TMP_DIR}"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user