Intel Device Plugins App: FluxCD directory structure creation

This commit creates the directory structure of
app-intel-device-plugins repo.

app-intel-device-plugins-operator helm chart version v0.27.1 is used.

Test Plan:
PASSED: Build process is successful with creation of debian package.
PASSED: Extract the content of
        stx-intel-device-plugins-helm_1.0-1.stx.1_amd64.deb and check
	if the helm tar file is present.
PASSED: AIO-SX app upload using 'system application-upload' command.
PASSED: AIO-DX app upload using 'system application-upload' command.

Story: 2010604
Task: 48666

Depends-On: https://review.opendev.org/c/starlingx/app-intel-device-plugins/+/892674

Change-Id: Ia4378dcda81a65dc14880742cfd6c8be0f1cac49
Signed-off-by: Md Irshad Sheikh <mdirshad.sheikh@windriver.com>
This commit is contained in:
Md Irshad Sheikh 2023-08-24 11:41:31 -04:00 committed by Md Irshad Sheikh
parent 40fd3116d8
commit 98681b867c
30 changed files with 453 additions and 0 deletions

35
.gitignore vendored Normal file
View File

@ -0,0 +1,35 @@
# Compiled files
*.py[co]
*.a
*.o
*.so
# Sphinx
_build
doc/source/api/
# Packages/installer info
*.egg
*.egg-info
dist
build
eggs
parts
var
sdist
develop-eggs
.installed.cfg
# Other
*.DS_Store
.stestr
.testrepository
.tox
.venv
.*.swp
.coverage
bandit.xml
cover
AUTHORS
ChangeLog
*.sqlite

10
bindep.txt Normal file
View File

@ -0,0 +1,10 @@
# This is a cross-platform list tracking distribution packages needed for install and tests;
# see https://docs.openstack.org/infra/bindep/ for additional information.
libffi-dev [platform:dpkg]
libldap2-dev [platform:dpkg]
libxml2-dev [platform:dpkg]
libxslt1-dev [platform:dpkg]
libsasl2-dev [platform:dpkg]
libffi-devel [platform:rpm]
python3-all-dev [platform:dpkg]

1
debian_build_layer.cfg Normal file
View File

@ -0,0 +1 @@
flock

1
debian_iso_image.inc Normal file
View File

@ -0,0 +1 @@
stx-intel-device-plugins-operator-helm

2
debian_pkg_dirs Normal file
View File

@ -0,0 +1,2 @@
intel-device-plugins-operator-helm
stx-intel-device-plugins-operator-helm

View File

@ -0,0 +1,5 @@
intel-device-plugins-operator-helm (0.27-1) unstable; urgency=medium
* Initial release.
-- Md Irshad Sheikh <mdirshad.sheikh@windriver.com> Wed, 14 Aug 2023 10:45:00 +0000

View File

@ -0,0 +1,15 @@
Source: intel-device-plugins-operator-helm
Section: libs
Priority: optional
Maintainer: StarlingX Developers <starlingx-discuss@lists.starlingx.io>
Build-Depends: debhelper-compat (= 13),
helm
Standards-Version: 4.5.1
Homepage: https://www.starlingx.io
Package: intel-device-plugins-operator-helm
Section: libs
Architecture: any
Depends: ${misc:Depends}
Description: StarlingX Intel Device Plugins Operator Helm Charts
This package contains helm charts for the Intel Device Plugins Operator application.

View File

@ -0,0 +1,41 @@
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: intel-device-plugins-operator-helm
Source: https://opendev.org/starlingx/app-intel-device-plugins/
Files: *
Copyright: (c) 2023 Wind River Systems, Inc
License: Apache-2
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
.
https://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.
.
On Debian-based systems the full text of the Apache version 2.0 license
can be found in `/usr/share/common-licenses/Apache-2.0'.
# If you want to use GPL v2 or later for the /debian/* files use
# the following clauses, or change it to suit. Delete these two lines
Files: debian/*
Copyright: 2023 Wind River Systems, Inc
License: Apache-2
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
.
https://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.
.
On Debian-based systems the full text of the Apache version 2.0 license
can be found in `/usr/share/common-licenses/Apache-2.0'.

View File

@ -0,0 +1,25 @@
#!/usr/bin/make -f
export DH_VERBOSE = 1
export ROOT = debian/tmp
export APP_FOLDER = $(ROOT)/usr/lib/helm
%:
dh $@
override_dh_auto_build:
mkdir -p intel-device-plugins-operator
cp Chart.yaml intel-device-plugins-operator
cp -r crds/ intel-device-plugins-operator
cp -r templates/ intel-device-plugins-operator
cp values.yaml intel-device-plugins-operator
make intel-device-plugins-operator
override_dh_auto_install:
# Install the app tar file.
install -d -m 755 $(APP_FOLDER)
install -p -D -m 755 intel-device-plugins-operator*.tgz $(APP_FOLDER)
override_dh_auto_test:

