Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
自动FTP部署:是否有任何自动/可编程工具可用?_Ftp_Web Deployment_Continuous Deployment - Fatal编程技术网

自动FTP部署:是否有任何自动/可编程工具可用?

自动FTP部署:是否有任何自动/可编程工具可用?,ftp,web-deployment,continuous-deployment,Ftp,Web Deployment,Continuous Deployment,我需要这个 观看目录内容 当目录内容更改时 删除特定的ftp文件夹 将所有目录内容上载到同一ftp文件夹 我完全不知道完成这项任务的最佳方法 我在寻找建议/想法。。。。吞咽咕哝节点?没有:) 事实上,我不知道构建工具。因此,在尝试/批评每一个选项之前,我请你提出建议 编辑:请注意,我要求一个能够监视文件更改并上传到FTP的Continuos部署工具 我不能选择更改FTP。。。我只想换工作您需要的是一个连续部署解决方案。FTP不一定是需要做的事情。您没有提到技术堆栈,但如果您(例如)在Vi

我需要这个

  • 观看目录内容
  • 当目录内容更改时
    • 删除特定的ftp文件夹
    • 将所有目录内容上载到同一ftp文件夹
我完全不知道完成这项任务的最佳方法

我在寻找建议/想法。。。。吞咽咕哝节点?没有:)

事实上,我不知道构建工具。因此,在尝试/批评每一个选项之前,我请你提出建议

编辑:请注意,我要求一个能够监视文件更改并上传到FTP的Continuos部署工具


我不能选择更改FTP。。。我只想换工作

您需要的是一个连续部署解决方案。FTP不一定是需要做的事情。您没有提到技术堆栈,但如果您(例如)在VisualStudio中工作,您可以通过Azure集成轻松设置应用程序服务的连续部署。这样,每当你在VS中打开项目时,如果你修改代码并保存它们,它们就会上传到你的应用程序中


当然,您可以使用许多不同的连续部署解决方案。这是一个我比较熟悉的具体例子。如果您进行研究,我相信您会找到您需要的(而不是编写脚本来为您执行目录监视和FTP)

您描述的用户案例是独一无二的,因此您不会找到一个已经构建的解决方案,您可以简单地运行它并完成它。您需要创建自己的

监视目录。

这可以翻译成“你的代码需要知道文件上传”。这可以通过将“通知”推送到您的代码上或您的代码自己拉“通知”来实现

遗憾的是,从FTP服务器推送将不起作用,因为(据我所知)没有FTP服务器支持文件上传时的推送通知。要理解我在这里的意思,请考虑SVN post commit hook

最简单的拉取方法是跟踪FTP日志并查找STOR命令,匹配您的监视目录(通过regexp),然后在匹配时执行bash/PHP或任何其他脚本以执行步骤(2)步骤(2)是一些ftp客户端命令

对于PHP:

  • 删除目录:
  • 上传一个文件(在注释中有递归的例子来上传目录和 内容如下:

为什么不上传修改后的文件?当一个文件被修改时,这比上传整个文件夹要快。@RayRadin:没问题,这更好,但是。。。哪个工具可以处理此自动部署?查看内容更改:
inotifywait
;远程计算机上的身份验证:
ssh
;文件同步:
rsync
,配方在此答案中:。所有这些结合在一起的问题都被称为。要求我们推荐或查找书籍、工具、软件库、教程或其他非现场资源的问题对于堆栈溢出来说是离题的,因为它们往往会吸引固执己见的答案和垃圾邮件。取而代之的是,到目前为止已经做了些什么来解决它。“持续部署解决方案”:好的,确切地说“FTP不一定是”。这就是问题所在。。。2017年,FTP部署是为了避免,但我不能选择这个。。。我们只有一个共享主机服务,所以我认为只有FTP才是真正的部署解决方案。这就是问题的根源:“这是一场等待发生的灾难”。。。在一个非常大的代码树中上载单个文件夹和/或文件可能会导致所有可能的不一致代码状态。。。。所以:我需要一个CD工具,它可以管理FTP作为最终部署通道。我不确定我是否理解您的要求。FTP可能是使用CD解决方案的最终结果。。。当出现新文件时,您选择的任何CD解决方案都必须将文件上载到服务器,对吗?你认为这是怎么做到的?可能是幕后的。如果您的“共享主机服务”无法安装CD,该怎么办?