diff --git a/.github/workflows/kube-stack-test.yaml b/.github/workflows/kube-stack-test.yaml new file mode 100644 index 000000000..4428b0f5e --- /dev/null +++ b/.github/workflows/kube-stack-test.yaml @@ -0,0 +1,31 @@ +name: Test Opentelemetry Kube Stack Charts + +on: + pull_request: + paths: + - "charts/opentelemetry-kube-stack/**" + branches: + - main + +jobs: + opentelemetry-kube-stack-test: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Setup + uses: ./.github/actions/setup + with: + create-kind-cluster: "true" + + # We'll need this eventually, but for now leave it commented. + # - name: Install cert-manager + # run: | + # kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.6.1/cert-manager.yaml + # kubectl wait --timeout=5m --for=condition=available deployment cert-manager -n cert-manager + # kubectl wait --timeout=5m --for=condition=available deployment cert-manager-webhook -n cert-manager + + - name: Run chart-testing (install) + run: ct install --charts charts/opentelemetry-kube-stack diff --git a/.gitignore b/.gitignore index 7477bd557..b8b7f86f1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ .vscode .idea +.DS_Store ### Helm ### **/charts/*.tgz diff --git a/Makefile b/Makefile index bc0f1eb18..1cb9e5a8a 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ TMP_DIRECTORY = ./tmp -CHARTS ?= opentelemetry-collector opentelemetry-operator opentelemetry-demo opentelemetry-ebpf +CHARTS ?= opentelemetry-collector opentelemetry-operator opentelemetry-demo opentelemetry-ebpf opentelemetry-kube-stack .PHONY: generate-examples generate-examples: diff --git a/charts/opentelemetry-kube-stack/.helmignore b/charts/opentelemetry-kube-stack/.helmignore new file mode 100644 index 000000000..0e8a0eb36 --- /dev/null +++ b/charts/opentelemetry-kube-stack/.helmignore @@ -0,0 +1,23 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*.orig +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/charts/opentelemetry-kube-stack/Chart.yaml b/charts/opentelemetry-kube-stack/Chart.yaml new file mode 100644 index 000000000..c883dfce2 --- /dev/null +++ b/charts/opentelemetry-kube-stack/Chart.yaml @@ -0,0 +1,16 @@ +apiVersion: v2 +name: opentelemetry-kube-stack +version: 0.0.1 +description: | + OpenTelemetry Quickstart chart for Kubernetes. + Installs an operator and collector for an easy way to get started with Kubernetes observability. +type: application +home: https://opentelemetry.io/ +sources: + - https://github.com/open-telemetry/opentelemetry-operator +maintainers: + - name: Allex1 + - name: dmitryax + - name: TylerHelmuth +icon: https://raw.githubusercontent.com/cncf/artwork/a718fa97fffec1b9fd14147682e9e3ac0c8817cb/projects/opentelemetry/icon/color/opentelemetry-icon-color.png +appVersion: 0.95.0 diff --git a/charts/opentelemetry-kube-stack/templates/_helpers.tpl b/charts/opentelemetry-kube-stack/templates/_helpers.tpl new file mode 100644 index 000000000..e69de29bb diff --git a/charts/opentelemetry-kube-stack/templates/collector.yaml b/charts/opentelemetry-kube-stack/templates/collector.yaml new file mode 100644 index 000000000..e69de29bb diff --git a/charts/opentelemetry-kube-stack/values.schema.json b/charts/opentelemetry-kube-stack/values.schema.json new file mode 100644 index 000000000..f90b1e7a5 --- /dev/null +++ b/charts/opentelemetry-kube-stack/values.schema.json @@ -0,0 +1,10 @@ +{ + "$schema": "https://json-schema.org/draft/2019-09/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [], + "properties": {}, + "examples": [] +} diff --git a/charts/opentelemetry-kube-stack/values.yaml b/charts/opentelemetry-kube-stack/values.yaml new file mode 100644 index 000000000..e69de29bb