{% extends "admin/base_site.html" %} {% load i18n %} {% block breadcrumbs %} {% endblock %} {% block extrastyle %} {{ block.super }} {% endblock %} {% block content %}

{% trans "Upgrade Report" %}

{% csrf_token %} {% if report.settings.is_stable_mode %} {% blocktrans trimmed asvar unstable_confirm_message %} This node is configured for stable updates. Continue with an unstable upgrade? {% endblocktrans %} {% endif %}
{% csrf_token %}
{% csrf_token %}
{% with report=auto_upgrade_report %}

{% trans "Overall status" %}

{{ report.summary.headline }}

{% if report.summary.issues %}
    {% for issue in report.summary.issues %}
  • {{ issue.label }}
  • {% endfor %}
{% else %}

{% trans "No outstanding issues detected." %}

{% endif %}

{% trans "Current channel" %}

{{ report.settings.channel }}

{% if report.settings.revision_status_label %}

{{ report.settings.revision_status_label }}

{% endif %} {% if report.settings.raw_mode and report.settings.raw_mode|lower != report.settings.channel %}

{% blocktrans %}Legacy mode value: {{ report.settings.raw_mode }}{% endblocktrans %}

{% endif %} {% if report.settings.revision_checked_label %}

{% blocktrans %}Revision last checked {{ report.settings.revision_checked_label }}.{% endblocktrans %}

{% endif %}

{% trans "Next scheduled run" %}

{% if report.summary.next_run %} {{ report.summary.next_run }} {% else %} {% trans "Not scheduled" %} {% endif %}

{% if report.schedule.description %}

{{ report.schedule.description }}

{% endif %}

{% trans "Last activity" %}

{% if report.summary.last_activity.message %}

{{ report.summary.last_activity.message }}

{{ report.summary.last_activity.timestamp|default:"" }}

{% else %}

{% trans "No activity recorded yet." %}

{% endif %}

{% trans "Settings" %}

{% trans "Auto-upgrade status" %}
{% if report.settings.enabled %} {% if report.settings.is_unstable_mode or report.settings.is_stable_mode %} {% if report.settings.is_unstable_mode %} {% trans "tracking the unstable channel" as mode_description %} {% else %} {% trans "tracking the stable release channel" as mode_description %} {% endif %} {% if report.settings.fast_lane_enabled %} {% blocktrans with description=mode_description %}Enabled ({{ description }}; Fast Lane enabled){% endblocktrans %} {% else %} {% blocktrans with description=mode_description %}Enabled ({{ description }}){% endblocktrans %} {% endif %} {% else %} {% if report.settings.fast_lane_enabled %} {% blocktrans %}Enabled (mode "{{ report.settings.mode }}"; Fast Lane enabled){% endblocktrans %} {% else %} {% blocktrans %}Enabled (mode "{{ report.settings.mode }}"){% endblocktrans %} {% endif %} {% endif %} {% else %} {% if report.settings.lock_exists %} {% trans "Disabled (mode file present but unreadable)" %} {% else %} {% trans "Disabled" %} {% endif %} {% endif %}
{% trans "Channel" %}
{{ report.settings.channel }} {% if report.settings.raw_mode and report.settings.raw_mode|lower != report.settings.channel %}

{% blocktrans %}Legacy mode value: {{ report.settings.raw_mode }}{% endblocktrans %}

{% endif %}
{% trans "Local revision" %}
{% if report.settings.local_revision %} {{ report.settings.local_revision }} {% else %}

{% trans "Unavailable" %}

{% trans "Run Pre-Upgrade Checks to capture the local revision from the auto-upgrade worker." %}

{% endif %}
{% trans "Origin revision" %}
{% if report.settings.origin_revision %} {{ report.settings.origin_revision }} {% else %}

{% trans "Unavailable" %}

{% trans "No origin revision has been recorded yet. Run Pre-Upgrade Checks to query the upstream repository and confirm connectivity." %}

{% endif %} {% if report.settings.origin_revision_error %}

{{ report.settings.origin_revision_error }}

{% endif %}
{% trans "Revision checks" %}
{% if report.settings.revision_checked_label %}

{% blocktrans %}Last checked {{ report.settings.revision_checked_label }}.{% endblocktrans %}

{% else %}

{% trans "Run Pre-Upgrade Checks to refresh revision details." %}

{% endif %}
{% trans "CI status" %}
{% if report.settings.ci_status %} {{ report.settings.ci_status }} {% else %}

{% trans "Unavailable" %}

