我正在尝试在成功部署后在/var/app/current
目录中创建一个文件。我已在.ebextensions
下创建了一个配置文件,但该文件尚未创建。我认为它总是被覆盖,因为首先在/tmp/deployment/application
检出文件。我不想跟踪我的VCS中的文件。
我的配置文件:
# .ebextensions/create_file.config
files:
"/var/app/current/src/webapp/dist/testfile.html":
mode: "000644"
owner: nodejs
group: nodejs
content: |
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<h1>foo</h1>
<body>
</html>
答案 0 :(得分:4)
虽然未在the documentation中明确说明,但所有.ebextensions
命令都在之前运行到最终部署步骤。也就是说,在将新版本的应用程序部署到/var/app/ondeck
但在该目录重命名为/var/app/current
之前,它们都已执行。
所发生的事情是,您的testfile.html
正在写入旧目录/var/app/current
,该目录稍后会被删除并替换为新目录{{ 1}}。
在移动目录之后,没有官方支持的机制来执行命令,但我(和许多其他人)使用an unofficial workaround。基本上,编写一个shell脚本来移动或创建所需的文件,并将其放入/var/app/ondeck
。