'Start a subprocess to build a container image of the subsystem.
Uses either Google Container Builder or Docker with configuration files
produced during BOM generation to build the container images. The
configuration files are assumed to be in the parent directory of the
subsystem\'s Gradle root.
Args:
name [string]: Name of the subsystem repository.'

def start_container_build(self, name):

    gradle_root = self.determine_gradle_root(name)
    if (self.__options.container_builder == 'gcb'):
        self.__gcb_build(name, gradle_root, self.__options.gcb_service_account, self.__options.gcb_project)
    elif (self.__options.container_builder == 'gcb-trigger'):
        self.__gcb_trigger_build(name, gradle_root, self.__options.gcb_service_account, self.__options.gcb_service_account_json, self.__options.gcb_project, self.__options.gcb_mirror_base_url, self.__sync_branch)
    elif (self.__options.container_builder == 'docker'):
        self.__docker_build(name, gradle_root)
    else:
        raise NotImplemented('container_builder="{0}"'.format(self.__options.container_builder))
