Skip to content

add victoria-logs-agent helm chart #3858

add victoria-logs-agent helm chart

add victoria-logs-agent helm chart #3858

Workflow file for this run

name: "Test charts"
on:
push:
paths:
- Makefile
- 'charts/**'
- '!charts/*/lint/**'
- '!**/*.md.gotmpl'
- '!**/*.md'
- '.github/workflows/run-testing.yaml'
branches:
- master
pull_request:
paths:
- Makefile
- 'charts/**'
- '!charts/*/lint/**'
- '!**/*.md.gotmpl'
- '!**/*.md'
- '.github/workflows/run-testing.yaml'
branches:
- master
env:
HELM_VERSION: 3.17.4
jobs:
get-changed-charts:
name: Get changed charts
runs-on: ubuntu-24.04
permissions:
contents: read
outputs:
charts: ${{ steps.charts-diff.outputs.charts }}
steps:
- name: Checkout
uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Run changed-files with dir_names
id: changed-charts
uses: tj-actions/changed-files@v46
with:
matrix: true
files: |
charts/**
# This steps gets output of changes-charts step and filters out only chart names
# changed-charts output is space-separated list of changed paths
# this bash pipeline extracts unique chart names from the list
- name: Build charts diff
id: charts-diff
run: |
charts=$(echo '${{ steps.changed-charts.outputs.all_changed_files }}' | jq -c '. | map(. | split("/").[1] | select(. != null)) | unique');
echo "charts=$charts" >> $GITHUB_OUTPUT
install-chart:
name: Install chart
runs-on: ubuntu-24.04
needs: get-changed-charts
if: ${{ needs.get-changed-charts.outputs.charts != '[]' }}
permissions:
contents: read
strategy:
matrix:
chart: ${{ fromJSON(needs.get-changed-charts.outputs.charts) }}
k8s_version: ["v1.31.12", "v1.32.8", "v1.33.4"]
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Install Kubernetes tools
uses: yokawasa/[email protected]
with:
setup-tools: |
helmv3
kubectl
helm: "${{ env.HELM_VERSION }}"
kubectl: "${{ matrix.k8s_version }}"
- uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: Set up chart-testing
uses: helm/[email protected]
with:
version: 3.13.0
- name: Create Kind cluster
uses: helm/kind-action@v1
with:
node_image: kindest/node:${{ matrix.k8s_version }}
kubectl_version: ${{ matrix.k8s_version }}
- name: Remove node taints
run: |
kubectl taint --all=true nodes node.cloudprovider.kubernetes.io/uninitialized- || true
- name: Run chart-testing (install)
env:
LICENSE_KEY: ${{ secrets.ENTERPRISE_COMPONENTS_LICENSE_KEY }}
run: |
kubectl create namespace ${{ matrix.chart }}-testing
kubectl create secret -n=${{ matrix.chart }}-testing generic license --from-literal=key=$LICENSE_KEY
helm dep update charts/${{ matrix.chart }}
CRDS=$(helm show crds charts/${{ matrix.chart }})
if [[ -n "$CRDS" ]]; then
echo "$CRDS" | kubectl apply -f -
fi
helm template charts/${{ matrix.chart }} \
--namespace ${{ matrix.chart }}-testing \
--values charts/${{ matrix.chart }}/e2e/simple.yaml \
--validate | kubectl apply --server-side -f - --dry-run=server
cd charts/${{ matrix.chart }}
ct install \
--release-name test \
--namespace ${{ matrix.chart }}-testing \
--config ../../.github/ci/ct.yaml \
--charts . \
--helm-extra-set-args "--values e2e/simple.yaml" --skip-clean-up