示例#1
0
 def test_instance_patch_missing_project_id(self, mock_hook):
     mock_hook.return_value.patch_instance.return_value = True
     op = CloudSqlInstancePatchOperator(body=PATCH_BODY,
                                        instance=INSTANCE_NAME,
                                        task_id="id")
     result = op.execute(None)
     mock_hook.assert_called_once_with(api_version="v1beta4",
                                       gcp_conn_id="google_cloud_default")
     mock_hook.return_value.patch_instance.assert_called_once_with(
         project_id=None, body=PATCH_BODY, instance=INSTANCE_NAME)
     self.assertTrue(result)
示例#2
0
 def test_instance_patch_should_bubble_up_ex_if_not_exists(
         self, mock_hook, _check_if_instance_exists):
     _check_if_instance_exists.return_value = False
     with self.assertRaises(AirflowException) as cm:
         op = CloudSqlInstancePatchOperator(project_id=PROJECT_ID,
                                            body=PATCH_BODY,
                                            instance=INSTANCE_NAME,
                                            task_id="id")
         op.execute(None)
     err = cm.exception
     self.assertIn('specify another instance to patch', str(err))
     mock_hook.assert_called_once_with(api_version="v1beta4",
                                       gcp_conn_id="google_cloud_default")
     mock_hook.return_value.patch_instance.assert_not_called()
 def test_instance_patch(self, mock_hook):
     mock_hook.return_value.patch_instance.return_value = True
     op = CloudSqlInstancePatchOperator(
         project_id=PROJECT_ID,
         body=PATCH_BODY,
         instance=INSTANCE_NAME,
         task_id="id"
     )
     result = op.execute(None)
     mock_hook.assert_called_once_with(api_version="v1beta4",
                                       gcp_conn_id="google_cloud_default")
     mock_hook.return_value.patch_instance.assert_called_once_with(
         PROJECT_ID, PATCH_BODY, INSTANCE_NAME
     )
     self.assertTrue(result)
 def test_instance_patch_should_bubble_up_ex_if_not_exists(self, mock_hook,
                                                           _check_if_instance_exists):
     _check_if_instance_exists.return_value = False
     with self.assertRaises(AirflowException) as cm:
         op = CloudSqlInstancePatchOperator(
             project_id=PROJECT_ID,
             body=PATCH_BODY,
             instance=INSTANCE_NAME,
             task_id="id"
         )
         op.execute(None)
     err = cm.exception
     self.assertIn('specify another instance to patch', str(err))
     mock_hook.assert_called_once_with(api_version="v1beta4",
                                       gcp_conn_id="google_cloud_default")
     mock_hook.return_value.patch_instance.assert_not_called()
    'example_gcp_sql',
    default_args=default_args,
    schedule_interval=datetime.timedelta(days=1)
) as dag:
    # [START howto_operator_cloudsql_create]
    sql_instance_create_task = CloudSqlInstanceCreateOperator(
        project_id=PROJECT_ID,
        body=body,
        instance=INSTANCE_NAME,
        task_id='sql_instance_create_task'
    )
    # [END howto_operator_cloudsql_create]
    # [START howto_operator_cloudsql_patch]
    sql_instance_patch_task = CloudSqlInstancePatchOperator(
        project_id=PROJECT_ID,
        body=patch_body,
        instance=INSTANCE_NAME,
        task_id='sql_instance_patch_task'
    )
    # [END howto_operator_cloudsql_patch]
    # [START howto_operator_cloudsql_db_create]
    sql_db_create_task = CloudSqlInstanceDatabaseCreateOperator(
        project_id=PROJECT_ID,
        body=db_create_body,
        instance=INSTANCE_NAME,
        task_id='sql_db_create_task'
    )
    # [END howto_operator_cloudsql_db_create]
    # [START howto_operator_cloudsql_db_patch]
    sql_db_patch_task = CloudSqlInstanceDatabasePatchOperator(
        project_id=PROJECT_ID,
        body=db_patch_body,