代码之家  ›  专栏  ›  技术社区  ›  Magnar Myrtveit

Smarty文件不会使用Elastic Beanstalk、CodePipeline和CodeCommit重新编译

  •  1
  • Magnar Myrtveit  · 技术社区  · 7 年前

    /var/app/current/ 目录,它们将在每次部署中删除。

    但当我这样做时,Smarty不会在更新原始模板文件时更新编译后的模板文件。我已经调查了原因,当我查看EC2实例上的原始模板文件时,它们的最后修改日期都是1979-12-31 05:08:00。

    我猜想Smarty会查看文件的修改日期,以确定编译的文件是否是最新的。由于编译后的模板比原始模板更新,即使它们不是最新的,也被认为是最新的。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Yilun Cui    7 年前

    CodeCommit为存储库中最新提交到S3生成zip存档。CodePipeline将此存档用于ElasticBeanstalk应用程序。

    zip存档中每个文件的修改日期设置为0 epoch或1970年1月1日12:00:00 AM GMT,而不管文件最后一次在存储库中添加或更改的时间。将来,这可能会更改为生成存档的时间戳或提交的时间戳。

    因此,我们不建议根据文件的最后修改日期对应用程序逻辑做出任何决定。我不清楚为什么你看到的最后一个修改日期是1979-12-31 05:08:00(0纪元后10年)。