Add keymaster middleware
Add support for configuring swift-proxy keymaster middleware. The keymaster middleware handles keys for swift encryption[1]. [1] https://docs.openstack.org/swift/latest/overview_encryption.html Change-Id: Ic6c34c5381eb4f57642493b5acf127dba4f7834e
This commit is contained in:

committed by
Takashi Kajinami

parent
140456e44a
commit
7f1a945550
24
manifests/proxy/keymaster.pp
Normal file
24
manifests/proxy/keymaster.pp
Normal file
@@ -0,0 +1,24 @@
|
||||
#
|
||||
# Configure Swift Keymaster middleware.
|
||||
#
|
||||
# == Examples
|
||||
#
|
||||
# include swift::proxy::keymaster
|
||||
#
|
||||
# == Parameters
|
||||
#
|
||||
# [*encryption_root_secret*]
|
||||
# Encryption root secret value.
|
||||
#
|
||||
class swift::proxy::keymaster (
|
||||
$encryption_root_secret,
|
||||
) {
|
||||
|
||||
include swift::deps
|
||||
|
||||
swift_proxy_config {
|
||||
'filter:keymaster/use': value => 'egg:swift#keymaster';
|
||||
'filter:keymaster/encryption_root_secret': value => $encryption_root_secret, secret => true;
|
||||
}
|
||||
|
||||
}
|
@@ -0,0 +1,5 @@
|
||||
---
|
||||
features:
|
||||
- |
|
||||
A new class ``swift::proxy::keymaster`` has been added. This supports the
|
||||
configuration of swift-proxy keymaster middleware.
|
28
spec/classes/swift_proxy_keymaster_spec.rb
Normal file
28
spec/classes/swift_proxy_keymaster_spec.rb
Normal file
@@ -0,0 +1,28 @@
|
||||
require 'spec_helper'
|
||||
|
||||
describe 'swift::proxy::keymaster' do
|
||||
shared_examples 'swift::proxy::keymaster' do
|
||||
let :params do
|
||||
{
|
||||
:encryption_root_secret => 'secret',
|
||||
}
|
||||
end
|
||||
|
||||
context "when using default parameters" do
|
||||
it { is_expected.to contain_swift_proxy_config('filter:keymaster/use').with_value('egg:swift#keymaster') }
|
||||
it { is_expected.to contain_swift_proxy_config('filter:keymaster/encryption_root_secret').with_value('secret').with_secret(true) }
|
||||
end
|
||||
end
|
||||
|
||||
on_supported_os({
|
||||
:supported_os => OSDefaults.get_supported_os
|
||||
}).each do |os,facts|
|
||||
context "on #{os}" do
|
||||
let (:facts) do
|
||||
facts.merge(OSDefaults.get_facts())
|
||||
end
|
||||
|
||||
it_configures 'swift::proxy::keymaster'
|
||||
end
|
||||
end
|
||||
end
|
Reference in New Issue
Block a user