규칙
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)을 따서 sh_binary() 규칙의 이름을 지정하는 것이 좋습니다. 규칙 이름과 파일 이름은 달라야 합니다.
sh_binary는 셰뱅을 준수하므로 사용 가능한 인터프리터를 사용할 수 있습니다 (예:
#!/bin/zsh)
예
종속 항목이 없고 일부 데이터 파일이 있는 간단한 셸 스크립트의 경우:
sh_binary(
name = "foo",
srcs = ["foo.sh"],
data = glob(["datafiles/*.txt"]),
)
인수
| 속성 | |
|---|---|
name |
이름, 필수 이 타겟의 고유한 이름입니다. |
deps
|
라벨 목록, 기본값은 deps
at Typical attributes defined by
most build rules에 관한 일반적인 의견을 확인하세요.
이 속성은 |
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 셸))와 이러한 프로그램이 런타임에 필요로 하는 모든 데이터로 구성된 논리적
"라이브러리"를 함께 집계하는 것입니다. 이러한 "라이브러리"는 하나 이상의 sh_binary 규칙의 data 속성에서 사용할 수 있습니다.
filegroup 규칙을 사용하여 데이터
파일을 집계할 수 있습니다.
해석된 프로그래밍 언어에서는 '코드'와 '데이터'를 명확하게
구분하기가 쉽지 않습니다. 결국 프로그램은 인터프리터의 관점에서 '데이터'일
뿐입니다. 이러한 이유로
이 규칙에는 본질적으로 동일한 세 가지 속성이 있습니다.
srcs, deps 및 data.
현재 구현에서는 이러한 목록의 요소를 구분하지 않습니다.
세 가지 속성 모두 규칙, 소스 파일, 생성된 파일을 허용합니다.
하지만 다른 규칙과 마찬가지로 속성을 일반적인 용도로 사용하는 것이 좋습니다.
예
sh_library(
name = "foo",
data = [
":foo_service_script", # an sh_binary with srcs
":deploy_foo", # another sh_binary with srcs
],
)
인수
| 속성 | |
|---|---|
name |
이름, 필수 이 타겟의 고유한 이름입니다. |
deps
|
라벨 목록, 기본값은 deps
at Typical attributes defined by
most build rules에 관한 일반적인 의견을 확인하세요.
이 속성은 |
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)을 따서 sh_binary() 규칙의 이름을 지정하는 것이 좋습니다. 규칙 이름과 파일 이름은 달라야 합니다.
sh_binary는 셰뱅을 준수하므로 사용 가능한 인터프리터를 사용할 수 있습니다 (예:
#!/bin/zsh)
예
종속 항목이 없고 일부 데이터 파일이 있는 간단한 셸 스크립트의 경우:
sh_binary(
name = "foo",
srcs = ["foo.sh"],
data = glob(["datafiles/*.txt"]),
)
인수
| 속성 | |
|---|---|
name |
이름, 필수 이 타겟의 고유한 이름입니다. |
deps
|
라벨 목록, 기본값은 deps
at Typical attributes defined by
most build rules에 관한 일반적인 의견을 확인하세요.
이 속성은 |
srcs
|
라벨 목록, 기본값은
이 속성은 이 라이브러리에 속하는 셸 스크립트 소스 파일을 나열하는 데 사용해야 합니다. 스크립트는 셸의 |