2.12. 環境変数#
ツールは制限された環境で実行されるため、親プロセスからほとんどの環境変数を引き継ぎません。 ツールの環境変数は、EnvVarRequirement を使って設定できます。
env.cwl##!/usr/bin/env cwl-runner
cwlVersion: v1.2
class: CommandLineTool
baseCommand: env
requirements:
EnvVarRequirement:
envDef:
HELLO: $(inputs.message)
inputs:
message: string
outputs:
example_out:
type: stdout
stdout: output.txt
echo-job.yml#message: Hello world!
ここで、コマンドラインにツール定義と入力オブジェクトを指定して、cwltool を起動します:
$ cwltool env.cwl echo-job.yml
INFO /opt/hostedtoolcache/Python/3.14.7/x64/bin/cwltool 3.2.20260720092025
INFO Resolved 'env.cwl' to 'file:///home/runner/work/user_guide/user_guide/src/_includes/cwl/environment-variables/env.cwl'
INFO [job env.cwl] /tmp/t5wiiwub$ env > /tmp/t5wiiwub/output.txt
INFO [job env.cwl] completed success
{
"example_out": {
"location": "file:///home/runner/work/user_guide/user_guide/src/_includes/cwl/environment-variables/output.txt",
"basename": "output.txt",
"class": "File",
"checksum": "sha1$3a6e15bd7ab3296cb8457488cf1837b4f3973f93",
"size": 407,
"path": "/home/runner/work/user_guide/user_guide/src/_includes/cwl/environment-variables/output.txt"
}
}INFO Final process status is success
$ cat output.txt
HELLO=Hello world!
HOME=/tmp/t5wiiwub
TMPDIR=/tmp/rlcdyrhp
PATH=/opt/hostedtoolcache/Python/3.14.7/x64/bin:/opt/hostedtoolcache/Python/3.14.7/x64:/snap/bin:/home/runner/.local/bin:/opt/pipx_bin:/home/runner/.cargo/bin:/home/runner/.config/composer/vendor/bin:/usr/local/.ghcup/bin:/home/runner/.dotnet/tools:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin