当前位置: 首页 > 知识库问答 >
问题:

如何在Jenkins中执行Liquibase脚本,而不将Liquibase插件安装为shell脚本

景嘉实
2023-03-14

我们使用的是Liquibase 3.6.3版本

我们正在使用SQL服务器数据库上的liquibase运行SQL升级脚本,使用liquibase.bat(我们作为安装的一部分获得),如下所示。这是按预期工作的。

命令:

liquibase.bat--ChangeLogFile=...\MasterChangelog.xml--驱动程序==com.microsoft.sqlserver.jdbc.SQLServerDriver--classpath=sqljdbc4-3.0.jar--url="jdbc: sqlserver://;数据库名称=MyDB;用户=MyUser;密码=MyPassword;"--logLevel=INFO更新

现在我们的要求是通过Jenkins实现与我们目前正在转向AWS相同的目标。

问题:

•我们是否有任何支持Jenkins的liquibase插件?

•我们是否有任何bash支持的脚本,其行为与liquibase相同。球棒

•我们是否有任何shell命令片段可以在Jenkins上执行liquibase脚本?

任何脚本片段,以便我们可以在Jenkins管道中使用它们

有没有其他方法可以实现这一目标?

共有2个答案

孙京
2023-03-14

看来这对我有用。

窗户:

liquibase.bat--ChangeLogFile=...\MasterChangelog.xml--驱动程序==com.microsoft.sqlserver.jdbc.SQLServerDriver--classpath=sqljdbc4-3.0.jar--url="jdbc: sqlserver://;数据库名称=MyDB;用户=MyUser;密码=MyPassword;"--logLevel=INFO更新

bash脚本:

./liquibase--更改日志文件=/MasterChangeLog。xml’--url=jdbc:sqlserver://MyDB;databaseName=MyDB;用户=MyUser;密码=MyPassword;'--日志级别=信息更新

顾昌翰
2023-03-14

liquibase附带了一个shell脚本,该脚本相当于liquibase。bat。

Liquibase至少有一个Jenkins插件-https://wiki.jenkins.io/display/JENKINS/Liquibase跑步者

 类似资料:
  • 问题内容: 我有一个Windows从站,安装了bash。我正在尝试在其上运行Shell脚本作为预构建步骤。关于如何执行此操作的任何想法? 问题答案: 您需要使用脚本作为参数运行bash: 您可能还需要根据环境提供完整的bash路径。

  • 我有一个用LiquiBase创建DB模式的glassfish应用程序。我已经将相同的应用程序迁移到Spring Boot。我没有删除DB架构。当我部署Spring应用程序并运行liquibase脚本时,我得到 更新:这可能与changelog文件中存储的MD5总和有关吗?所以新应用程序计算的md5与旧应用程序计算的md5不匹配,脚本被触发,导致明显的异常? 多谢

  • 问题内容: 我保留一个名为的shell脚本文件 ,并从构建中执行该文件。 当我执行构建时,它失败。 控制台输出如下: 我在应该保留外壳脚本文件以便执行的位置上感到困惑。 问题答案: 如果看到错误消息,则提示 在工作空间中构建/ var / lib / jenkins / workspace / AutoScript 并根据您的评论将urltest.sh放入 / var / lib / jenkin

  • 我有一个gradle构建设置,在开始时,我想在准备我的环境的子目录中执行一个shellscript。 但是,当我通过调用 或仅通过构建项目来执行任务时,会发生以下错误: 不幸的是,这就是我得到的一切。 我也尝试了以下 - 相同的错误。 我在Windows上使用Gradle 1.10(Android需要),在Cygwin shell中。有什么想法吗?

  • 问题内容: 我想从PHP脚本执行系统上存在的Bash脚本。我的系统上有两个脚本。其中一个是称为at at 的PHP脚本,另一个是称为at at 的Bash脚本。 我的client.php脚本看起来像 我的睾丸看起来像 当我在终端上执行以下操作时 我在终端上得到以下输出 但是当我在打开页面时 我得到以下输出 即使执行了chmod + x testscript,我仍然收到此错误。 我如何从浏览器中获取

  • 问题内容: 我尝试谷歌搜索答案,但没有运气。 我需要使用我的超级计算机服务器,但是要运行我的python脚本,必须通过shell脚本执行。 例如我要执行 如何做到这一点? 问题答案: 只需确保python可执行文件在PATH环境变量中,然后在脚本中添加 细节: 在文件job.sh中,放入 执行此命令以使脚本可运行: 运行 :