@@ -156,7 +156,7 @@ def process(self):
156156 if self .id is None :
157157 dbcs = self .cdpy .dw .list_dbcs (cluster_id = self .cluster_id )
158158 for dbc in dbcs :
159- if self . name is not None and dbc ['name' ] == self .name :
159+ if dbc ['name' ] == self .name :
160160 self .target = self .cdpy .dw .describe_dbc (cluster_id = self .cluster_id , dbc_id = dbc ['id' ])
161161 else :
162162 self .target = self .cdpy .dw .describe_dbc (cluster_id = self .cluster_id , dbc_id = self .id )
@@ -169,24 +169,24 @@ def process(self):
169169 else :
170170 # Begin Drop
171171 if self .target ['status' ] not in self .cdpy .sdk .REMOVABLE_STATES :
172- self .module .warn (
173- "DW Database Catalog is not in a valid state for Delete operations: %s" % self .target ['status' ])
172+ self .module .fail_json ( msg =
173+ "Database Catalog is not in a valid state for Delete operations: %s" % self .target ['status' ])
174174 else :
175175 _ = self .cdpy .dw .delete_dbc (cluster_id = self .cluster_id , dbc_id = self .target ['id' ])
176176 self .changed = True
177- if self .wait :
178- self .cdpy .sdk .wait_for_state (
179- describe_func = self .cdpy .dw .describe_dbc ,
180- params = dict (cluster_id = self .cluster_id , dbc_id = self .target ['id' ]),
181- field = None , delay = self .delay , timeout = self .timeout
182- )
183- else :
184- self .cdpy .sdk .sleep (self .delay ) # Wait for consistency sync
185- self .database_catalog = self .cdpy .dw .describe_dbc (cluster_id = self .cluster_id , dbc_id = self .target ['id' ])
177+ if self .wait :
178+ self .cdpy .sdk .wait_for_state (
179+ describe_func = self .cdpy .dw .describe_dbc ,
180+ params = dict (cluster_id = self .cluster_id , dbc_id = self .target ['id' ]),
181+ field = None , delay = self .delay , timeout = self .timeout
182+ )
183+ else :
184+ self .cdpy .sdk .sleep (self .delay ) # Wait for consistency sync
185+ self .database_catalog = self .cdpy .dw .describe_dbc (cluster_id = self .cluster_id , dbc_id = self .target ['id' ])
186186 # End Drop
187187 elif self .state == 'present' :
188188 # Begin Config Check
189- self .module .warn ("DW Database Catalog already present and reconciliation is not yet implemented" )
189+ self .module .warn ("Database Catalog already present and reconciliation is not yet implemented" )
190190 if self .wait :
191191 self .target = self .cdpy .sdk .wait_for_state (
192192 describe_func = self .cdpy .dw .describe_dbc ,
@@ -201,7 +201,7 @@ def process(self):
201201 else :
202202 # Begin Database Catalog Not Found
203203 if self .state == 'absent' :
204- self .module .warn ("DW Database Catalog %s already absent in Cluster %s" % (self .name , self .cluster_id ))
204+ self .module .warn ("Database Catalog %s already absent in Cluster %s" % (self .name , self .cluster_id ))
205205 elif self .state == 'present' :
206206 if not self .module .check_mode :
207207 dbc_id = self .cdpy .dw .create_dbc (cluster_id = self .cluster_id , name = self .name ,
@@ -233,8 +233,9 @@ def main():
233233 ),
234234 required_if = [
235235 ['state' , 'present' , ['name' ]],
236- ['state' , 'absent' , ['name' , 'id' ]],
236+ ['state' , 'absent' , ['name' , 'id' ], True ],
237237 ],
238+ mutually_exclusive = [['name' , 'id' ]],
238239 supports_check_mode = True
239240 )
240241
0 commit comments