【问题标题】:Want to run Post-deployment script only once in AWS只想在 AWS 中运行一次部署后脚本
【发布时间】:2019-03-01 08:58:33
【问题描述】:

对于 codeDeployment 脚本,我们提供安装前、安装后脚本。 我的要求是只运行一次安装后脚本,即该脚本应仅在第一次部署时部署在服务器上。

由于脚本是通用的,所以它浪费了服务器上已经存在的大量时间。

有没有办法跳过这个安装后脚本以进行进一步的部署?

就我而言,我正在为部署后脚本中目录内的所有目录和文件执行“chown”。

【问题讨论】:

    标签: linux amazon-web-services unix aws-code-deploy aws-codepipeline


    【解决方案1】:

    当无法更改安装顺序时,可以尝试两种方法。
    1. 通过一些日志跟踪部署

    #!/bin/bash
    phase4=/var/deploy4
    if [ ! -f "${phase4}} ]; then
       echo "$(date) Installation started" > "${phase4}"
       # Do your thing
    fi
    
    1. 看看你将要改变的事情

      #!/bin/bash
      changeme="/some/path/to/some/initial/root/owned/file"
      if [ -n "$(find . -name "${changeme}" -user root)" ]; then
         echo "Running chown script"
         chown somebody "${changeme}"
      fi
      

    【讨论】:

    • 非常感谢。
    猜你喜欢
    • 2014-11-09
    • 1970-01-01
    • 2018-03-03
    • 2017-07-16
    • 1970-01-01
    • 2016-09-13
    • 1970-01-01
    • 1970-01-01
    • 2017-04-07
    相关资源
    最近更新 更多