Example #1
0
def get_airflow_extras():
    airflow_dockerfile = Path(get_airflow_sources_root()) / 'Dockerfile'
    with open(airflow_dockerfile) as dockerfile:
        for line in dockerfile.readlines():
            if "ARG AIRFLOW_EXTRAS=" in line:
                line = line.split('=')[1].strip()
                return line.replace('"', '')
Example #2
0
def construct_docker_command(ci_image: BuildParams) -> List[str]:
    arguments = construct_arguments_docker_command(ci_image)
    final_command = []
    final_command.extend(["docker", "build"])
    final_command.extend(arguments)
    final_command.extend(["-t", ci_image.airflow_ci_image_name, "--target", "main", "."])
    final_command.extend(["-f", str(Path(get_airflow_sources_root(), 'Dockerfile.ci').resolve())])
    return final_command
Example #3
0
def build_docs(verbose: bool, docs_only: bool, spellcheck_only: bool, package_filter: Tuple[str]):
    """
    Builds documentation in the container
    """
    params = BuildParams()
    airflow_sources = str(get_airflow_sources_root())
    ci_image_name = params.airflow_ci_image_name
    check_docker_resources(verbose, airflow_sources, ci_image_name)
    doc_builder = DocBuilder(
        package_filter=package_filter, docs_only=docs_only, spellcheck_only=spellcheck_only
    )
    build_documentation.build(verbose, airflow_sources, ci_image_name, doc_builder)
Example #4
0
def get_available_packages() -> List[str]:
    docs_path_content = Path(get_airflow_sources_root(), 'docs').glob('*/')
    available_packages = [x.name for x in docs_path_content if x.is_dir()]
    return list(set(available_packages) - set(EXCLUDE_DOCS_PACKAGE_FOLDER))
Example #5
0
def get_airflow_version():
    airflow_setup_file = Path(get_airflow_sources_root()) / 'setup.py'
    with open(airflow_setup_file) as setup_file:
        for line in setup_file.readlines():
            if "version =" in line:
                return line.split()[2][1:-1]