这是我在jenkins服务器上运行的fabric脚本。你知道吗
sudo('/home/myjenkins/killit.sh',pty=False)
sudo('/home/myjenkins/makedir.sh',pty=False)
sudo('/home/myjenkins/runit.sh',pty=False)
这将杀死旧服务器,创建一个virtualenv,安装需求并重新启动服务器。你知道吗
问题是启动服务器的脚本-运行.sh:-
nohup /home/myjenkins/devserver/dev/bin/python /home/myjenkins/devserver
/workspace/manage.py runserver --noreload 0:80 >> jenkins.out &
当启动服务器的jenkins服务器和我导航到主页时,它会给我一个404页找不到。上面写着/静态/索引.html找不到。但文件存在。当我开sudo bash的时候运行.sh“而且我进入主页,效果很好。你知道吗
mkdir -p /home/myjenkins/devserver
cp -rf /home/myjenkins/workspace /home/jenkins/devserver/
cp -f /home/myjenkins/dev_settings.py /home/myjenkins/devserver/workspace/mywebsite/settings.py
cd /home/myjenkins/devserver
virtualenv -p python3 dev
cd /home/myjenkins/devserver/workspace
../dev/bin/pip install -r requirements.txt
如果你需要的话,请问我更多的细节。你知道吗
编辑日期:2018年9月2日
当我从包含管理.py,服务器能够为文件提供服务。但是Jenkins是从主文件夹启动脚本的,如果我也从主文件夹启动脚本,服务器就找不到文件了。更多细节请看我的评论。如果有人能解释为什么会发生这种情况,那就太好了,尽管我已经在脚本中指定了完整的路径。你知道吗
nohup /home/myjenkins/devserver/dev/bin/python /home/myjenkins/devserver
/workspace/manage.py runserver --noreload 0:80 >> jenkins.out &
好吧,我知道整件事了。我的django服务器从错误的文件夹获取了npm构建的输出。你知道吗
在设置.py文件中,变量
STATICFILES_DIRS
被设置为:-而不是:-
因此,当Jenkins运行脚本时,它是从主文件夹运行的。这使得Django的staticfiles查找程序可以查看/home/myjenkins/frontend/dist,而不是相对的“../frontend/dist”
相关问题 更多 >
编程相关推荐