在部署AWS彈性青苗我想要做的兩件事情:彈性青苗cron和部署權限
- 採取:用cron項的文件,並將該文件中/etc/cron.d/
- 變化包含在一個單一的目錄shell腳本文件的權限,使他們能夠由cron
在我.ebextensions文件夾執行我有以下幾點:
container_commands:
00fix_script_permissions:
command: "chmod u+x /var/app/current/scripts/*"
01setup_cron:
command: "cat .ebextensions/propel_mis_crons.txt > /etc/cron.d/propel_mis_crons && chmod 644 /etc/cron.d/propel_mis_crons"
leader_only: true
而且在.ebextensions文件夾中的propel_mis_crons.txt有:
# m h dom mon dow command
MAILTO="[email protected]"
* * * * * root /var/app/current/scripts/current_time.sh
我檢查部署日誌,我可以看到以下內容:
2013-08-09 14:27:13,633 [DEBUG] Running command 00fix_permissions_dirs
2013-08-09 14:27:13,633 [DEBUG] Generating defaults for command 00fix_permissions_dirs
<<<
2013-08-09 14:27:13,736 [DEBUG] No test for command 00fix_permissions_dirs
2013-08-09 14:27:13,752 [INFO] Command 00fix_permissions_dirs succeeded
2013-08-09 14:27:13,753 [DEBUG] Command 00fix_permissions_dirs output:
2013-08-09 14:27:13,753 [DEBUG] Running command 01setup_cron
2013-08-09 14:27:13,753 [DEBUG] Generating defaults for command 01setup_cron
<<<
2013-08-09 14:27:13,829 [DEBUG] Running test for command 01setup_cron
2013-08-09 14:27:13,846 [DEBUG] Test command output:
2013-08-09 14:27:13,847 [DEBUG] Test for command 01setup_cron passed
2013-08-09 14:27:13,871 [INFO] Command 01setup_cron succeeded
2013-08-09 14:27:13,872 [DEBUG] Command 01setup_cron output:
但是在部署上的所有權限腳本目錄中的文件設置不正確,並且cron不能運行。我不確定是否由於權限問題導致cron沒有運行,或者是否有其他問題會阻止此問題。這是在PHP5.4 64位Amazon Linux實例上運行的。
希望對此有所幫助。隨着時間的推移,很有可能會添加由cron觸發的新shell腳本。
你救了我!關鍵是編輯.../ondeck/...文件,而不是....../current/... one!謝謝 – TimSum