NPM スクリプト

OpenTelemetry ウェブサイトのビルド、配信、検証、メンテナンスのための NPM スクリプト。

スクリプトの定義はリポジトリルートの package.json にあります。 スクリプトを実行するには、npm run SCRIPT_NAME を使用してください。

命名規則

  • 内部スクリプト
    • 名前が _ で始まるスクリプトは内部ヘルパーであり、直接実行することを想定していません。
    • NAME::pre および NAME::post スクリプトも同様です。 これらは NAME の明示的に呼び出される前処理・後処理ステップです。
  • デフォルトと :all スクリプトバリアント
    • checkfixtest スクリプトは、各アクションでもっとも一般的に必要とされるサブスクリプトを実行します。
    • *:all バリアント check:allfix:alltest:all は、より広範なサブスクリプトセットを実行します。 各バリアントのテーブルエントリにスコープが記載されています。

依存関係のインストールと更新

スクリプト説明
ci:minCI 用の Lock-exact inert install:ライフサイクルスクリプトなし。
ci:prepareci:min 実行後のセットアップ:ピンされた Hugo バイナリの取得、そして prepare
install:safeLock-exact local setup:inert インストール、そして ci:prepare
prepareインストールステップ:get:submodule を実行し、Docsy の lock-exact theme dependency install
update:hugo最新の hugo-extended をインストールし、バンプに伴う allowScripts approval を更新します。
update:packagesnpm-check-updates を実行して依存関係を更新します(release cooldown の対象)。

ビルドと配信

スクリプト説明
build:fullサイトのフルビルドを実行します。詳細は Build kinds を参照。
build:leanサイトのリーンビルドを実行します。詳細は Build kinds を参照。
build:previewミニファイ付きのフルビルド(例: Netlify プレビュー用)。
build:productionミニファイ付きのプロダクション Hugo ビルド。
buildサイトをビルドします。デフォルトはリーンです。Build kinds を参照。
cleanmake clean を実行します。
serve:hugoインメモリレンダリングで Hugo サーバーを起動します。
serveHugo 開発サーバーを起動します(デフォルト、フルレンダリング)。

チェック

スクリプト説明
check:allすべてのチェックスクリプトを順番に実行します。
check:code-excerptsコード抜粋をチェックし、更新が必要な場合は失敗します。
check:codeownersCODEOWNERS のロケールセクションがレジストリと一致することを検証します。
check:collector-synccollector-sync チェックを実行します。
check:expired期限切れのコンテンツ(フロントマターに基づく)をリストします。
check:filenamesファイル名の検証と廃止されたファイル/フォルダの検出
check:formatPrettier と prose-wrap のチェック。
check:i18nローカリゼーションフロントマター(default_lang_commit)を検証します。
check:l10nローカリゼーションチェックを実行します。
check:links:diff変更されたファイルのみの Lychee リンクチェック。
check:links:internalオフラインリンクチェック(内部リンクのみ)。最初にリーンビルドを実行。
check:linksLychee でサイト全体をリンクチェック。最初にリーンビルドを実行。
check:markdown:specstmp/ 内の仕様フラグメントの Markdown lint。
check:markdownMarkdown lint(コンテンツおよびプロジェクト)。
check:registrydata/registry/ 配下のレジストリ YAML を検証します。
check:spellingコンテンツ、データ、レイアウト Markdown に対する cspell。
check:textコンテンツとデータに対する textlint。
checkもっとも一般的に必要なチェックスクリプトを順番に実行します。

修正

