Include pdf filenames into zuul config #40
@ -35,7 +35,7 @@ commands =
 | 
			
		||||
  {[testenv:json-{{ doc.type }}]commands}
 | 
			
		||||
{%- endfor %}
 | 
			
		||||
 | 
			
		||||
[testenv:docs-pdf]
 | 
			
		||||
[testenv:pdf-docs]
 | 
			
		||||
deps = -r{toxinidir}/doc/requirements.txt
 | 
			
		||||
allowlist_externals =
 | 
			
		||||
  rm
 | 
			
		||||
 | 
			
		||||
@ -130,6 +130,7 @@ def process_repositories(args, service):
 | 
			
		||||
        zuul_templates = None
 | 
			
		||||
        zuul_jobs = dict()
 | 
			
		||||
        zuul_new_jobs = list()
 | 
			
		||||
        zuul_vars = dict()
 | 
			
		||||
        zuul_config_updated = False
 | 
			
		||||
        for item in zuul_config:
 | 
			
		||||
            if "project" in item.keys():
 | 
			
		||||
@ -137,10 +138,11 @@ def process_repositories(args, service):
 | 
			
		||||
                zuul_templates = project.setdefault("templates", [])
 | 
			
		||||
                if not zuul_templates:
 | 
			
		||||
                    zuul_templates = []
 | 
			
		||||
                zuul_vars = project.setdefault("vars", {})
 | 
			
		||||
            elif "job" in item.keys():
 | 
			
		||||
                job = item["job"]
 | 
			
		||||
                zuul_jobs[job["name"]] = job
 | 
			
		||||
        print(f"Existing jobs {zuul_jobs}")
 | 
			
		||||
        logging.debug(f"Existing jobs {zuul_jobs}")
 | 
			
		||||
        if "helpcenter-base-jobs" not in zuul_templates:
 | 
			
		||||
            zuul_templates.append("helpcenter-base-jobs")
 | 
			
		||||
            zuul_config_updated = True
 | 
			
		||||
@ -148,6 +150,7 @@ def process_repositories(args, service):
 | 
			
		||||
        job_suffix = (
 | 
			
		||||
            "-hc-int-jobs" if args.environment == "internal" else "-hc-jobs"
 | 
			
		||||
        )
 | 
			
		||||
        sphinx_pdf_files = zuul_vars.setdefault('sphinx_pdf_files', [])
 | 
			
		||||
        for doc in data.docs_by_service_type(service["service_type"]):
 | 
			
		||||
            logging.debug(f"Analyzing document {doc}")
 | 
			
		||||
            if not doc.get("type"):
 | 
			
		||||
@ -156,6 +159,12 @@ def process_repositories(args, service):
 | 
			
		||||
                doc_type = "dev-guide"
 | 
			
		||||
            else:
 | 
			
		||||
                doc_type = doc["type"]
 | 
			
		||||
            # Collect all PDF files into sphinx_pdf_files var
 | 
			
		||||
            pdf_name = doc.get('pdf_name')
 | 
			
		||||
            if pdf_name and f"{pdf_name}.pdf" not in sphinx_pdf_files:
 | 
			
		||||
                sphinx_pdf_files.append(f"{pdf_name}.pdf")
 | 
			
		||||
                zuul_config_updated = True
 | 
			
		||||
 | 
			
		||||
            template_name = f"{doc_type}{job_suffix}"
 | 
			
		||||
            if doc_type in ["api-ref", "umn", "dev-guide"]:
 | 
			
		||||
                if template_name not in zuul_templates:
 | 
			
		||||
@ -190,6 +199,7 @@ def process_repositories(args, service):
 | 
			
		||||
                if "project" in item.keys():
 | 
			
		||||
                    project = item["project"]
 | 
			
		||||
                    project["templates"] = zuul_templates
 | 
			
		||||
                    project["vars"] = zuul_vars
 | 
			
		||||
                    # Ensure new jobs are in check
 | 
			
		||||
                    if len(zuul_new_jobs) > 0:
 | 
			
		||||
                        project.setdefault(
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user