如何测试用户属于使用 Chef Inspec 的组列表?
How to test user belongs to a list of group using Chef Inspec?
我有一个用户 bogus_user
属于三个组 bogus_user, sftpusers and airflow
。
在我的规范中,我有以下声明,但我必须按特定顺序放置组才能通过验证。我不认为这很理想,有没有办法让它检查组列表而不关心顺序?
describe user('bogus_user') do
it { should exist }
its('uid') { should eq 1002 }
its('groups') { should include [ 'bogus_user', 'sftpusers', 'airflow' ] }
its('home') { should eq '/var/ftp/pub/bogus_user' }
end
这不是最好的也不理想的解决方案,但它确实有效:
describe user('bogus_user') do
it { should exist }
its('uid') { should eq 1002 }
%w(bogus_user sftpusers airflow).each do |group|
its('groups') { should include group }
end
its('home') { should eq '/var/ftp/pub/bogus_user' }
end
我有一个用户 bogus_user
属于三个组 bogus_user, sftpusers and airflow
。
在我的规范中,我有以下声明,但我必须按特定顺序放置组才能通过验证。我不认为这很理想,有没有办法让它检查组列表而不关心顺序?
describe user('bogus_user') do
it { should exist }
its('uid') { should eq 1002 }
its('groups') { should include [ 'bogus_user', 'sftpusers', 'airflow' ] }
its('home') { should eq '/var/ftp/pub/bogus_user' }
end
这不是最好的也不理想的解决方案,但它确实有效:
describe user('bogus_user') do
it { should exist }
its('uid') { should eq 1002 }
%w(bogus_user sftpusers airflow).each do |group|
its('groups') { should include group }
end
its('home') { should eq '/var/ftp/pub/bogus_user' }
end