diff --git a/.github/workflows/lint-test.yaml b/.github/workflows/lint-test.yaml index d3bc11c..a98fa5f 100644 --- a/.github/workflows/lint-test.yaml +++ b/.github/workflows/lint-test.yaml @@ -27,23 +27,17 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v4.1.5 with: fetch-depth: 0 - - name: Set up Helm - uses: azure/setup-helm@v3 - with: - version: v3.10.0 - - - uses: actions/setup-python@v4 + uses: azure/setup-helm@v4.2.0 + - uses: actions/setup-python@v5.1.0 with: - python-version: '3.9' + python-version: '3.x' check-latest: true - - name: Set up chart-testing - uses: helm/chart-testing-action@v2.3.1 - + uses: helm/chart-testing-action@v2.6.1 - name: Run chart-testing (list-changed) id: list-changed run: | @@ -51,14 +45,11 @@ jobs: if [[ -n "$changed" ]]; then echo "::set-output name=changed::true" fi - - name: Run chart-testing (lint) run: ct lint --target-branch ${{ github.event.repository.default_branch }} --charts . - - name: Create kind cluster - uses: helm/kind-action@v1.4.0 + uses: helm/kind-action@v1.10.0 if: steps.list-changed.outputs.changed == 'true' - - name: Run chart-testing (install) run: ct install --target-branch ${{ github.event.repository.default_branch }} --charts . if: steps.list-changed.outputs.changed == 'true' \ No newline at end of file diff --git a/.github/workflows/pluto.yaml b/.github/workflows/pluto.yaml new file mode 100644 index 0000000..b3cd69c --- /dev/null +++ b/.github/workflows/pluto.yaml @@ -0,0 +1,42 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +name: Use Pluto to check helm chart for resources using deprecated k8s APIs + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + types: [opened, synchronize, reopened] + +jobs: + pluto_detect: + runs-on: ubuntu-latest + env: + PLUTO_VERSION: 5.19.1 + steps: + - name: Checkout + uses: actions/checkout@v4.1.5 + - name: Download Pluto + run: | + wget https://github.com/FairwindsOps/pluto/releases/download/v${{ env.PLUTO_VERSION }}/pluto_${{ env.PLUTO_VERSION }}_linux_amd64.tar.gz -O - | tar -xz + mv pluto /usr/local/bin/pluto + chmod +x /usr/local/bin/pluto + - name: Set up Helm + uses: azure/setup-helm@v4.2.0 + - name: verify helm chart + run: | + helm template . | pluto detect -omarkdown - >> $GITHUB_STEP_SUMMARY