{% trans "CI results are fetched during revision checks. Rerun Pre-Upgrade Checks after verifying connectivity to the CI service." %}

{% endif %} {% if not report.settings.revision_checked_label %}

{% trans "Run Pre-Upgrade Checks to retrieve the current CI status." %}

{% endif %}
{% trans "Task" %}
{{ report.settings.task_name }} {% if report.schedule.task_admin_url %} [ {% trans "View" %} ] {% endif %} {% if report.settings.task_path %} — {{ report.settings.task_path }} {% endif %}
{% trans "Log file" %}
{{ report.settings.log_path }}
{% trans "Suite uptime" %}
{% if report.settings.suite_uptime %} {{ report.settings.suite_uptime }} {% if report.settings.suite_uptime_details.boot_time_label %}

{% blocktrans with boot_time=report.settings.suite_uptime_details.boot_time_label %}Tracking since {{ boot_time }}.{% endblocktrans %}

{% endif %} {% else %}

{% trans "Unavailable" %}

{% with details=report.settings.suite_uptime_details %} {% if details.lock_predates_boot and details.boot_time_label %}

{% blocktrans with boot_time=details.boot_time_label %}The uptime lock predates the current boot on {{ boot_time }}; tracking will resume after the next check.{% endblocktrans %}

{% elif details.boot_time_label %}

{% blocktrans with boot_time=details.boot_time_label %}Uptime tracking will begin from {{ boot_time }} after the monitor writes a fresh lock.{% endblocktrans %}

{% else %}

{% trans "Start the suite uptime monitor or rerun Pre-Upgrade Checks to populate this value." %}

{% endif %} {% endwith %} {% endif %}
{% trans "Blocked revisions" %}
{% if report.settings.skip_revisions %}
    {% for revision in report.settings.skip_revisions %}
  • {{ revision }}
  • {% endfor %}
{% else %} {% trans "No revisions are currently blocked." %} {% endif %}
{% if report.settings.read_error %}

{% trans "The auto-upgrade mode could not be read; verify the lock file permissions." %}

{% endif %}
{% trans "Auto-upgrade return codes" %}

{% trans "LCD status codes are shortened to fit a 16-character display." %}

{% for entry in report.failure_guide %} {% endfor %}
{% trans "LCD code" %} {% trans "Meaning" %} {% trans "Suggested action" %}
{{ entry.code }} {{ entry.label }}
{{ entry.details }}
{{ entry.action }}

{% trans "Schedule" %}

{% if report.schedule.available %} {% if report.schedule.configured %} {% if report.schedule.description %} {% endif %}
{% trans "Enabled" %} {% if report.schedule.enabled %} {% trans "Yes" %} {% else %} {% trans "No" %} {% endif %}
{% trans "One-off" %} {% if report.schedule.one_off %} {% trans "Yes" %} {% else %} {% trans "No" %} {% endif %}
{% trans "Queue" %} {{ report.schedule.queue|default:"" }}
{% trans "Schedule" %} {{ report.schedule.schedule|default:"" }} {% if report.schedule.config_admin_url %} [ {% trans "View" %} ] {% endif %}
{% trans "Next run" %} {{ report.schedule.next_run|default:"" }}
{% trans "Last run" %} {{ report.schedule.last_run_at|default:"" }}
{% trans "Start time" %} {{ report.schedule.start_time|default:"" }}
{% trans "Expires" %} {{ report.schedule.expires|default:"" }}
{% trans "Run count" %} {{ report.schedule.total_run_count }}
{% trans "Failure count" %} {{ report.schedule.failure_count }}
{% trans "Description" %} {{ report.schedule.description }}
{% else %}

{% trans "The auto-upgrade periodic task has not been created yet." %}

{% endif %} {% else %} {% if report.schedule.error %}

{{ report.schedule.error }}

{% else %}

{% trans "Scheduling information is unavailable." %}

{% endif %} {% endif %}

{% trans "Recent activity" %}

{% blocktrans with hours=report.recent_activity_hours %}Showing the last {{ hours }} hours of activity.{% endblocktrans %}

{% if report.log_entries %} {% for entry in report.log_entries %} {% endfor %}
{% trans "Timestamp" %} {% trans "Message" %}
{{ entry.timestamp|default:"" }} {{ entry.message }}
{% else %}

{% trans "No auto-upgrade activity has been recorded yet." %}

{% endif %} {% if report.log_error %}

{{ report.log_error }}

{% endif %}
{% endwith %}
{% endblock %}