diff --git a/docs/_data/menu_ja.yml b/docs/_data/menu_ja.yml index bb3b9c39..1404242f 100644 --- a/docs/_data/menu_ja.yml +++ b/docs/_data/menu_ja.yml @@ -28,10 +28,10 @@ subcategories: - title: "全体" url: "/ja/user-guide/configuration/" - - title: "Metadata" - url: "/ja/user-guide/configuration/metadata" - title: "Secrets" url: "/ja/user-guide/configuration/secrets" + - title: "Metadata" + url: "/ja/user-guide/metadata" - title: "環境変数" url: "/ja/user-guide/environment-variables" - title: "テンプレート" diff --git a/docs/ja/user-guide/configuration/metadata.md b/docs/ja/user-guide/configuration/metadata.md deleted file mode 100644 index 39db1a67..00000000 --- a/docs/ja/user-guide/configuration/metadata.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -layout: main -title: Metadata -category: User Guide -menu: menu_ja -toc: -- title: Metadata - url: "#metadata" -- title: What is Metadata? - url: "#what-is-metadata" -- title: Manipulating Metadata - url: "#manipulating-metadata" ---- - -# Metadata - -## Metadata とは? - -Metadata は[ビルド](../../about/appendix/domain#build)に関する情報を保持する key/value ストアです。Metadata は同じ [workflow](../../about/appendix/domain#workflow) 内の後続のビルドで共有されます。Metadata は [steps](../../about/appendix/domain#step) 内で組み込まれている [meta CLI](https://github.com/screwdriver-cd/meta-cli) を利用することで、全てのビルドで更新と取得が可能です。 - -## Metadata の操作 - -Screwdriver は meta store から情報を取得するためのシェルコマンド `meta get` と、meta store に情報を保存するための シェルコマンド `meta set` を提供しています。 - -例: - -```bash -$ meta set example.coverage 99.95 -$ meta get example.coverage -99.95 -$ meta get example -{"coverage":99.95} -``` - -例: - -```bash -$ meta set foo[2].bar[1] baz -$ meta get foo -[null,null,{"bar":[null,"baz"]}] -``` diff --git a/docs/ja/user-guide/metadata.md b/docs/ja/user-guide/metadata.md new file mode 100644 index 00000000..992d0a88 --- /dev/null +++ b/docs/ja/user-guide/metadata.md @@ -0,0 +1,65 @@ +--- +layout: main +title: Metadata +category: User Guide +menu: menu_ja +toc: +- title: Metadata + url: "#metadata" +- title: Metadataとは? + url: "#Metadataとは" +- title: Metadataの操作 + url: "#Metadataの操作" +--- + +# Metadata + +## Metadataとは? + +Metadataは [ビルド](../../about/appendix/domain#build) に関する情報を保持する key/value ストアです。Metadataは [steps](../../about/appendix/domain#step) 内で組み込まれている [meta CLI](https://github.com/screwdriver-cd/meta-cli) を利用することで、全てのビルドで更新と取得が可能です。 + +## Metadataの操作 + +Screwdriver は meta store から情報を取得するためのシェルコマンド `meta get` と、meta store に情報を保存するためのシェルコマンド `meta set` を提供しています。 + +### 同一パイプライン + +Screwdriverのビルドでは、同ビルドでセットされたMetadata、もしくは同パイプラインの以前のビルドでセットされたMetadataを取得することができます。 + +例: `build1` -> `build2` -> `build3` + +`build2` のMetadataは、自身でセットしたMetadataと `build1` でセットしたMetadataを保持しています。 + +`build3` のMetadataは、 `build2` が持っていたMetadataを保持しています。 ( `build1` のMetadataも含む) + +```bash +$ meta set example.coverage 99.95 +$ meta get example.coverage +99.95 +$ meta get example +{"coverage":99.95} +``` + +例: + +```bash +$ meta set foo[2].bar[1] baz +$ meta get foo +[null,null,{"bar":[null,"baz"]}] +``` + +### 外部パイプライン + +Screwdriverのビルドは外部トリガー元のジョブのMetadataにも `--external` フラグにトリガー元のジョブを指定することでアクセスすることができます。 + +例: `sd@123:publish` -> `build1` の時 `build1` のビルド内で: + +``` +$ meta get example --external sd@123:publish +{"coverage":99.95} +``` + +注意: + +- `meta set` は外部パイプラインのジョブに対してはできません。 +- もしフラグの値がトリガー元のジョブではなかった場合、 `meta get` は `null` を返します。