在代码部署时创建虚拟主机

时间:2018-07-13 14:06:41

标签: amazon-web-services aws-code-deploy

我正在使用AWS Code Deployment进行我的应用程序部署。在此过程中,我在appspec.yml文件中使用了虚拟主机创建代码。它工作正常。但是它也在执行第二次部署。我如何防止这种情况。是我的应用规格代码

BeforeInstall:
    - location: scripts/create_virtualhost
      timeout: 300
      runas: root
    - location: scripts/start_server
      timeout: 300
      runas: root
  ApplicationStop:
    - location: scripts/stop_server
      timeout: 300
      runas: root
  create_virtualhost.sh文件
 echo '<VirtualHost *:80>
    ServerAdmin test@demo.com
    DocumentRoot "/var/www/html/demo.com"
    ServerName demo.com
    ServerAlias www.demo.com
</VirtualHost>' >> /etc/httpd/conf/httpdnew.conf

1 个答案:

答案 0 :(得分:1)

据我所知,您不能限制只执行一次的钩子。仅应用程序停止挂钩将不会在首次部署时运行。因此您必须在脚本中处理这些问题。也许你可以做这样的事情

create_virtualhost.sh

#!/bin/bash
if [ -e /etc/httpd/conf/httpdnew.conf ]
then
    echo "vhost exists..skipping.."
else
    echo '<VirtualHost *:80>
    ServerAdmin test@demo.com
    DocumentRoot "/var/www/html/demo.com"
    ServerName demo.com
    ServerAlias www.demo.com
    </VirtualHost>' >> /etc/httpd/conf/httpdnew.conf
fi