繁体   English   中英

启动詹金斯连接作为詹金斯

[英]Starting jenkins connection as jenkins

我认为这是一个非常简单的问题,但无法在任何地方找到解决方案。 我必须将jenkins plist文件(或只是.jar文件)作为jenkins运行,而不是作为管理员运行。 这是我的文件现在的外观:

<key>Label</key>
    <string>com.example.ci</string>
    <key>ProgramArguments</key>
    <array>
        <string>sudo</string>
        <string>/usr/bin/java</string>
        <string>-Djava.awt.headless=true</string>
        <string>-jar</string>
        <string>/Users/Shared/Jenkins/Home/slave.jar</string>
        <string>-jnlpUrl</string>
        <string>http://[adres]/slave-agent.jnlp
</string>
        <string>-secret</string>
        <string>841557ed784ead7secret[334b3ac76fe1618e375
</string>
    </array>
    <key>KeepAlive</key>
    <true/>
    <key>StandardOutPath</key>
    <string>/Users/Shared/Jenkins/Home/stdout.log</string>
    <key>StandardErrorPath</key>
    <string>/Users/Shared/Jenkins/Home/error.log</string>

我试图添加命令以切换到詹金斯:

苏多·苏·詹金斯

所以我尝试添加如下内容:

<key>Jenkins user</key>
        <string>what.to.put.here</string>
        <key>OtherArguments</key>
        <array>
            <string>sudo</string>
            <string>su</string>
            <string>jenkins</string>
        </array>

在上述几行之前,但据我所知,我仍然没有以詹金斯身份登录。 当我使用我写的那些命令从命令行执行此操作时,它可以工作,但是我希望它在系统启动时运行。

编辑:

盖格回答后,我补充说:

<key>UserName</key>
<string>jenkins</string>

但是我仍然没有权限给詹金斯用户拥有的目录。

如果您使用的是系统launchctl plist,则只需添加UserName键:

<key>UserName</key>
<string>jenkins</string>

与您在plist中的其他键处于同一级别。 然后删除所有与sudo相关的东西。

请注意,这必须是已启动的系统(位于/System/Library/LaunchDaemon/Library/LaunchDaemon ),否则您将无权使用有问题的用户。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM