私はrubyでシェフのInSpecテストを書いて、 'umask 077'のファイル内容を確認しています。問題は、私が探している配列の中のいくつかのファイルが存在しないことです。私はnilファイルを除外して再プッシュしようとしていますが、とにかくすべてのファイルをチェックしようとしているようです。何かご意見は? 、存在する場合、InSpecでファイルの内容を確認してください。
control 'auth-default-umask' do
impact 0.5
title 'Default umask'
desc 'DISA RHEL6 STIG (V1R2)'
%w(/etc/profile /etc/bashrc /etc/csh.login /etc/.login).each do |umask_file|
filecheck = []
unless umask_file == nil
filecheck.push(umask_file)
describe directory(filecheck) do
its('content') { should match /umask 077/ }
end
end
end
end
は迅速な対応をありがとう!これはうまくいきますが、私はまだそれがなぜわかりません。もともと私は、ファイルチェックの変数が、存在していたファイルをすべて保持することを望んでいましたが、それを確認しましたが、ここでは起こっていないようです。 filecheckは今このコードで何をしているのですか? – Blooze
@Blooze存在するすべてのファイルを保持しています。機能的には、実際には何も役に立たず、コードから安全に削除することができます。 @Casrafこの質問は実際シェフに関連するものではなく、 'describe directory'は実際には'記述ファイル 'でなければなりません(RSpecマッチャーと同じように動作しますが、' file'がこのために推奨されるServerspecです)。 –
@Blooze私は答えにいくつかの明確さを追加:) – casraf