Beispiel #1
0
    def __init__(self,
                 project_repo=None,
                 order_repo=None,
                 secret_repo=None,
                 project_secret_repo=None,
                 datum_repo=None,
                 kek_repo=None,
                 secret_meta_repo=None,
                 container_repo=None,
                 repositories=None,
                 db_start=rep.start,
                 db_commit=rep.commit,
                 db_rollback=rep.rollback,
                 db_clear=rep.clear):
        LOG.debug('Creating KeystoneEventConsumer task processor')

        self.db_start = db_start
        self.db_commit = db_commit
        self.db_rollback = db_rollback
        self.db_clear = db_clear

        self.repos = repositories
        if not repositories:
            self.repos = rep.Repositories(
                project_repo=project_repo,
                order_repo=order_repo,
                secret_repo=secret_repo,
                project_secret_repo=project_secret_repo,
                datum_repo=datum_repo,
                kek_repo=kek_repo,
                secret_meta_repo=secret_meta_repo,
                container_repo=container_repo)
    def _init_memory_db_setup(self):

        # Force a refresh of the singleton plugin manager for each test.
        manager._PLUGIN_MANAGER = None
        manager.CONF.set_override('enabled_crypto_plugins',
                                  'simple_crypto',
                                  group='crypto')

        self.project_id1 = uuid.uuid4().hex
        self.project_id2 = uuid.uuid4().hex

        self.repos = rep.Repositories(
            project_repo=None, project_secret_repo=None, secret_repo=None,
            datum_repo=None, kek_repo=None, secret_meta_repo=None,
            order_repo=None, order_plugin_meta_repo=None,
            transport_key_repo=None, container_repo=None,
            container_secret_repo=None)

        self.project1_data = c_resources.get_or_create_project(
            self.project_id1, self.repos.project_repo)
        self.assertIsNotNone(self.project1_data)

        self.project2_data = c_resources.get_or_create_project(
            self.project_id2, self.repos.project_repo)
        self.assertIsNotNone(self.project2_data)
Beispiel #3
0
    def setUp(self):
        super(WhenTestingPluginResource, self).setUp()
        self.plugin_resource = resources
        self.spec = {'algorithm': 'RSA',
                     'bit_length': 1024,
                     'passphrase': 'changeit'
                     }
        self.content_type = 'application/octet-stream'
        self.project_model = mock.MagicMock()
        asymmetric_meta_dto = secret_store.AsymmetricKeyMetadataDTO()
        # Mock plug-in
        self.moc_plugin = mock.MagicMock()
        self.moc_plugin.generate_asymmetric_key.return_value = (
            asymmetric_meta_dto)
        self.moc_plugin.store_secret.return_value = {}

        moc_plugin_config = {
            'return_value.get_plugin_generate.return_value':
            self.moc_plugin,
            'return_value.get_plugin_store.return_value':
            self.moc_plugin,
            'return_value.get_plugin_retrieve_delete.return_value':
            self.moc_plugin
        }

        self.moc_plugin_patcher = mock.patch(
            'barbican.plugin.interface.secret_store'
            '.SecretStorePluginManager',
            **moc_plugin_config
        )
        self.moc_plugin_patcher.start()
        self.addCleanup(self.moc_plugin_patcher.stop)

        project_repo = mock.MagicMock()
        secret_repo = mock.MagicMock()
        secret_repo.create_from.return_value = None
        container_repo = mock.MagicMock()
        container_repo.create_from.return_value = None
        container_secret_repo = mock.MagicMock()
        container_secret_repo.create_from.return_value = None
        project_secret_repo = mock.MagicMock()
        project_secret_repo.create_from.return_value = None
        secret_meta_repo = mock.MagicMock()
        secret_meta_repo.create_from.return_value = None

        self.repos = repo.Repositories(
            container_repo=container_repo,
            container_secret_repo=container_secret_repo,
            project_repo=project_repo,
            secret_repo=secret_repo,
            project_secret_repo=project_secret_repo,
            secret_meta_repo=secret_meta_repo
        )
Beispiel #4
0
 def __init__(self, project_repo=None, order_repo=None,
              secret_repo=None, project_secret_repo=None, datum_repo=None,
              kek_repo=None, container_repo=None,
              container_secret_repo=None, secret_meta_repo=None):
         LOG.debug('Creating UpdateOrder task processor')
         self.repos = rep.Repositories(
             project_repo=project_repo,
             order_repo=order_repo,
             secret_repo=secret_repo,
             project_secret_repo=project_secret_repo,
             datum_repo=datum_repo,
             kek_repo=kek_repo,
             container_repo=container_repo,
             container_secret_repo=container_secret_repo,
             secret_meta_repo=secret_meta_repo
         )
Beispiel #5
0
 def __init__(self,
              project_repo=None,
              secret_repo=None,
              project_secret_repo=None,
              datum_repo=None,
              kek_repo=None,
              secret_meta_repo=None,
              transport_key_repo=None):
     LOG.debug('Creating SecretsController')
     self.validator = validators.NewSecretValidator()
     self.repos = repo.Repositories(project_repo=project_repo,
                                    project_secret_repo=project_secret_repo,
                                    secret_repo=secret_repo,
                                    datum_repo=datum_repo,
                                    kek_repo=kek_repo,
                                    secret_meta_repo=secret_meta_repo,
                                    transport_key_repo=transport_key_repo)
Beispiel #6
0
    def __init__(self,
                 secret_id,
                 project_repo=None,
                 secret_repo=None,
                 datum_repo=None,
                 kek_repo=None,
                 secret_meta_repo=None,
                 transport_key_repo=None):
        LOG.debug('=== Creating SecretController ===')
        self.secret_id = secret_id

        # TODO(john-wood-w) Remove passed-in repositories in favor of
        #  repository factories and patches in unit tests.
        self.repos = repo.Repositories(project_repo=project_repo,
                                       secret_repo=secret_repo,
                                       datum_repo=datum_repo,
                                       kek_repo=kek_repo,
                                       secret_meta_repo=secret_meta_repo,
                                       transport_key_repo=transport_key_repo)