SUMMARY = "Monitor Helm charts" DESCRIPTION = "Monitor Helm charts" LICENSE = "Apache-2.0" LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" DEPENDS += " \ helm-native \ monitor-helm-elastic \ " PROTOCOL = "https" BRANCH = "r/stx.3.0" SRCREV_helm-charts = "92b6289ae93816717a8453cfe62bad51cbdb8ad0" SRCREV_monitor-armada-app = "e5ee6b3a07b74479b93fe90eff0662cf81890f73" SRC_URI = " \ git://github.com/helm/charts;protocol=${PROTOCOL};name=helm-charts \ git://opendev.org/starlingx/monitor-armada-app.git;protocol=${PROTOCOL};branch=${BRANCH};name=monitor-armada-app;destsuffix=monitor-armada-app \ file://0001-Add-Makefile-for-helm-charts.patch \ file://0002-kibana-workaround-checksum-for-configmap.yaml.patch \ file://0003-helm-chart-changes-for-stx-monitor.patch \ file://0004-ipv6-helm-chart-changes.patch \ file://0005-decouple-config.patch \ file://0006-add-system-info.patch \ file://0007-three-masters.patch \ file://0008-Update-stx-monitor-for-kubernetes-API-1.16.patch \ file://0009-add-curator-as-of-2019-10-10.patch \ file://0010-Update-kube-state-metrics-1.8.0-to-commit-09daf19.patch \ file://0011-update-init-container-env-to-include-node-name.patch \ file://0012-Add-imagePullSecrets.patch \ file://0013-removed-unused-images.patch \ file://index.yaml \ file://repositories.yaml \ " PATCHTOOL = "git" PATCH_COMMIT_FUNCTIONS = "1" S = "${WORKDIR}/git" inherit allarch helm_folder = "${nonarch_libdir}/helm" helmchart_version = "0.1.0" do_configure[noexec] = "1" do_compile () { # initialize helm and build the toolkit # helm init --client-only does not work if there is no networking # The following commands do essentially the same as: helm init export HOME="${B}/${USER}" export helm_home="${B}/${USER}/.helm" rm -rf ${helm_home} mkdir -p ${helm_home} mkdir ${helm_home}/repository mkdir ${helm_home}/repository/cache mkdir ${helm_home}/repository/local mkdir ${helm_home}/plugins mkdir ${helm_home}/starters mkdir ${helm_home}/cache mkdir ${helm_home}/cache/archive # Stage a repository file that only has a local repo install -m 0644 ${WORKDIR}/repositories.yaml ${helm_home}/repository/repositories.yaml # Stage a local repo index that can be updated by the build install -m 0644 ${WORKDIR}/index.yaml ${helm_home}/repository/local/index.yaml # Host a server for the charts helm serve --repo-path . & sleep 1 helm repo rm local helm repo add local http://localhost:8879/charts # Create the tgz files cd stable make filebeat make metricbeat make kube-state-metrics make kibana make nginx-ingress make logstash make elasticsearch-curator # terminate helm server (the last backgrounded task) kill $! rm -rf ${helm_home} } do_install () { install -d -m 755 ${D}${helm_folder} install -p -D -m 755 ${S}/stable/*.tgz ${D}${helm_folder} } FILES_${PN} = "${helm_folder}" RDEPENDS_${PN} = " \ helm \ monitor-helm-elastic \ "