View File

@ -0,0 +1 @@
3.0 (quilt)

View File

@ -0,0 +1,14 @@
---
debname: intel-device-plugins-operator-helm
debver: 0.27-1
dl_path:
name: intel-device-plugins-operator-v0.27.1.tgz
url: https://github.com/intel/helm-charts/releases/download/intel-device-plugins-operator-0.27.1/intel-device-plugins-operator-0.27.1.tgz
sha256sum: d80b9bc379a0542ad31c2a14ba209c779e3a23734a2d45b51cf0d9c2038feba3
src_files:
- intel-device-plugins-operator-helm/files/Makefile
revision:
dist: $STX_DIST
GITREVCOUNT:
SRC_DIR: ${MY_REPO}/stx/app-intel-device-plugins/intel-device-plugins-operator-helm
BASE_SRCREV: fad9e189a99877e68ef0358754c68ab278cca6e9

View File

@ -0,0 +1,42 @@
#
# Copyright 2017 The Openstack-Helm Authors.
#
# Copyright (c) 2023 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#
# It's necessary to set this because some environments don't link sh -> bash.
SHELL := /bin/bash
TASK := build
EXCLUDES := doc tests tools logs tmp
CHARTS := $(filter-out $(EXCLUDES), $(patsubst %/.,%,$(wildcard */.)))
.PHONY: $(EXCLUDES) $(CHARTS)
all: $(CHARTS)
$(CHARTS):
@if [ -d $@ ]; then \
echo; \
echo "===== Processing [$@] chart ====="; \
make $(TASK)-$@; \
fi
init-%:
if [ -f $*/Makefile ]; then make -C $*; fi
lint-%: init-%
if [ -d $* ]; then helm lint $*; fi
build-%: lint-%
if [ -d $* ]; then helm package $*; fi
clean:
@echo "Clean all build artifacts"
rm -f */templates/_partials.tpl */templates/_globals.tpl
rm -f *tgz */charts/*tgz
rm -rf */charts */tmpcharts
%:
@:

View File

@ -0,0 +1,5 @@
stx-intel-device-plugins-operator-helm (1.0-1) unstable; urgency=medium
* Initial release.
-- Md Irshad Sheikh <mdirshad.sheikh@windriver.com> Fri, 18 August 2023 02:13:14 AM EST

View File

@ -0,0 +1,16 @@
Source: stx-intel-device-plugins-operator-helm
Section: libs
Priority: optional
Maintainer: StarlingX Developers <starlingx-discuss@lists.starlingx.io>
Build-Depends: debhelper-compat (= 13),
helm,
intel-device-plugins-operator-helm
Standards-Version: 4.5.1
Homepage: https://www.starlingx.io
Package: stx-intel-device-plugins-operator-helm
Section: libs
Architecture: any
Depends: ${misc:Depends}
Description: StarlingX Intel Device Plugins Operator Application FluxCD Helm Charts
This package contains Fluxcd helm charts for the Intel Device Plugins Operator application.

View File

@ -0,0 +1,41 @@
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: stx-intel-device-plugins-operator-helm
Source: https://opendev.org/starlingx/app-intel-device-plugins/
Files: *
Copyright: (c) 2023 Wind River Systems, Inc
License: Apache-2
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
.
https://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.
.
On Debian-based systems the full text of the Apache version 2.0 license
can be found in `/usr/share/common-licenses/Apache-2.0'.
# If you want to use GPL v2 or later for the /debian/* files use
# the following clauses, or change it to suit. Delete these two lines
Files: debian/*
Copyright: 2023 Wind River Systems, Inc
License: Apache-2
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
.
https://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.
.
On Debian-based systems the full text of the Apache version 2.0 license
can be found in `/usr/share/common-licenses/Apache-2.0'.

View File

@ -0,0 +1,52 @@
#!/usr/bin/make -f
# export DH_VERBOSE = 1
export ROOT = debian/tmp
export APP_FOLDER = $(ROOT)/usr/local/share/applications/helm
export DEB_VERSION = $(shell dpkg-parsechangelog | egrep '^Version:' | cut -f 2 -d ' ')
export RELEASE = $(shell echo $(DEB_VERSION) | cut -f 1 -d '-')
export REVISION = $(shell echo $(DEB_VERSION) | cut -f 4 -d '.')
export APP_NAME = intel-device-plugins-operator
export APP_VERSION = $(RELEASE)-$(REVISION)
export APP_TARBALL_FLUXCD = $(APP_NAME)-$(APP_VERSION).tgz
export HELM_FOLDER = /usr/lib/helm
export HELM_REPO = stx-platform
export STAGING = staging
%:
dh $@
override_dh_auto_build:
# Setup the staging directory.
mkdir -p $(STAGING)
cp files/metadata.yaml $(STAGING)
cp -Rv fluxcd-manifests/ $(STAGING)
mkdir -p $(STAGING)/charts
cp $(HELM_FOLDER)/*.tgz $(STAGING)/charts
# Modify metadata.
sed -i 's/@APP_NAME@/$(APP_NAME)/g' $(STAGING)/metadata.yaml
sed -i 's/@APP_VERSION@/$(APP_VERSION)/g' $(STAGING)/metadata.yaml
sed -i 's/@HELM_REPO@/$(HELM_REPO)/g' $(STAGING)/metadata.yaml
# Copy the plugins: installed in the buildroot
mkdir -p $(STAGING)/plugins
# Generate checksum file and package the tarball
cd $(STAGING) && find . -type f ! -name '*.md5' -print0 | xargs -0 md5sum > checksum.md5
tar -zcf $(APP_TARBALL_FLUXCD) -C $(STAGING)/ .
# Cleanup staging
rm -rf $(STAGING)
override_dh_auto_install:
# Install the app tar file.
install -d -m 755 $(APP_FOLDER)
install -p -D -m 755 $(APP_TARBALL_FLUXCD) $(APP_FOLDER)
override_dh_auto_test:
override_dh_usrlocal:

View File

@ -0,0 +1 @@
3.0 (quilt)

View File

@ -0,0 +1 @@
usr/local/share/applications/helm/*

View File

@ -0,0 +1,9 @@
---
debname: stx-intel-device-plugins-operator-helm
debver: 1.0-1
src_path: stx-intel-device-plugins-operator-helm
revision:
dist: $STX_DIST
GITREVCOUNT:
SRC_DIR: ${MY_REPO}/stx/app-intel-device-plugins
BASE_SRCREV: fad9e189a99877e68ef0358754c68ab278cca6e9

View File

@ -0,0 +1,11 @@
## Intel Device Plugins Operator Helm
This directory contains helm chart that need to be built for this
application. This helm chart deploys the Intel Device Plugins Operator
on Kubernetes clusters.
## Source
Charts are based on
<https://github.com/intel/helm-charts/releases/tag/intel-device-plugins-operator-0.27.1>.
## Installation
Installation of helm-chart is done automatically from the intel-device-plugins-operator-helm package.

View File

@ -0,0 +1,11 @@
app_name: @APP_NAME@
app_version: @APP_VERSION@
helm_repo: @HELM_REPO@
upgrades:
auto_update: true
behavior:
evaluate_reapply:
after:
- node-feature-discovery

View File

@ -0,0 +1,13 @@
#
# Copyright (c) 2023 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#
apiVersion: source.toolkit.fluxcd.io/v1beta1
kind: HelmRepository
metadata:
name: stx-platform
spec:
url: http://192.168.206.1:8080/helm_charts/stx-platform
interval: 1m

View File

@ -0,0 +1,8 @@
#
# Copyright (c) 2023 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#
resources:
- helmrepository.yaml

View File

@ -0,0 +1,10 @@
#
# Copyright (c) 2023 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#
apiVersion: v1
kind: Namespace
metadata:
name: intel-device-plugins-operator

View File

@ -0,0 +1,36 @@
#
# Copyright (c) 2023 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#
apiVersion: "helm.toolkit.fluxcd.io/v2beta1"
kind: HelmRelease
metadata:
name: intel-device-plugins-operator
labels:
chart_group: intel-device-plugins-operator-charts
spec:
releaseName: intel-device-plugins-operator
chart:
spec:
chart: intel-device-plugins-operator
version: 0.27.1
sourceRef:
kind: HelmRepository
name: stx-platform
interval: 1m
timeout: 30m
test:
enable: false
install:
disableHooks: false
upgrade:
disableHooks: false
valuesFrom:
- kind: Secret
name: idp-static-overrides
valuesKey: idp-static-overrides.yaml
- kind: Secret
name: idp-system-overrides
valuesKey: idp-system-overrides.yaml

View File

@ -0,0 +1,11 @@
#
# Copyright (c) 2023 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#
image:
repository: docker.io/intel/intel-deviceplugin-operator
tag: 0.27.1
images:
rbac: gcr.io/kubebuilder/kube-rbac-proxy:v0.14.1

View File

@ -0,0 +1,5 @@
#
# Copyright (c) 2023 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#

View File

@ -0,0 +1,18 @@
#
# Copyright (c) 2023 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#
namespace: intel-device-plugins-operator
resources:
- helmrelease.yaml
secretGenerator:
- name: idp-static-overrides
files:
- idp-static-overrides.yaml
- name: idp-system-overrides
files:
- idp-system-overrides.yaml
generatorOptions:
disableNameSuffixHash: true

View File

@ -0,0 +1,12 @@
#
# Copyright (c) 2023 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: intel-device-plugins-operator
resources:
- base
- intel-device-plugins-operator