Esempio n. 1
0
 def test_try_to_use_api_v1(self, _):
     with self.assertRaises(AirflowException) as cm:
         ComputeEngineInstanceGroupUpdateManagerTemplateOperator(
             project_id=GCP_PROJECT_ID,
             zone=GCE_ZONE,
             resource_id=GCE_INSTANCE_GROUP_MANAGER_NAME,
             task_id='id',
             api_version='v1',
             source_template=GCE_INSTANCE_TEMPLATE_SOURCE_URL,
             destination_template=GCE_INSTANCE_TEMPLATE_DESTINATION_URL,
         )
     err = cm.exception
     self.assertIn("Use beta api version or above", str(err))
Esempio n. 2
0
 def test_successful_instance_group_update_missing_project_id(self, mock_hook):
     mock_hook.return_value.get_instance_group_manager.return_value = deepcopy(
         GCE_INSTANCE_GROUP_MANAGER_GET
     )
     op = ComputeEngineInstanceGroupUpdateManagerTemplateOperator(
         zone=GCE_ZONE,
         resource_id=GCE_INSTANCE_GROUP_MANAGER_NAME,
         task_id='id',
         source_template=GCE_INSTANCE_TEMPLATE_SOURCE_URL,
         destination_template=GCE_INSTANCE_TEMPLATE_DESTINATION_URL,
     )
     result = op.execute(None)
     mock_hook.assert_called_once_with(
         api_version='beta', gcp_conn_id='google_cloud_default', impersonation_chain=None,
     )
     mock_hook.return_value.patch_instance_group_manager.assert_called_once_with(
         project_id=None,
         zone=GCE_ZONE,
         resource_id=GCE_INSTANCE_GROUP_MANAGER_NAME,
         body=GCE_INSTANCE_GROUP_MANAGER_EXPECTED_PATCH,
         request_id=None,
     )
     self.assertTrue(result)
Esempio n. 3
0
 )
 # [END howto_operator_gce_igm_copy_template]
 # Added to check for idempotence
 # [START howto_operator_gce_igm_copy_template_no_project_id]
 gce_instance_template_copy2 = ComputeEngineCopyInstanceTemplateOperator(
     resource_id=GCE_TEMPLATE_NAME,
     body_patch=GCE_INSTANCE_TEMPLATE_BODY_UPDATE,
     task_id='gcp_compute_igm_copy_template_task_2',
 )
 # [END howto_operator_gce_igm_copy_template_no_project_id]
 # [START howto_operator_gce_igm_update_template]
 gce_instance_group_manager_update_template = ComputeEngineInstanceGroupUpdateManagerTemplateOperator(
     project_id=GCP_PROJECT_ID,
     resource_id=GCE_INSTANCE_GROUP_MANAGER_NAME,
     zone=GCE_ZONE,
     source_template=SOURCE_TEMPLATE_URL,
     destination_template=DESTINATION_TEMPLATE_URL,
     update_policy=UPDATE_POLICY,
     task_id='gcp_compute_igm_group_manager_update_template',
 )
 # [END howto_operator_gce_igm_update_template]
 # Added to check for idempotence (and without UPDATE_POLICY)
 # [START howto_operator_gce_igm_update_template_no_project_id]
 gce_instance_group_manager_update_template2 = ComputeEngineInstanceGroupUpdateManagerTemplateOperator(
     resource_id=GCE_INSTANCE_GROUP_MANAGER_NAME,
     zone=GCE_ZONE,
     source_template=SOURCE_TEMPLATE_URL,
     destination_template=DESTINATION_TEMPLATE_URL,
     task_id='gcp_compute_igm_group_manager_update_template_2',
 )
 # [END howto_operator_gce_igm_update_template_no_project_id]