blob: a3b06842dd940375d5e7cfbdf6add7d75be03f69 [file] [log] [blame]
[
{
"cmd": [],
"name": "ensure nsjail"
},
{
"cmd": [
"vpython3",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"RECIPE_MODULE[fuchsia::nsjail]/resources/nsjail/tool_manifest.json",
"/path/to/tmp/json"
],
"infra_step": true,
"name": "ensure nsjail.read manifest",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@tool_manifest.json@{@@@",
"@@@STEP_LOG_LINE@tool_manifest.json@ \"path\": \"path/to/nsjail\",@@@",
"@@@STEP_LOG_LINE@tool_manifest.json@ \"version\": \"version:pinned-version\"@@@",
"@@@STEP_LOG_LINE@tool_manifest.json@}@@@",
"@@@STEP_LOG_END@tool_manifest.json@@@"
]
},
{
"cmd": [],
"name": "ensure nsjail.install path/to/nsjail",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"vpython3",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"ensure-directory",
"--mode",
"0777",
"[START_DIR]/cipd_tool/path/to/nsjail/version%3Apinned-version"
],
"infra_step": true,
"name": "ensure nsjail.install path/to/nsjail.ensure package directory",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"cipd",
"ensure",
"-root",
"[START_DIR]/cipd_tool/path/to/nsjail/version%3Apinned-version",
"-ensure-file",
"path/to/nsjail version:pinned-version",
"-max-threads",
"0",
"-json-output",
"/path/to/tmp/json"
],
"infra_step": true,
"name": "ensure nsjail.install path/to/nsjail.ensure_installed",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"result\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
"@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-version:pinned-v\", @@@",
"@@@STEP_LOG_LINE@json.output@ \"package\": \"path/to/nsjail\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@"
]
},
{
"cmd": [],
"name": "ensure dumb_init"
},
{
"cmd": [
"vpython3",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"RECIPE_MODULE[fuchsia::nsjail]/resources/dumb_init/tool_manifest.json",
"/path/to/tmp/json"
],
"infra_step": true,
"name": "ensure dumb_init.read manifest",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@tool_manifest.json@{@@@",
"@@@STEP_LOG_LINE@tool_manifest.json@ \"path\": \"path/to/dumb_init\",@@@",
"@@@STEP_LOG_LINE@tool_manifest.json@ \"version\": \"version:pinned-version\"@@@",
"@@@STEP_LOG_LINE@tool_manifest.json@}@@@",
"@@@STEP_LOG_END@tool_manifest.json@@@"
]
},
{
"cmd": [],
"name": "ensure dumb_init.install path/to/dumb_init",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"vpython3",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"ensure-directory",
"--mode",
"0777",
"[START_DIR]/cipd_tool/path/to/dumb_init/version%3Apinned-version"
],
"infra_step": true,
"name": "ensure dumb_init.install path/to/dumb_init.ensure package directory",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"cipd",
"ensure",
"-root",
"[START_DIR]/cipd_tool/path/to/dumb_init/version%3Apinned-version",
"-ensure-file",
"path/to/dumb_init version:pinned-version",
"-max-threads",
"0",
"-json-output",
"/path/to/tmp/json"
],
"infra_step": true,
"name": "ensure dumb_init.install path/to/dumb_init.ensure_installed",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"result\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
"@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-version:pinned-v\", @@@",
"@@@STEP_LOG_LINE@json.output@ \"package\": \"path/to/dumb_init\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@"
]
},
{
"cmd": [],
"name": "find tool paths"
},
{
"cmd": [
"which",
"awk"
],
"name": "find tool paths.find absolute path of awk",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"basename"
],
"name": "find tool paths.find absolute path of basename",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"cat"
],
"name": "find tool paths.find absolute path of cat",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"chmod"
],
"name": "find tool paths.find absolute path of chmod",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"cmp"
],
"name": "find tool paths.find absolute path of cmp",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"comm"
],
"name": "find tool paths.find absolute path of comm",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"cp"
],
"name": "find tool paths.find absolute path of cp",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"cut"
],
"name": "find tool paths.find absolute path of cut",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"diff"
],
"name": "find tool paths.find absolute path of diff",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"dirname"
],
"name": "find tool paths.find absolute path of dirname",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"egrep"
],
"name": "find tool paths.find absolute path of egrep",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"env"
],
"name": "find tool paths.find absolute path of env",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"expr"
],
"name": "find tool paths.find absolute path of expr",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"find"
],
"name": "find tool paths.find absolute path of find",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"grep"
],
"name": "find tool paths.find absolute path of grep",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"gzip"
],
"name": "find tool paths.find absolute path of gzip",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"head"
],
"name": "find tool paths.find absolute path of head",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"ldd"
],
"name": "find tool paths.find absolute path of ldd",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"ls"
],
"name": "find tool paths.find absolute path of ls",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"mkdir"
],
"name": "find tool paths.find absolute path of mkdir",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"mktemp"
],
"name": "find tool paths.find absolute path of mktemp",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"readlink"
],
"name": "find tool paths.find absolute path of readlink",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"rm"
],
"name": "find tool paths.find absolute path of rm",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"sed"
],
"name": "find tool paths.find absolute path of sed",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"sort"
],
"name": "find tool paths.find absolute path of sort",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"tail"
],
"name": "find tool paths.find absolute path of tail",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"tar"
],
"name": "find tool paths.find absolute path of tar",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"tee"
],
"name": "find tool paths.find absolute path of tee",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"touch"
],
"name": "find tool paths.find absolute path of touch",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"tr"
],
"name": "find tool paths.find absolute path of tr",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"uname"
],
"name": "find tool paths.find absolute path of uname",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"wc"
],
"name": "find tool paths.find absolute path of wc",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"which"
],
"name": "find tool paths.find absolute path of which",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"which",
"-a",
"git"
],
"name": "find all git binaries"
},
{
"cmd": [
"[START_DIR]/cipd_tool/path/to/nsjail/version%3Apinned-version/nsjail",
"--disable_clone_newipc",
"--disable_clone_newuts",
"--disable_clone_newcgroup",
"--disable_rlimits",
"--time_limit",
"43200",
"--bindmount",
"[CLEANUP]/tmp_tmp_1:/tmp",
"--bindmount_ro",
"/b/s/w/ir/cipd_bin_packages/bin/git",
"--bindmount_ro",
"/bin/bash",
"--bindmount_ro",
"/dev/urandom",
"--bindmount_ro",
"/first/level",
"--bindmount_ro",
"/first/level/second",
"--bindmount_ro",
"/lib",
"--bindmount_ro",
"/lib64",
"--bindmount_ro",
"/usr/bin/awk",
"--bindmount_ro",
"/usr/bin/basename",
"--bindmount_ro",
"/usr/bin/cat",
"--bindmount_ro",
"/usr/bin/chmod",
"--bindmount_ro",
"/usr/bin/cmp",
"--bindmount_ro",
"/usr/bin/comm",
"--bindmount_ro",
"/usr/bin/cp",
"--bindmount_ro",
"/usr/bin/cut",
"--bindmount_ro",
"/usr/bin/diff",
"--bindmount_ro",
"/usr/bin/dirname",
"--bindmount_ro",
"/usr/bin/egrep",
"--bindmount_ro",
"/usr/bin/env",
"--bindmount_ro",
"/usr/bin/expr",
"--bindmount_ro",
"/usr/bin/find",
"--bindmount_ro",
"/usr/bin/grep",
"--bindmount_ro",
"/usr/bin/gzip",
"--bindmount_ro",
"/usr/bin/head",
"--bindmount_ro",
"/usr/bin/ldd",
"--bindmount_ro",
"/usr/bin/ls",
"--bindmount_ro",
"/usr/bin/mkdir",
"--bindmount_ro",
"/usr/bin/mktemp",
"--bindmount_ro",
"/usr/bin/openssl",
"--bindmount_ro",
"/usr/bin/readlink",
"--bindmount_ro",
"/usr/bin/rm",
"--bindmount_ro",
"/usr/bin/sed",
"--bindmount_ro",
"/usr/bin/sort",
"--bindmount_ro",
"/usr/bin/tail",
"--bindmount_ro",
"/usr/bin/tar",
"--bindmount_ro",
"/usr/bin/tee",
"--bindmount_ro",
"/usr/bin/touch",
"--bindmount_ro",
"/usr/bin/tr",
"--bindmount_ro",
"/usr/bin/uname",
"--bindmount_ro",
"/usr/bin/wc",
"--bindmount_ro",
"/usr/bin/which",
"--bindmount",
"[CACHE]",
"--bindmount_ro",
"[CACHE]/incremental",
"--bindmount_ro",
"[START_DIR]/cipd_tool/path/to/dumb_init/version%3Apinned-version/dumb_init",
"--symlink",
"/usr/bin/bash:/usr/bin/sh",
"--env",
"HOME=/tmp",
"--env",
"PATH=/b/s/w/ir/cipd_bin_packages/bin:/usr/bin:/bin",
"--env",
"TMPDIR=/tmp",
"--",
"[START_DIR]/cipd_tool/path/to/dumb_init/version%3Apinned-version/dumb_init",
"/bin/bash"
],
"name": "sandboxed step",
"timeout": 60
},
{
"name": "$result"
}
]