def main(argv=sys.argv[1:]): parser = argparse.ArgumentParser( description="Generate a 'doc' job on Jenkins") add_argument_config_url(parser) add_argument_rosdistro_name(parser) add_argument_build_name(parser, 'doc') add_argument_repository_name(parser) add_argument_os_name(parser) add_argument_os_code_name(parser) add_argument_arch(parser) args = parser.parse_args(argv) configure_doc_job( args.config_url, args.rosdistro_name, args.doc_build_name, args.repository_name, args.os_name, args.os_code_name, args.arch)
def main(argv=sys.argv[1:]): parser = argparse.ArgumentParser( description="Generate a 'doc' job on Jenkins") add_argument_config_url(parser) add_argument_rosdistro_name(parser) add_argument_build_name(parser, 'doc') add_argument_repository_name(parser) add_argument_os_name(parser) add_argument_os_code_name(parser) add_argument_arch(parser) args = parser.parse_args(argv) return configure_doc_job(args.config_url, args.rosdistro_name, args.doc_build_name, args.repository_name, args.os_name, args.os_code_name, args.arch)
def main(argv=sys.argv[1:]): parser = argparse.ArgumentParser(description="Generate a 'doc' script") add_argument_config_url(parser) add_argument_rosdistro_name(parser) add_argument_build_name(parser, 'doc') add_argument_repository_name(parser) add_argument_os_name(parser) add_argument_os_code_name(parser) add_argument_arch(parser) add_argument_force(parser) args = parser.parse_args(argv) # collect all template snippets of specific types class IncludeHook(Hook): def __init__(self): Hook.__init__(self) self.scms = [] self.scripts = [] def beforeInclude(self, *args, **kwargs): template_path = kwargs['file'].name if template_path.endswith('/snippet/scm.xml.em'): self.scms.append( (kwargs['locals']['repo_spec'], kwargs['locals']['path'])) if template_path.endswith('/snippet/builder_shell.xml.em'): self.scripts.append(kwargs['locals']['script']) hook = IncludeHook() from ros_buildfarm import templates templates.template_hooks = [hook] configure_doc_job(args.config_url, args.rosdistro_name, args.doc_build_name, args.repository_name, args.os_name, args.os_code_name, args.arch, jenkins=False, views=[]) templates.template_hooks = None scripts = hook.scripts doc_job_name = get_doc_job_name(args.rosdistro_name, args.doc_build_name, args.repository_name, args.os_name, args.os_code_name, args.arch) # set force flag force_flag = '$force' for i, script in enumerate(scripts): offset = script.find(force_flag) if offset != -1: script = script[:offset] + ('true' if args.force else 'false') + \ script[offset + len(force_flag):] scripts[i] = script break # remove rsync from server rsync_cmd = 'rsync' for i, script in enumerate(scripts): offset = script.find(rsync_cmd) if offset != -1: del scripts[i] break # remove rsync back to server cmd_part = '--delete' for i, script in enumerate(scripts): offset = script.find(cmd_part) if offset != -1: del scripts[i] break value = expand_template('doc/doc_script.sh.em', { 'doc_job_name': doc_job_name, 'scms': hook.scms, 'scripts': scripts }, options={BANGPATH_OPT: False}) value = value.replace('python3', sys.executable) print(value)
def main(argv=sys.argv[1:]): parser = argparse.ArgumentParser( description="Generate a 'doc' script") add_argument_config_url(parser) add_argument_rosdistro_name(parser) add_argument_build_name(parser, 'doc') add_argument_repository_name(parser) add_argument_os_name(parser) add_argument_os_code_name(parser) add_argument_arch(parser) add_argument_force(parser) args = parser.parse_args(argv) # collect all template snippets of specific types class IncludeHook(Hook): def __init__(self): Hook.__init__(self) self.scms = [] self.scripts = [] def beforeInclude(self, *args, **kwargs): template_path = kwargs['file'].name if template_path.endswith('/snippet/scm.xml.em'): self.scms.append( (kwargs['locals']['repo_spec'], kwargs['locals']['path'])) if template_path.endswith('/snippet/builder_shell.xml.em'): self.scripts.append(kwargs['locals']['script']) hook = IncludeHook() from ros_buildfarm import templates templates.template_hooks = [hook] configure_doc_job( args.config_url, args.rosdistro_name, args.doc_build_name, args.repository_name, args.os_name, args.os_code_name, args.arch, jenkins=False, views=[]) templates.template_hooks = None scripts = hook.scripts doc_job_name = get_doc_job_name( args.rosdistro_name, args.doc_build_name, args.repository_name, args.os_name, args.os_code_name, args .arch) # set force flag force_flag = '$force' for i, script in enumerate(scripts): offset = script.find(force_flag) if offset != -1: script = script[:offset] + ('true' if args.force else 'false') + \ script[offset + len(force_flag):] scripts[i] = script break # remove rsync from server rsync_cmd = 'rsync' for i, script in enumerate(scripts): offset = script.find(rsync_cmd) if offset != -1: del scripts[i] break # remove rsync back to server cmd_part = '--delete' for i, script in enumerate(scripts): offset = script.find(cmd_part) if offset != -1: del scripts[i] break value = expand_template( 'doc/doc_script.sh.em', { 'doc_job_name': doc_job_name, 'scms': hook.scms, 'scripts': scripts}, options={BANGPATH_OPT: False}) value = value.replace('python3', sys.executable) print(value)