2 ## Copyright (C) 2019 Wind River Systems, Inc.
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
8 # http://www.apache.org/licenses/LICENSE-2.0
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
16 SUMMARY = "Openstack Helm charts"
17 DESCRIPTION = "Openstack Helm charts"
19 LICENSE = "Apache-2.0"
20 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
24 openstack-helm-infra \
29 SRCREV_openstack-helm = "82c72367c85ca94270f702661c7b984899c1ae38"
30 SRCREV_openstack-armada-app = "863f4b9733d3d4f4fd490606a94b84cfdaf2df2c"
33 git://github.com/openstack/openstack-helm;protocol=${PROTOCOL};name=openstack-helm \
34 git://opendev.org/starlingx/openstack-armada-app;protocol=${PROTOCOL};branch=${BRANCH};name=openstack-armada-app;destsuffix=openstack-armada-app \
41 patch_folder = "${WORKDIR}/openstack-armada-app/openstack-helm/files"
42 helm_folder = "${nonarch_libdir}/helm"
43 toolkit_version = "0.1.0"
44 helmchart_version = "0.1.0"
48 git am ${patch_folder}/0001-Ceilometer-chart-add-the-ability-to-publish-events-t.patch
49 git am ${patch_folder}/0002-Remove-stale-Apache2-service-pids-when-a-POD-starts.patch
50 git am ${patch_folder}/0003-Nova-console-ip-address-search-optionality.patch
51 git am ${patch_folder}/0004-Nova-chart-Support-ephemeral-pool-creation.patch
52 git am ${patch_folder}/0005-Nova-Add-support-for-disabling-Readiness-Liveness-pr.patch
53 git am ${patch_folder}/0006-Add-Placement-Chart.patch
61 # initialize helm and build the toolkit
62 # helm init --client-only does not work if there is no networking
63 # The following commands do essentially the same as: helm init
64 export HOME="${B}/${USER}"
65 export helm_home="${B}/${USER}/.helm"
69 mkdir ${helm_home}/repository
70 mkdir ${helm_home}/repository/cache
71 mkdir ${helm_home}/repository/local
72 mkdir ${helm_home}/plugins
73 mkdir ${helm_home}/starters
74 mkdir ${helm_home}/cache
75 mkdir ${helm_home}/cache/archive
77 # Stage a repository file that only has a local repo
78 install -m 0644 ${patch_folder}/repositories.yaml ${helm_home}/repository/repositories.yaml
80 # Stage a local repo index that can be updated by the build
81 install -m 0644 ${patch_folder}/index.yaml ${helm_home}/repository/local/index.yaml
83 # Stage helm-toolkit in the local repo
84 cp ${RECIPE_SYSROOT}${helm_folder}/helm-toolkit-${toolkit_version}.tgz .
86 # Host a server for the charts
87 helm serve --repo-path . &
90 helm repo add local http://localhost:8879/charts
92 # Make the charts. These produce a tgz file
108 # terminate helm server (the last backgrounded task)
112 # Remove the helm-toolkit tarball
113 rm helm-toolkit-${toolkit_version}.tgz
117 install -d -m 755 ${D}${helm_folder}
118 install -p -D -m 755 ${B}/*.tgz ${D}${helm_folder}
121 FILES_${PN} = "${helm_folder}"
125 openstack-helm-infra \