add victoria-logs-agent helm chart #3858
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 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 |