![](/img/trans.png)
[英]git push from local machine to server works but not files on server
[英]Git push to deploy and copy environment variables from local machine
我已经设置了混帐推部署如图所示在这里 ,它的伟大工程,但它目前需要额外的步骤:当环境变量需要添加或删除,像这样
git push production master-更新服务器上的源代码,运行部署后任务,重新启动应用程序服务器
将production.env复制到生产中-覆盖production.env,重新启动应用程序服务器
我想知道是否可以“将控制权”传递回发起推送的本地计算机,将环境文件从本地计算机复制,然后将“返回控制权”复制到生产服务器以运行部署后任务,最后重新启动服务器。 所有在git post内接收钩子吗?
或简而言之,就是推动部署解决方案的步骤,该解决方案只需一步即可在环境文件上进行复制。 有人知道是否有在本地执行的预推钩子吗?
还好奇PaaS提供程序如何允许您通过Web界面管理环境变量,这些环境变量是否存储在数据库中并在某个时候导出?
当前解决方案
deploy.sh(此文件在本地主机上并在本地执行)
post_deploy.sh(此文件在服务器上,并且可以从如上所述在本地执行的部署脚本远程执行)
理想的解决方案
我希望能够运行git push production master
并执行以下任务,这些任务由git post-receive钩子或适当的替代方法触发。
通过尝试解释自己的问题,您可以学到很多东西,结果发现有一个在运行推之前在客户端运行的预推钩子。 我在那里添加了预部署任务,它可以按预期工作。 因此,总之,最终推动部署设置的过程看起来像这样
git push production master
这将执行以下操作:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.