スクリプト説明
fixもっとも一般的に必要な修正スクリプトを実行します。
fix:code-excerptsコード抜粋を更新します。
fix:codeownersレジストリから CODEOWNERS ロケールセクションを再生成します。
fix:allすべての修正スクリプトを実行します。
fix:formatPrettier を適用し、末尾の空白を削除します。
fix:format:stagedステージングされたファイルのみをフォーマットします。
fix:i18ni18n フロントマターを追加/修正します(fix:i18n:newfix:i18n:status)。
fix:l10nローカリゼーションの修正を適用します。
fix:link-cacheリンクチェックを実行し、コミット済みの .lycheecache を更新します。
fix:link-cache:double-checkブラウザプローブで失敗したリンクを再検証します
fix:link-cache:refreshもっとも古いキャッシュエントリをプルーンし、fix:link-cache を実行します。
fix:markdownMarkdown lint の問題と末尾の空白を修正します。
fix:submoduleサブモジュールの更新、再ピン、リビジョンの一覧表示。
fix:filenamesファイルのリネームと廃止されたファイル/フォルダの削除
fix:dictcspell ワードリストをソートし、フロントマターを正規化します。
fix:expiredcheck:expired で報告されたファイルを削除します。
fix:text–fix 付きで textlint を実行します。
fix:collector-sync:lint–fix 付きで collector-sync 内の ruff を実行します。
formatPrettier write のエイリアス(コンテンツおよび nowrap パス)。

サブモジュールとコンテンツ

スクリプト説明
code-excerptsコード抜粋を更新します。非推奨: fix:code-excerpts または check:code-excerpts を使用。
cp:spec仕様コンテンツ(content-modules)をコピーします。
get:submodulegit サブモジュールを初期化/更新します(スキップするには GET=no を設定)。
pin:submoduleサブモジュールのリビジョンをピンします(任意の PIN_SKIP)。
schemas:updateOpenTelemetry 仕様サブモジュールとコンテンツを更新します。
update:submoduleサブモジュールを最新のリモートに更新し、タグを取得します。

テストと CI

スクリプト説明
diff:checkワーキングツリーにコミットされていない変更がある場合に警告します。
diff:failワーキングツリーに変更がある場合に失敗します(例: ビルド後)。
fix-and-test:allすべての修正(i18n を含む)を実行し、その後チェック。リンクチェックは1回。1
is:cleanGit のワーキングツリーに未追跡ファイルを含む変更がある場合に失敗します。
netlify-build:previewNetlify デプロイプレビューをビルドします。
netlify-build:productionNetlify プロダクションサイトをビルドします。
test-and-fix修正スクリプト(i18n/link-cache/submodule を除く)を実行し、その後チェック。
test:alltest:base を実行し、その後 test:compound-tests
test:base基本テスト(check と同じ)。
test:collector-synccollector-sync テスト。
test:compound-tests複合 test:*-* スクリプトを実行します。2
test:double-check:livedouble-check プローブのライブスモークチェック。
test:edge-functions:live任意の node:test ライブスイート。--help をサポート。
test:edge-functionsnetlify/edge-functions/**/*.test.ts に対する Node テストランナー。
test:local-toolsscripts/**/*.test.mjs に対する Node テストランナー。2
test:local-tools:lycheetest:local-tools の lychee バイナリスライス。バイナリ不在時はスキップされます。
test:publicビルドされたサイトに対して tests/public/ チェックを実行します。2
testもっとも一般的に必要なテストを実行します。

ユーティリティ

スクリプト説明
all指定されたすべてのスクリプトを実行し、失敗があっても続行。いずれかが失敗した場合は非ゼロで終了。
generate:config:linkslychee.base.toml とページフロントマターから git 無視の lychee.toml を生成します。
locale-auto-mergeロケール自動マージヘルパー CLI--help)。
log:buildlog:check:links対応するスクリプトを実行し、出力を tmp/ に tee し、スクリプトの終了コードを伝搬します。
seq指定されたスクリプト名を順番に実行します。最初の失敗で終了。

  1. ハウスキーピングのデフォルト: コンテンツ修正の後に fix:link-cache(リンクチェックを実行し、リンクキャッシュを更新)を実行します。 keep-going all ランナーを使用してすべての修正を記録します。 チェックフェーズは check:linksfix:link-cache がカバー)と check:i18nfix:i18n がドリフトステータスを記録した後は冗長)を除外します。 ハウスキーピングを参照してください。 ↩︎

  2. これらのスクリプトはテストスクリプトの命名規則に従います。 テストカテゴリを参照してください。 ↩︎ ↩︎ ↩︎