20

commands配列を使用して、.ebextensions/*.config のソース コードにコマンドを配置できることを知っています。ただし、これらはデプロイごとに実行されます。新しいインスタンスを起動するときに設定コマンドを 1 回だけ実行したい場合はどうすればよいですか?

4

2 に答える 2

39

test:コマンドは、修飾子を使用して条件付きで実行できます。実行するテストを指定します。テストが 0 を返す場合、コマンドが実行されます。それ以外の場合は実行されません。

構成ファイルの最後のコマンドがファイルに触れ、一度だけ実行したい上記のコマンドがそのファイルの存在を確認する場合、それらのコマンドは最初にのみ実行されます。

commands:
  01-do-always:
    command: run_my_script
  02-do-on-boot:
    command: script_to_run_once
    test: test ! -f .semaphore
  99-signal-startup-complete:
    command: touch .semaphore

Windowsでは、このようなものになります

commands:
  01-do-always:
    command: run_my_script
  02-do-on-boot:
    command: script_to_run_once
    test: if exists c:\\path\\to\\semaphore.txt (exit 0) else (exit 1)
  99-signal-startup-complete:
    command: date > c:\\path\\to\\semaphore.txt
于 2013-05-30T21:48:37.527 に答える