【发布时间】:2011-06-05 09:07:32
【问题描述】:
我在这里尝试做的是使用 Hudson 存储在其中的凭据执行某种 SVN 操作。
例如
- 开始构建项目 Foo
- Project Foo 启动一个 shell 脚本
- Shell 脚本使用 Hudson 中设置的凭据为项目 Foo 执行当前源的标记
- 构建继续
现在我知道有各种标记插件,但这些并不是我想要的,因为标记取决于构建选项,而不是构建成功。我可以很好地编写脚本,但是当在 Hudson 下运行时,这一切都会失败,因为没有所需的凭据,svn 副本将无法工作 - 因此需要访问 Hudson 已经用于签出项目的那个。
【问题讨论】:
-
奇数。我有一个构建脚本可以做到这一点,我不需要做任何特别的事情来从 Hudson 签出的工作目录运行 svn 命令。也许您是从工作区根目录而不是实际工作目录运行副本?
-
@Dave Bacher: 你的 svn 服务器需要认证吗?
-
@Arthur Ulfeldt:是的,确实如此(并且存储在 Hudson 中的 svn 凭据具有读写访问权限)。我可能做了一些初始配置(作为运行 Hudson 进程的用户)来设置 svn,以便 svn CLI 命令适用于 hudson 用户 - 例如
sudo -u hudson svn info $repo_url并让 svn 存储凭据。