ルール
sh_binary
ルールのソースを表示sh_binary(name, deps, srcs, data, args, compatible_with, deprecation, distribs, env, env_inherit, exec_compatible_with, exec_properties, features, output_licenses, restricted_to, tags, target_compatible_with, testonly, toolchains, visibility)
sh_binary ルールは、実行可能シェル スクリプトを宣言するために使用されます。
(sh_binary は誤称です。出力は必ずしもバイナリではありません)。このルールにより
、すべての依存関係がビルドされ、実行時にrunfiles領域に表示されます。
sh_binary() ルールには、スクリプト名から
拡張子(.sh など)を除いた名前を付けることをおすすめします。ルール名とファイル名は異なる必要があります。
sh_binary は shebang を尊重するため、使用可能な任意のインタープリタを使用できます(例:
#!/bin/zsh)
例
依存関係がなく、いくつかのデータファイルを含むシンプルなシェル スクリプトの場合:
sh_binary(
name = "foo",
srcs = ["foo.sh"],
data = glob(["datafiles/*.txt"]),
)
引数
| 属性 | |
|---|---|
name |
名前(必須) このターゲットの一意の名前。 |
deps
|
このターゲットに集約される「ライブラリ」ターゲットのリスト。
`deps` の一般的なコメントについては、deps
ほとんどのビルドルールで定義される
一般的な属性をご覧ください。
この属性は、 |
srcs
|
入力ファイルのリスト。
この属性は、このライブラリに属するシェル スクリプトのソースファイルを一覧表示するために使用する必要があります。
スクリプトは、シェルの |
env_inherit
|
文字列のリスト(デフォルトは |
sh_library
ルールのソースを表示sh_library(name, deps, srcs, data, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, restricted_to, tags, target_compatible_with, testonly, toolchains, visibility)
このルールの主な用途は、関連するスクリプト(コンパイルやリンクを必要としない解釈済み言語のプログラム(Bourne シェルなど))と、それらのプログラムが実行時に必要とするデータを集約して、論理的な
「ライブラリ」を構成することです。このような「ライブラリ」は、
1 つ以上の data 属性の sh_binary ルールから使用できます。
filegroup ルールを使用してデータ
ファイルを集約できます。
解釈済みプログラミング言語では、「コード」と「データ」が明確に
区別されないことがあります。結局のところ、プログラムはインタープリタの観点から見ると単なる「データ」です。そのため、このルールには 3 つの属性があり、これらはすべて基本的に同等です。srcs、deps、data。現在の実装では、これらのリストの要素は区別されません。
3 つの属性すべてで、ルール、ソースファイル、生成されたファイルを使用できます。
ただし、他のルールと同様に、属性を通常の目的に使用することをおすすめします。
例
sh_library(
name = "foo",
data = [
":foo_service_script", # an sh_binary with srcs
":deploy_foo", # another sh_binary with srcs
],
)
引数
| 属性 | |
|---|---|
name |
名前(必須) このターゲットの一意の名前。 |
deps
|
このターゲットに集約される「ライブラリ」ターゲットのリスト。
`deps` の一般的なコメントについては、deps
ほとんどのビルドルールで定義される
一般的な属性をご覧ください。
この属性は、 |
srcs
|
入力ファイルのリスト。
この属性は、このライブラリに属するシェル スクリプトのソースファイルを一覧表示するために使用する必要があります。
スクリプトは、シェルの |
sh_test
ルールのソースを表示sh_test(name, deps, srcs, data, args, compatible_with, deprecation, distribs, env, env_inherit, exec_compatible_with, exec_properties, features, flaky, local, restricted_to, shard_count, size, tags, target_compatible_with, testonly, timeout, toolchains, visibility)
sh_binary ルールは、実行可能シェル スクリプトを宣言するために使用されます。
(sh_binary は誤称です。出力は必ずしもバイナリではありません)。このルールにより
、すべての依存関係がビルドされ、実行時にrunfiles領域に表示されます。
sh_binary() ルールには、スクリプト名から
拡張子(.sh など)を除いた名前を付けることをおすすめします。ルール名とファイル名は異なる必要があります。
sh_binary は shebang を尊重するため、使用可能な任意のインタープリタを使用できます(例:
#!/bin/zsh)
例
依存関係がなく、いくつかのデータファイルを含むシンプルなシェル スクリプトの場合:
sh_binary(
name = "foo",
srcs = ["foo.sh"],
data = glob(["datafiles/*.txt"]),
)
引数
| 属性 | |
|---|---|
name |
名前(必須) このターゲットの一意の名前。 |
deps
|
このターゲットに集約される「ライブラリ」ターゲットのリスト。
`deps` の一般的なコメントについては、deps
ほとんどのビルドルールで定義される
一般的な属性をご覧ください。
この属性は、 |
srcs
|
入力ファイルのリスト。
この属性は、このライブラリに属するシェル スクリプトのソースファイルを一覧表示するために使用する必要があります。
スクリプトは、シェルの |