到目前为止,我已经在Jenkins中看到了与构建过程相关的不同选项和作业。我想知道是否有办法创建一个连接到数据库并运行脚本的作业,这将执行一些操作。也许,Jenkins可以运行脚本文件或只存储一些动作来运行。提前致谢。
答案 0 :(得分:3)
开箱即用,Jenkins中没有数据库插件或作业。
最简单的方法是执行Ant任务。 Jenkins中有对ant任务的本机支持。查看Ant的SQLTask
答案 1 :(得分:3)
您有两个主要选择:
使用执行shell 或执行Windows批处理命令构建步骤
使用基于java的工具,如liquibase,ant tasks,maven plugin等等。您甚至可以将其作为JUnit测试的一部分。考虑搜索数据库迁移java'
其中哪些是正确的'解决方案取决于构建的目的:
您是否需要数据库进行某些测试?那么你可能应该使用基于java的解决方案,因为它独立于平台,很可能适用于任何操作系统。
您是否希望在将数据库脚本交给管理员进行部署之前对其进行实际测试?然后你可能想要使用管理员要使用的确切工具,并在管理员使用的操作系统上执行它。很可能他们并不热衷于使用基于java的工具。
答案 2 :(得分:1)
执行shell (在类Unix系统上)和执行Windows批处理命令(在Windows上)构建步骤可用于在Jenkins上运行任意脚本。
答案 3 :(得分:0)
您可能希望查看LiquiBase,它可以通过Maven执行与平台无关的脚本。这可能不适合您的用例,但我过去曾成功使用它来管理与特定软件版本相关的数据库更改,以及环境之间的构建升级。