You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
GitHub Action
Create Kubernetes Status Badge
v1.1.3
Kubernetes ステータスのバッジを作成し、Pages にデプロイする Action です。
name | required | description |
---|---|---|
kubeconfig | * | kubeconfig の中身相当の文字列 |
github_token | * | GitHub の Token ( secrets.GITHUB_TOKEN) |
k8sStatus-SVG-text | k8s Status のラベル部分の文字列 | |
podStatus-SVG-text | Pod Status のラベル部分の文字列 | |
nodeStatus-SVG-text | Node Status のラベル部分の文字列 |
Kubernetes の API サーバーにアクセスできるかどうかを示します。
- バッジの svg を置くリポジトリ
- これは svg を置くリポジトリなので、必ずしも badge を使うリポジトリと同じである必要はありません。
gh-pages
ブランチで Pages を有効にしてください。- 初回の workflow を動かすとブランチができるのでそのあとで設定するのがおすすめです。
- kubeconfig
- 適切な role を設定した、Actions 専用の user を使ってください。
- 必要な role は(たぶん)
pod, node
のget, list
です
- Actions からクラスタへの接続方法
- Tailscale などを使用すると楽だと思います。
サンプル
name: k8s badge build
on:
workflow_dispatch:
schedule:
- cron: '0/10 * * * *'
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
k8s-badge-build:
name: k8s badge build
runs-on: ubuntu-latest
steps:
- name: setup tailscale
uses: tailscale/github-action@v2
with:
oauth-client-id: ${{secrets.TAILSCALE_CLIENT_ID}}
oauth-secret: ${{secrets.TAILSCALE_SECRET}}
tags: "tag:github"
args: "--accept-routes"
- name: gen svg
uses: walnuts1018/[email protected]
with:
kubeconfig: ${{ secrets.Kubeconfig }}
github_token: ${{ secrets.GITHUB_TOKEN }}