我们正在使用章鱼来部署我们的项目。在部署期间执行的一堆步骤。其中之一是 powershell 脚本,并且该 powershell 脚本正在进行中。
然而,为了测试脚本,我们必须执行一个虚拟签入,或者在我们更改构建 powershell 脚本步骤后可以在 octopus 中创建一个新版本,它会立即获取构建步骤并且不会缓存,否则获取的脚本执行的是以前的版本。
我不知道这是缓存还是其他问题。我认为这是章鱼或我缺少的设置的某种问题。
请帮忙。
我们正在使用章鱼来部署我们的项目。在部署期间执行的一堆步骤。其中之一是 powershell 脚本,并且该 powershell 脚本正在进行中。
然而,为了测试脚本,我们必须执行一个虚拟签入,或者在我们更改构建 powershell 脚本步骤后可以在 octopus 中创建一个新版本,它会立即获取构建步骤并且不会缓存,否则获取的脚本执行的是以前的版本。
我不知道这是缓存还是其他问题。我认为这是章鱼或我缺少的设置的某种问题。
请帮忙。
部署自动化的一个重要方面是确保每次运行时都准确地重复部署。
当您在 Octopus Deploy 中创建发布时,工件、流程和变量都被“锁定”在该发布中。这意味着无论您进行什么更改,在该版本的整个生命周期内,每次都会以相同的方式执行。
如果您的部署工具没有这样做,那么相同的版本可以在您的测试环境中工作,但随后在实时环境中失败,因为部署过程以某种方式发生了变化。
实际上,您以与发布对应用程序本身的更改相同的方式发布对部署过程的更改。
这就是为什么您需要在 Octopus Deploy 中创建一个新版本才能看到您所做的更改。
这既是福也是祸……一方面 - 您现有的计划发布Production
受到保护,不会在较低环境中进行更改。另一方面 -release
如果您需要在周期中进行轻微的流程更改,您将被迫重新创建。这是可以说是正确的方法,因为您希望测试任何更改 - 但如果您的更改只能在更高的环境中测试(例如,可能只是Production
负载平衡),则可能不相关。
该软件确实允许在Variables
周期中进行更新,但不允许Process Steps
. 我相信这个功能被要求在未来的版本中使用。