由于 ScriptTimedOut,AWS CodeDeploy 在 AfterInstall 中失败
AWS CodeDeploy failing in AfterInstall due to ScriptTimedOut
我已将 AWS 连接到 github
appspec.yml
version: 0.0
os: linux
files:
- source: /
destination: /home/mybot
hooks:
AfterInstall:
- location: RunMyBot.sh
timeout: 300
runas: root
RunMyBot.sh
#!bin/bash
cd /home/mybot/
yum install -y python3-pip python3 python3-setuptools
sudo python3 -m pip install --user --upgrade pip
pip3 install -r requirements.txt
python botMain.py
错误:
我想 运行 我的主文件 - botMain.py,但它没有 运行。
我尝试从脚本中删除安装行,因为它说它们已经安装,但我仍然遇到超时,我的 botMain.py 不是 运行ning。
应该是python3
,而不是python
。但是无论如何,您的部署会挂起,因为如果 botMain.py
是服务器,它只会启动而不会完成。因此,等待 botMain.py
完成其执行的 CD 超时从未发生过。
要正确地 运行 你的 botMain.py
你应该 运行 它是一个 daemon 服务。为此,您可以在 linux 上为 systemd
创建自定义单位文件。其中一个例子是 .
我已将 AWS 连接到 github
appspec.yml
version: 0.0
os: linux
files:
- source: /
destination: /home/mybot
hooks:
AfterInstall:
- location: RunMyBot.sh
timeout: 300
runas: root
RunMyBot.sh
#!bin/bash
cd /home/mybot/
yum install -y python3-pip python3 python3-setuptools
sudo python3 -m pip install --user --upgrade pip
pip3 install -r requirements.txt
python botMain.py
错误:
我想 运行 我的主文件 - botMain.py,但它没有 运行。
我尝试从脚本中删除安装行,因为它说它们已经安装,但我仍然遇到超时,我的 botMain.py 不是 运行ning。
应该是python3
,而不是python
。但是无论如何,您的部署会挂起,因为如果 botMain.py
是服务器,它只会启动而不会完成。因此,等待 botMain.py
完成其执行的 CD 超时从未发生过。
要正确地 运行 你的 botMain.py
你应该 运行 它是一个 daemon 服务。为此,您可以在 linux 上为 systemd
创建自定义单位文件。其中一个例子是