Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 12 additions & 14 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,17 +23,15 @@ env:
jobs:
markup-lint:
name: Markup
uses: devpro/github-workflow-parts/.github/workflows/reusable-markup-lint.yml@591b0c7bfba6fbc7b0cab7d896447e0732b819de
uses: devpro/github-workflow-parts/.github/workflows/reusable-markup-lint.yml@99e797d0672c8a4fb39c4174173fa677c00a5d1e

# The VitePress site is published by the GitLab pipeline, as the Pages of this repository serve the chart repository.
docs:
name: Docs
uses: devpro/github-workflow-parts/.github/workflows/reusable-pages-deployment.yml@591b0c7bfba6fbc7b0cab7d896447e0732b819de
uses: devpro/github-workflow-parts/.github/workflows/reusable-node-quality.yml@99e797d0672c8a4fb39c4174173fa677c00a5d1e
with:
# VitePress writes the site the GitLab pipeline publishes, which this job only builds.
deploy: false
job-name: Docs
site-path: public
workflow-parts-version: 591b0c7bfba6fbc7b0cab7d896447e0732b819de
workflow-parts-version: 99e797d0672c8a4fb39c4174173fa677c00a5d1e

charts:
name: Charts
Expand All @@ -52,13 +50,13 @@ jobs:
# note: important to have chart-testing work (see https://github.com/helm/chart-testing/issues/186)
fetch-depth: 0
- name: Install Helm
uses: devpro/github-workflow-parts/actions/helm/setup@591b0c7bfba6fbc7b0cab7d896447e0732b819de
uses: devpro/github-workflow-parts/actions/helm/setup@99e797d0672c8a4fb39c4174173fa677c00a5d1e
- name: Install kube-linter
uses: devpro/github-workflow-parts/actions/kube-linter/setup@591b0c7bfba6fbc7b0cab7d896447e0732b819de
uses: devpro/github-workflow-parts/actions/kube-linter/setup@99e797d0672c8a4fb39c4174173fa677c00a5d1e
- name: Run kube-linter
run: kube-linter lint charts --config .kube-linter.yaml
- name: Set up chart-testing
uses: devpro/github-workflow-parts/actions/chart-testing/setup@591b0c7bfba6fbc7b0cab7d896447e0732b819de
uses: devpro/github-workflow-parts/actions/chart-testing/setup@99e797d0672c8a4fb39c4174173fa677c00a5d1e
- name: Add dependency chart repositories
run: ./scripts/add_helm_repo.sh
- name: List changed charts
Expand All @@ -74,12 +72,12 @@ jobs:
if: steps.list-changed.outputs.changed == 'true'
run: ct lint $CHARTS_DIRECTORIES_ARG --target-branch "$DEFAULT_BRANCH"
- name: Install kubeconform
uses: devpro/github-workflow-parts/actions/kubeconform/setup@591b0c7bfba6fbc7b0cab7d896447e0732b819de
uses: devpro/github-workflow-parts/actions/kubeconform/setup@99e797d0672c8a4fb39c4174173fa677c00a5d1e
- name: Validate manifests against the Kubernetes schemas
run: ./scripts/validate_charts.sh
# The standalone binary of the helm-unittest plugin, so no plugin is installed into Helm.
- name: Install helm-unittest
uses: devpro/github-workflow-parts/actions/helm-unittest/setup@591b0c7bfba6fbc7b0cab7d896447e0732b819de
uses: devpro/github-workflow-parts/actions/helm-unittest/setup@99e797d0672c8a4fb39c4174173fa677c00a5d1e
- name: Run chart unit tests
run: |
charts=$(dirname charts/*/tests | sort -u)
Expand All @@ -98,14 +96,14 @@ jobs:
with:
fetch-depth: 0
- name: Install Helm
uses: devpro/github-workflow-parts/actions/helm/setup@591b0c7bfba6fbc7b0cab7d896447e0732b819de
uses: devpro/github-workflow-parts/actions/helm/setup@99e797d0672c8a4fb39c4174173fa677c00a5d1e
- name: Set up chart-testing
uses: devpro/github-workflow-parts/actions/chart-testing/setup@591b0c7bfba6fbc7b0cab7d896447e0732b819de
uses: devpro/github-workflow-parts/actions/chart-testing/setup@99e797d0672c8a4fb39c4174173fa677c00a5d1e
- name: Add dependency chart repositories
run: ./scripts/add_helm_repo.sh
# kind and kubectl are installed by an action of the workflow parts, as helm/kind-action is a JavaScript action, and a container image has neither preinstalled.
- name: Install kind and kubectl
uses: devpro/github-workflow-parts/actions/kind/setup@591b0c7bfba6fbc7b0cab7d896447e0732b819de
uses: devpro/github-workflow-parts/actions/kind/setup@99e797d0672c8a4fb39c4174173fa677c00a5d1e
# The cluster name carries the run, so two runs on one Docker daemon never share a cluster.
- name: Create kind cluster
id: create-cluster
Expand Down
93 changes: 8 additions & 85 deletions .github/workflows/pkg.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,12 @@
# title: Continuous Delivery (Packaging)
# requirements:
# - Create manually "gh-pages" branch
# - Maintain pages files in "gh-pages" branch: index.tpl, placeholder.png
# uses:
# - https://github.com/helm/chart-releaser-action
# - https://github.com/halkeye/helm-repo-html
# - https://github.com/actions/configure-pages

name: PKG
# title: Continuous Delivery (Packaging)
# requirements: a "gh-pages" branch holding index.yaml, with index.tpl and placeholder.png for the index page, and Pages published from GitHub Actions

on:
push:
branches:
- main
workflow_dispatch:
workflow_dispatch: {}

permissions:
contents: write
Expand All @@ -25,78 +18,8 @@ concurrency:
cancel-in-progress: false

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout git repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
fetch-depth: 0
# ref. https://vitepress.dev/guide/deploy#github-pages
# - name: Install Node.js dependencies
# run: npm install
# - name: Build with VitePress
# run: npm run docs:build
# - name: Upload docs artifact
# uses: actions/upload-artifact@v7
# with:
# name: docs
# path: docs/.vitepress/dist/
# ref. https://docs.github.com/en/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/setting-your-commit-email-address
- name: Configure Git
run: |
git config user.name "$GITHUB_ACTOR"
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
- name: Install Helm
uses: devpro/github-workflow-parts/actions/helm/setup@591b0c7bfba6fbc7b0cab7d896447e0732b819de
- name: Add dependency chart repositories
run: ./scripts/add_helm_repo.sh
- name: Host charts repository on GitHub Pages
uses: helm/chart-releaser-action@cae68fefc6b5f367a0275617c9f83181ba54714f
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
# important: it needs to be done in the same pipeline as another pages workflow won't be triggered by the pust on the gh-pages branch
# (tried with a PAT and several options but didn't work)
- name: Checkout gh-pages branch
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
ref: gh-pages
# - uses: actions/download-artifact@v4
# with:
# name: docs
# path: docs
# A Go of its own rather than the one of the runner image, which changes with it.
- name: Setup Go environment
uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0
with:
go-version: "1.27.3"
cache: false
- name: Generate index.html
run: |
go install github.com/halkeye/helm-repo-html@v0.2.1
"$(go env GOPATH)/bin/helm-repo-html"
- name: Setup Pages
uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0
- name: Build with Jekyll
uses: actions/jekyll-build-pages@44a6e6beabd48582f863aeeb6cb2151cc1716697 # v1.0.13
with:
source: ./
destination: ./_site
# - name: Copy docs to website folder
# run: |
# id
# ls -alrt ./_site
# sudo mkdir -p ./_site/docs
# sudo cp -r docs/* ./_site/docs/
- name: Upload artifact
uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5.0.0
deploy:
runs-on: ubuntu-latest
needs: build
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346 # v5.0.1
helm-publication:
name: Helm
uses: devpro/github-workflow-parts/.github/workflows/reusable-helm-publication.yml@99e797d0672c8a4fb39c4174173fa677c00a5d1e
with:
workflow-parts-version: 99e797d0672c8a4fb39c4174173fa677c00a5d1e
Loading