{%- set ROW_HEIGHT = 24 -%} {%- set ROW_MARGIN = 2 -%} {%- set FONT_SIZE_PERCENT = 75 -%} {%- set FONT_SIZE = (ROW_HEIGHT - ROW_MARGIN) * FONT_SIZE_PERCENT / 100 -%} {%- set ROWS = 1 + versions|length -%} {%- set OUTER_MARGIN = 5 -%} {%- set FONT_WIDENESS = 0.5 -%} {%- set LONGEST_REPO = versions.keys()|map(attribute='full_repo_name')|map('length')|max -%} {%- set LONGEST_VERSION = versions.values()|map('string')|map('length')|max -%} {%- set VERSION_X = OUTER_MARGIN + LONGEST_REPO * FONT_WIDENESS * FONT_SIZE -%} {%- set VERSION_WIDTH = OUTER_MARGIN + LONGEST_VERSION * FONT_WIDENESS * FONT_SIZE -%} {%- set WIDTH = VERSION_X + VERSION_WIDTH -%} {%- set ns = namespace(y = 0) -%} {%- macro y(offset=0) -%}{{ ns.y + offset }}{%- endmacro -%} {%- macro texty() -%}{{ y(FONT_SIZE) }}{%- endmacro -%} {%- macro end_row() -%}{%- set ns.y = ns.y + ROW_HEIGHT %}{%- endmacro -%} Packaging Status {{ end_row() }} {% for repo, version in versions.items() %} {{ repo.full_repo_name }} {{ version }}{{ end_row() }} {% endfor %}