Luaライブラリを使う
Esshは設定にLuaを使用し、いくつかの組み込みのLuaライブラリも持っています。ライブラリをロードするにはrequire
関数を使います。
例:
local question = require "question"
task "example" {
prepare = function ()
local r = question.ask("Are you OK? [y/N]: ")
if r ~= "y" then
-- return false, the task does not run.
return false
end
end,
script = [=[
echo "foo"
]=],
}
question
はEsshの組み込みライブラリでgluaquestionによって実装されています。これはターミナルからのユーザ入力を取得する機能を提供します。
タスクのプロパティprepare
は、タスクの開始時に実行される関数を定義する設定です。
タスクを実行すると、Esshはメッセージを表示し、入力を待ちます。
$ essh example
Are you OK? [y/N]: y
foo
Luaライブラリの詳細については、Lua VMセクションを参照してください。
次のセクションに進みましょう: ドライバを使う