У меня проблема с serverspec. Я пытаюсь проверить установленную версию пакета на Ubuntu.
Я использую этот код:
describe 'java packages' do
it 'package openjdk-9-jre should be installed with the correct version' do
expect(package('openjdk-9-jre')).to be_installed.with_version('9~b114-0ubuntu1')
end
end
Serverspec запускает команду dpkg-query для проверки пакета, но экранирует символ тильды, и это не работает. спецификация сервера работает:
dpkg-query -f '${Status} ${Version}' -W openjdk-9-jre | grep -E '^(install|hold) ok installed 9\\~b114-0ubuntu1$'
вместо
dpkg-query -f '${Status} ${Version}' -W openjdk-9-jre | grep -E '^(install|hold) ok installed 9~b114-0ubuntu1$'
Как я могу решить эту проблему?