コンテンツにスキップ

GitHub Actionsで使う

v0.9 で導入

GitHub Actionsと組み合わせることで、リポジトリの更新やリリースに合わせてREADMEの画像を自動更新できます。

CIで使用するための便利なGitHub Actionも利用できます。最新バージョンの console2svg を使用するには、ワークフローに次のステップを追加するだけです:

.github/workflows/console2svg.yml
- uses: arika0093/console2svg@main

console2svgのバージョンを指定するには、以下のように指定します。

.github/workflows/console2svg.yml
- uses: arika0093/console2svg@main
with:
version: 0.8.3
# ソースからビルドしたい場合
# version: develop

以下は、Ubuntuランナー上で console2svg をインストールしてSVGを生成し、Gitリポジトリへコミットするワークフローの例です。

.github/workflows/console2svg.yml
jobs:
gen:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v7
- name: Setup console2svg
uses: arika0093/console2svg@main
- name: Generate SVG
run: console2svg capture -w 120 -c -d macos-pc -o output.svg -- dotnet --version
- name: Commit Changes
uses: stefanzweifel/git-auto-commit-action@v7
with:
commit_message: "[skip-ci] chore: regenerate SVG"

batch markdown 機能を使用することで、ドキュメントの自動更新を行うこともできます。 以下は、Markdown内のマーカーを検出して画像を生成し、コミットするワークフローの例です。

.github/workflows/console2svg.yml
jobs:
sync:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v7
- name: Setup console2svg
uses: arika0093/console2svg@main
- name: Generate SVGs from Markdown
run: console2svg batch markdown -i ./docs -o ./assets
- name: Commit Changes
uses: stefanzweifel/git-auto-commit-action@v7
with:
commit_message: "[skip-ci] chore: regenerate SVGs"

一部のライブラリ(例:chalk)はCI環境を検出し、自動的に色出力を無効にします。 しかし、SVGを生成する場合は常に色を有効にしたいはずです。したがって、console2svgはデフォルトで以下の環境変数を自動的に設定・削除します:

  • TERM=xterm-256color:色サポートを有効にするために設定されます。
  • COLORTERM=truecolor:TrueColor出力を有効にします。
  • FORCE_COLOR=3:同上。3はTrueColorを示します。
  • CI(削除):CI環境を検出するとライブラリが色を無効にするため、意図的に削除されます。
  • TF_BUILD(削除):同じ理由で削除されます(Azure Pipelinesで使用)。

この動作を無効にするには、--no-colorenvと--no-delete-envsオプションを使用します。