def METHOD_NAME(
    self,
    job_folder_name,
):
    """An example script to upload, deploy, and start a specified app.
    Note that the app folder must be in upload_dir already. Prints the command to be executed first so it is easy
    to follow along as the commands run.
    Args:
        job_folder_name: name of job folder to submit, either relative to the upload_dir specified in the fed_admin.json config, or absolute path
    """
    try:
        print("api.check_status(TargetType.SERVER)")
        api_command_wrapper(self.api.check_status(TargetType.SERVER))
        print(f'api.submit_job("{job_folder_name}")')
        api_command_wrapper(self.api.submit_job(job_folder_name))
        time.sleep(1)
        print("api.check_status(TargetType.SERVER)")
        api_command_wrapper(self.api.check_status(TargetType.SERVER))
        # The following wait_until can be put into a loop that has other behavior other than waiting until clients
        # are in a status of stopped. For this code, the app is expected to stop, or this may not end.
        print("api.wait_until_client_status()")
        wait_result = api_command_wrapper(self.api.wait_until_client_status())
        print(wait_result)
        print("api.check_status(TargetType.SERVER)")
        api_command_wrapper(self.api.check_status(TargetType.SERVER))
        # now server engine status should be stopped
        time.sleep(10)  # wait for clients to stop in case they take longer than server to stop
        print("api.check_status(TargetType.CLIENT)")
        api_command_wrapper(self.api.check_status(TargetType.CLIENT))
    except RuntimeError as e:
        print(f"There was an exception: {secure_format_exception(e)}")