diff --git a/.forgejo/workflows/build.yml b/.forgejo/workflows/build.yml index f9043fb..cc7ff69 100644 --- a/.forgejo/workflows/build.yml +++ b/.forgejo/workflows/build.yml @@ -10,20 +10,29 @@ on: permissions: contents: read +env: + HELM_VERSION: v3.11.2 # renovate: datasource=github-releases depName=helm + HELM_UNITTEST_VERSION: v0.3.6 # renovate: datasource=github-releases depName=helm-unittest/helm-unittest + HELM_CHART_TESTIUNG_VERSION: v3.10.1 # renovate: datasource=github-releases depName=helm/chart-testing + jobs: - prettier: + node-lint: runs-on: self-hosted - container: - image: ghcr.io/containerbase/node:20.10.0 steps: - run: cat /etc/os-release + - name: install deps + run: | + apt-get update -qq + apt-get -q install -qq make + - uses: actions/checkout@v4 with: show-progress: false - uses: actions/setup-node@v4 with: + node-version-file: .node-version cache: 'npm' - run: npm ci @@ -34,17 +43,40 @@ jobs: helm-lint: runs-on: self-hosted - container: - image: quay.io/helmpack/chart-testing:v3.10.1 steps: - run: cat /etc/os-release + - name: install deps + run: | + apt-get update -qq + apt-get -q install -qq make python3 + + - run: pip install yamllint yamale + + - name: install helm ${{ env.HELM_VERSION }} + run: | + curl -LO "https://get.helm.sh/helm-${HELM_VERSION}-linux-amd64.tar.gz" + tar --strip 1 -C "/usr/local/bin" -xf "helm-${HELM_VERSION}-linux-amd64.tar.gz" linux-amd64/helm + rm "helm-${HELM_VERSION}-linux-amd64.tar.gz" + + - name: install chart-testing ${{ env.HELM_CHART_TESTING_VERSION }} + run: | + curl -LO https://github.com/helm/chart-testing/releases/download/${HELM_CHART_TESTING_VERSION}/chart-testing_${HELM_CHART_TESTING_VERSION#v}_linux_amd64.tar.gz" + tar -C "/usr/local/bin" -xf "chart-testing_${HELM_CHART_TESTING_VERSION#v}_linux_amd64.tar.gz" ct + mkdir /etc/ct + tar --strip 1 -C "/etc/ct" -xf "chart-testing_${HELM_CHART_TESTING_VERSION#v}_linux_amd64.tar.gz" etc/chart_schema.yaml etc/lintconf.yaml + rm "chart-testing_${HELM_CHART_TESTING_VERSION#v}_linux_amd64.tar.gz" + + - run: helm plugin install --version ${{ env.HELM_UNITTEST_VERSION }} https://github.com/helm-unittest/helm-unittest + - uses: actions/checkout@v4 with: show-progress: false - - run: helm plugin install --version v0.3.6 https://github.com/helm-unittest/helm-unittest - run: helm dependency build + + - run: yamllint -f colored . - run: helm lint - run: helm template --debug gitea-helm . - run: make unittests + - run: ct lint --config tools/ct.yml --charts .