chore: Remove a controller that was used for testing (#1830) #317
This file contains 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: kind-e2e | |
on: | |
push: | |
branches: [main] | |
workflow_dispatch: | |
jobs: | |
kind-e2e: | |
permissions: | |
issues: write | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
k8sVersion: ["1.25.x", "1.26.x", "1.27.x", "1.28.x", "1.29.x", "1.30.x", "1.31.x"] | |
steps: | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Set up Python 3.10 | |
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 | |
with: | |
python-version: "3.10" | |
- uses: ./.github/actions/install-deps | |
with: | |
k8sVersion: ${{ matrix.k8sVersion }} | |
- name: Kind Cluster | |
uses: helm/kind-action@0025e74a8c7512023d06dc019c617aa3cf561fde # v1.10.0 | |
- name: check kind cluster and taint nodes | |
shell: bash | |
run: | | |
kubectl config current-context | |
kubectl get nodes | |
kubectl taint nodes chart-testing-control-plane CriticalAddonsOnly:NoSchedule | |
- name: install prometheus | |
uses: ./.github/actions/install-prometheus | |
- name: install pyroscope | |
uses: ./.github/actions/install-pyroscope | |
- name: install kwok and controller | |
shell: bash | |
run: | | |
make toolchain | |
make install-kwok | |
export KWOK_REPO=kind.local | |
export KIND_CLUSTER_NAME=chart-testing | |
make apply-with-kind | |
- name: ping cluster | |
shell: bash | |
run: | | |
sleep 15 | |
kubectl get pods -n kube-system | grep karpenter | |
kubectl get nodepools | |
kubectl get pods -A | |
kubectl describe nodes | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 | |
with: | |
repository: nathangeology/karpenter_evaluate | |
path: ./karpenter_eval/ # Installs to a folder in the Karpenter repo for the test | |
ref: "1130af927302e6913a4947952112f793eeafc564" | |
fetch-depth: 0 | |
- name: install KPI report dependencies | |
shell: bash | |
run: | | |
pip install pandas==2.2.2 | |
pip install pyarrow==16.1.0 | |
pip install tabulate==0.9.0 | |
pip install prometheus-api-client==0.5.5 | |
pip install ./karpenter_eval/ | |
- name: run test suites | |
shell: bash | |
run: | | |
OUTPUT_DIR=$(mktemp -d) | |
export OUTPUT_DIR | |
echo OUTPUT_DIR="$OUTPUT_DIR" >> "$GITHUB_ENV" | |
make e2etests | |
- name: run test analysis | |
shell: bash | |
run: | | |
OUTPUT_DIR=${{ env.OUTPUT_DIR }} python ./karpenter_eval/main.py | |
- name: cleanup | |
shell: bash | |
run: | | |
kubectl delete nodepools --all | |
make delete | |
make uninstall-kwok | |