【问题标题】:Jenkins Artifactory Plugin: Updating to the Latest Snapshot on GitJenkins Artifactory 插件:更新到 Git 上的最新快照
【发布时间】:2013-07-29 02:46:41
【问题描述】:

当我们发布时,发布工件和标签都按预期创建。但是,该项目未正确更新到下一个(快照)版本。

发布的示例配置:

控制台日志的相关部分:

[RELEASE] Committing release version on branch 'master'
[RELEASE] Creating tag '1.3.14'
[RELEASE] Pushing branch 'master' to 'ssh://git@git.cloudbees.com/xxx/yyy.git'
[RELEASE] Pushing tag '1.3.14' to 'ssh://git@git.cloudbees.com/xxx/yyy.git'
[RELEASE] Changing POMs to next development version
[RELEASE] Committing next development version on branch 'master'
Finished: SUCCESS

正如预期的那样,项目在 Git 中的状态:

$ git pull origin master
From ssh://git.cloudbees.com/xxx/yyy
 * branch            master     -> FETCH_HEAD
Already up-to-date.
$ git show --summary
commit df10d905c24c1cbf8d0b6992ab366ac5dcba470b
Author: CloudBees DEV@Cloud <nobody@cloudbees.com>
Date:   Mon Jul 29 09:04:38 2013 +0000
$ git remote show origin
* remote origin
  Fetch URL: ssh://git@git.cloudbees.com/xxx/yyy.git
  Push  URL: ssh://git@git.cloudbees.com/xxx/yyy.git
  HEAD branch: master

    RELEASED 1.3.14

所以看起来下一个快照的更新正在本地提交,但没有被推送。这是一个错误(我couldn't find a related ticket)还是我们做错了什么?

PS:这个问题只发生在 Git 上,Subversion 工作正常。我们的 Artifactory 插件版本是 2.1.6,应该是最新的。

【问题讨论】:

  • 我们未能重现此行为。如果可以,请尝试在我们的公共用户列表中详细说明或使用 Jfrog 支持 (support@jfrog.com) 服务。

标签: git jenkins release


【解决方案1】:

解决方案:选择“将工件部署到工件”构建后操作。除了执行实际的工件部署外,插件还在这里执行更新的 POM 缺失的最终 git push。

解决方法(如果您真的不想将工件部署到 Artifactory):添加“Git Publisher”的构建后操作。我检查了“仅在构建成功时推送”。然后我单击“添加分支”并将“master”放入分支中以推送(因为我在 git“签出到特定本地分支”框中有 master,根据插件配置页面)和“目标远程”中的“origin”名称”块。这强制推送本地提交的更新 POM。

如果插件为 maven 自动完成最终的 git push 并发布到 Artifactory,而无需像 gradle 一样选择“将 Artifacts 部署到 Artifactory”构建后操作,那就太好了。

【讨论】:

  • 太好了,解决了。请注意,我们实际上并没有使用 Artifactory 本身,因此解决方法对我们来说是正确的解决方案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-04-04
  • 1970-01-01
  • 2013-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多