我有一个 Dockerfile,它使用 Jenkins Swarm 插件启动 Jenkins 从节点。我在这张图片中有一个非 root 用户“jenkins”设置。jenkins 用户有 nvm 设置。我正在尝试使用 serverspec 测试这个 Docker 映像,但我似乎找不到在服务器规范文件中以非 root 用户身份运行命令的方法。
这确认用户 jenkins 已安装:
describe user('jenkins') do
it { should exist }
it { should belong_to_primary_group 'jenkins' }
end
但我似乎无法完成这项工作:
describe command('whoami') do
let(:sudo_options) { '-u jenkins -i' }
its(:stdout) { should match 'jenkins' }
end
我什至尝试过这样的事情:
describe command('sudo -u jenkins nvm --version') do
its(:stdout) { should match(/0.33.0/) }
end
在使用 serverspec 进行这项工作时寻求帮助。任何帮助将不胜感激。