
Introduce lifecycle plugin for metrics-server to allow managing the application's behavior during different phases of its lifecycle. This is required to allow adding labels to the pods and restart them right after the application is applied, which is going to be implemented by a follow-up commit. Test Plan: PASS: build-pkgs -c -p python3-k8sapp-metrics-server PASS: build-pkgs -c -p stx-metrics-server-helm PASS: upload/apply/remove/delete/update metrics-server PASS: possible to access hooks like post-apply and post-remove Story: 2010962 Task: 49066 Change-Id: If2e334e238ac51795907b4c6076d7bebe3ce9739 Signed-off-by: David Barbosa Bastos <david.barbosabastos@windriver.com>
Metrics Server Armada App
This Armada App is responsible to deliver the metrics server inside the ISO.
Metrics Server is a scalable, efficient source of container resource metrics for Kubernetes built-in autoscaling pipelines.
Structure
metrics-server-armada-app
├── debian_build_layer.cfg
├── debian_iso_image.inc
├── debian_pkg_dirs
├── debian_stable_docker_images.inc
├── metrics-server-helm
│ ├── debian
│ │ ├── deb_folder
│ │ │ ├── changelog
│ │ │ ├── control
│ │ │ ├── copyright
│ │ │ ├── metrics-server-helm.install
│ │ │ └── rules
│ │ └── meta_data.yaml
│ └── files
│ ├── 0001-Add-sample-app-to-metrics-server.patch
│ └── Makefile
├── readme.md
├── requirements.txt
├── sample-app
│ ├── debian
│ │ └── sample-app.stable_docker_image
│ ├── docker
│ │ ├── Dockerfile.debian
│ │ └── src
│ │ ├── package.json
│ │ └── sample-application.js
│ └── readme.md
├── stx-metrics-server-helm
│ ├── debian
│ │ ├── deb_folder
│ │ │ ├── changelog
│ │ │ ├── control
│ │ │ ├── copyright
│ │ │ ├── rules
│ │ │ ├── source
│ │ │ │ └── format
│ │ │ └── stx-metrics-server-helm.install
│ │ └── meta_data.yaml
│ └── stx-metrics-server-helm
│ ├── files
│ │ ├── Makefile
│ │ └── metadata.yaml
│ ├── fluxcd-manifests
│ │ ├── base
│ │ │ ├── helmrepository.yaml
│ │ │ ├── kustomization.yaml
│ │ │ └── namespace.yaml
│ │ ├── kustomization.yaml
│ │ └── metrics-server
│ │ ├── helmrelease.yaml
│ │ ├── kustomization.yaml
│ │ ├── metrics-server-static-overrides.yaml
│ │ └── metrics-server-system-overrides.yaml
│ └── helm-charts
│ └── Makefile
├── test-requirements.txt
└── tox.ini
Important files
- metrics-server_manifest.yaml - Armada Manifest
- helm-charts - Metrics Server helm charts
- stx-metrics-server-helm.spec - Steps to generate
- sample-app - Sample app application
Install
- Navigate to the path
/usr/local/share/applications/helm/
- The
metrics-server-1.0-1.tgz
will be present - Run
system application-upload metrics-server-1.0-1.tgz
- Run
system application-list
to see if it was uploaded - Run
system helm-override-update --reuse-values --set sampleApp.create=true metrics-server metrics-server metrics-server
If you want to deploy the sample app - Run
system application-apply metrics-server
- Run
system application-list
to see if it was applied - Run
kubectl get pods -l app=metrics-server -n metrics-server
to see the pod running
Description
Languages
Makefile
47.1%
Python
40%
JavaScript
12.3%
PHP
0.5%
C++
0.1%