Ресурс cassandradb_session
Используйте ресурс проверки аудита Chef InSpec, чтобы протестировать команды языка запросов Cassandra (CQL), выполняемые на базе данных Cassandra.
Доступность
Установка
Этот ресурс распространяется вместе с самим Chef InSpec. Вы можете использовать его автоматически.
Синтаксис
Блок ресурса cassandradb_session объявляет имя пользователя, пароль, хост и порт для сессии, а затем команду для выполнения:
describe cassandradb_session(user: 'USERNAME', password: 'PASSWORD', host: 'localhost', port: 9042).query('QUERY') do
its('value') { should eq('EXPECTED') }
end
где
-
cassandradb_sessionобъявляет имя пользователя, пароль, хост и порт для выполнения запроса. -
query('QUERY')содержит запрос, который необходимо выполнить. -
its('value') { should eq('expected') }сравнивает результаты запроса с ожидаемым результатом в тесте.
Дополнительные параметры
Ресурс InSpec cassandradb_session принимает параметры user, password, host, и port.
В частности:
user
Значение по умолчанию: cassandra.
password
Значение по умолчанию: cassandra.
Примеры
Следующие примеры демонстрируют, как использовать этот ресурс аудита Chef InSpec.
Тестирование соответствия значений с помощью запроса Cassandra
cql = cassandradb_session(user: 'MY_USER', password: 'PASSWORD', host: 'localhost', port: 9042)
describe cql.query("SELECT cluster_name FROM system.local") do
its('output') { should match /Test Cluster/ }
end
Тестирование соответствия значений с помощью запроса Cassandra из образцовой базы данных
cql = cassandradb_session(user: 'MY_USER', password: 'PASSWORD', host: 'localhost', port: 9042)
describe cql.query("use SAMPLEDB; SELECT name FROM SAMPLETABLE") do
its('output') { should match /Test Name/ }
end
Сопоставители
Полный список доступных сопоставителей можно найти на нашей странице сопоставителей.
© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/cassandradb_session/