示例#1
0
 def present(self):
     ''' Handles state == 'present', creating or updating the secret '''
     if self.secrets:
         secret = self.secrets[-1]
         self.results['secret_id'] = secret['ID']
         self.results['secret_name'] = secret['Spec']['Name']
         data_changed = False
         attrs = secret.get('Spec', {})
         if attrs.get('Labels', {}).get('ansible_key'):
             if attrs['Labels']['ansible_key'] != self.data_key:
                 data_changed = True
         else:
             if not self.force:
                 self.client.module.warn("'ansible_key' label not found. Secret will not be changed unless the force parameter is set to 'yes'")
         labels_changed = not compare_generic(self.labels, attrs.get('Labels'), 'allow_more_present', 'dict')
         if self.rolling_versions:
             self.version = self.get_version(secret)
         if data_changed or labels_changed or self.force:
             # if something changed or force, delete and re-create the secret
             if not self.rolling_versions:
                 self.absent()
             secret_id = self.create_secret()
             self.results['changed'] = True
             self.results['secret_id'] = secret_id
             self.results['secret_name'] = self.name
     else:
         self.results['changed'] = True
         self.results['secret_id'] = self.create_secret()
         self.results['secret_name'] = self.name
 def present(self):
     ''' Handles state == 'present', creating or updating the config '''
     config = self.get_config()
     if config:
         self.results['config_id'] = config['ID']
         data_changed = False
         attrs = config.get('Spec', {})
         if attrs.get('Labels', {}).get('ansible_key'):
             if attrs['Labels']['ansible_key'] != self.data_key:
                 data_changed = True
         labels_changed = not compare_generic(
             self.labels, attrs.get('Labels'), 'allow_more_present', 'dict')
         if data_changed or labels_changed or self.force:
             # if something changed or force, delete and re-create the config
             self.absent()
             config_id = self.create_config()
             self.results['changed'] = True
             self.results['config_id'] = config_id
     else:
         self.results['changed'] = True
         self.results['config_id'] = self.create_config()
示例#3
0
 def present(self):
     ''' Handles state == 'present', creating or updating the config '''
     if self.configs:
         config = self.configs[-1]
         self.results['config_id'] = config['ID']
         self.results['config_name'] = config['Spec']['Name']
         data_changed = False
         template_driver_changed = False
         attrs = config.get('Spec', {})
         if attrs.get('Labels', {}).get('ansible_key'):
             if attrs['Labels']['ansible_key'] != self.data_key:
                 data_changed = True
         else:
             if not self.force:
                 self.client.module.warn(
                     "'ansible_key' label not found. Config will not be changed unless the force parameter is set to 'yes'"
                 )
         # template_driver has changed if it was set in the previous config
         # and now it differs, or if it wasn't set but now it is.
         if attrs.get('Templating', {}).get('Name'):
             if attrs['Templating']['Name'] != self.template_driver:
                 template_driver_changed = True
         elif self.template_driver:
             template_driver_changed = True
         labels_changed = not compare_generic(
             self.labels, attrs.get('Labels'), 'allow_more_present', 'dict')
         if self.rolling_versions:
             self.version = self.get_version(config)
         if data_changed or template_driver_changed or labels_changed or self.force:
             # if something changed or force, delete and re-create the config
             if not self.rolling_versions:
                 self.absent()
             config_id = self.create_config()
             self.results['changed'] = True
             self.results['config_id'] = config_id
             self.results['config_name'] = self.name
     else:
         self.results['changed'] = True
         self.results['config_id'] = self.create_config()
         self.results['config_name'] = self.name
def test_compare_generic(entry):
    assert compare_generic(entry['a'], entry['b'], entry['method'],
                           entry['type']) == entry['result']