The following text is a partial translation of the original English article, performed by ChatGPT (gpt-3.5-turbo) and this Jekyll plugin:
当我部署一个名为stateful.co的Java Web应用程序到CloudBees时,只需要花费我30秒的时间,甚至可能更短。最近,我部署了版本1.6.5。你可以在GitHub问题#6中看到整个过程:
正如你所见,我给Rultor发送了一个命令,它打包、测试并将新版本部署到了CloudBees。我什么其他操作都没有做。
现在让我们看看你如何做到同样的事情。你如何配置你的项目,使得部署新版本到CloudBees只需要花费你几秒钟的时间。
Configure the CloudBees Maven Plugin
将此配置文件添加到您的 pom.xml
中:
这个插件不在Maven Central(不幸的是)。这就是为什么我们必须指定 <pluginRepository>
。
注意,我们还禁用了 maven-deploy-plugin
,因为它会尝试将你的WAR包部署到 <distributionManagement>
部分指定的仓库中。我们希望避免这种情况发生。
只有在定义了 bees.id
属性时,配置文件才会被激活。在正常的开发和测试过程中,这不会发生,但在由Rultor启动的部署周期中,它会发生,因为我们将在 settings.xml
中定义此属性(下面讨论)。
在CloudBees上创建一个帐户并注册您的Web应用程序。CloudBees是免费的,只要您不需要太多的计算能力。我相信Web应用程序在定义上应该是轻量级的,因此CloudBees的免费层是一个理想的选择。
创建一个settings.xml
文件(但不要将其提交到您的存储库中!):
使用rultor remote对此文件进行加密:
请使用你的GitHub项目的名称替换me/test
。
你应该得到一个settings.xml.asc
文件;将其添加到你的项目的根目录中,然后提交并推送。该文件包含了你的CloudBees凭据,但是以加密格式存储。除了Rultor服务器外,没有人可以读取它。
我建议使用jcabi-parent。它可以直接配置所需的插件。如果您正在使用它,请跳过此步骤。
否则,请将此插件添加到您的pom.xml
文件中:
Configure Rultor
在您的项目根目录下创建一个.rultor.yml
文件(此参考页面详细解释了该格式)。
你可以将你的文件与活动的Rultor stateful.co的配置进行比较。
现在是时候看看它是如何运作的了。在GitHub问题跟踪器中创建一个新的工单,并将类似以下内容的内容发布到其中(详细了解Rultor命令)。
您将在几秒钟内收到回复。其余的工作将由 Rultor 完成。
顺便说一句,如果我解释的东西出了问题,请毫不犹豫地在Rultor问题跟踪器上提交一张工单。我会尽力帮助你。
此外,类似的配置也可以用于Heroku(使用jcabi-heroku-maven-plugin)和AWS Elastic Beanstalk(使用jcabi-beanstalk-maven-plugin)。我可能会单独为它们撰写文章。
Translated by ChatGPT gpt-3.5-turbo/42 on 2023-12-27 at 10:54