Files
poky/bitbake/lib/toaster/toastergui/templates/base.html
Marlon Rodriguez Garcia df5c8d6471 bitbake: toaster: Added new feature to import eventlogs from command line into toaster using replay functionality
Added a new button on the base template to access a new template.
Added a model register the information on the builds and generate access links
Added a form to include the option to load specific files
Added jquery and ajax functions to block screen and redirect to build page when import eventlogs is trigger
Added a new button on landing page linked to import build page, and set min-height of buttons in landing page for uniformity
Removed test assertion to check command line build in content, because new button contains text
Updated toaster_eventreplay to use library
Fix test in test_layerdetails_page
Rebased from master

This feature uses the value from the variable BB_DEFAULT_EVENTLOG to read the files created by bitbake
Exclude listing of files that don't contain the allvariables definitions used to replay builds
This part of the feature should be revisited. Over a long period of time, the BB_DEFAULT_EVENTLOG
will exponentially increase the size of the log file and cause bottlenecks when importing.

(Bitbake rev: ab96cafe03d8bab33c1de09602cc62bd6974f157)

Signed-off-by: Marlon Rodriguez Garcia <marlon.rodriguez-garcia@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-12 15:58:57 +00:00

146 lines
6.1 KiB
HTML

<!DOCTYPE html>
{% load static %}
{% load projecttags %}
{% load project_url_tag %}
<html lang="en">
<head>
<title>
{% block title %} Toaster {% endblock %}
</title>
<link rel="stylesheet" href="{% static 'css/bootstrap.min.css' %}" type="text/css"/>
<!--link rel="stylesheet" href="{% static 'css/bootstrap-theme.css' %}" type="text/css"/-->
<link rel="stylesheet" href="{% static 'css/font-awesome.min.css' %}" type='text/css'/>
<link rel="stylesheet" href="{% static 'css/default.css' %}" type='text/css'/>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<script src="{% static 'js/jquery-3.7.1.min.js' %}">
</script>
<script src="{% static 'js/jquery.cookie.js' %}">
</script>
<script src="{% static 'js/bootstrap-3.4.1.min.js' %}">
</script>
<script src="{% static 'js/typeahead.jquery.js' %}">
</script>
<script src="{% static 'js/jsrender.min.js' %}">
</script>
<script src="{% static 'js/highlight.pack.js' %}">
</script>
<script src="{% static 'js/libtoaster.js' %}">
</script>
{% if DEBUG %}
<script>
libtoaster.debug = true;
</script>
{% endif %}
<script>
$.views.settings.delimiters("<%", "%>");
libtoaster.ctx = {
jsUrl : "{% static 'js/' %}",
htmlUrl : "{% static 'html/' %}",
projectsUrl : "{% url 'all-projects' %}",
projectsTypeAheadUrl: {% url 'xhr_projectstypeahead' as prjurl%}{{prjurl|json}},
{% if project.id %}
projectId : {{project.id}},
projectPageUrl : {% url 'project' project.id as purl %}{{purl|json}},
xhrProjectUrl : {% url 'xhr_project' project.id as pxurl %}{{pxurl|json}},
projectName : {{project.name|json}},
recipesTypeAheadUrl: {% url 'xhr_recipestypeahead' project.id as paturl%}{{paturl|json}},
layersTypeAheadUrl: {% url 'xhr_layerstypeahead' project.id as paturl%}{{paturl|json}},
machinesTypeAheadUrl: {% url 'xhr_machinestypeahead' project.id as paturl%}{{paturl|json}},
distrosTypeAheadUrl: {% url 'xhr_distrostypeahead' project.id as paturl%}{{paturl|json}},
projectBuildsUrl: {% url 'projectbuilds' project.id as pburl %}{{pburl|json}},
xhrCustomRecipeUrl : "{% url 'xhr_customrecipe' %}",
projectId : {{project.id}},
xhrBuildRequestUrl: "{% url 'xhr_buildrequest' project.id %}",
mostRecentBuildsUrl: "{% url 'most_recent_builds' %}?project_id={{project.id}}",
{% else %}
mostRecentBuildsUrl: "{% url 'most_recent_builds' %}",
projectId : undefined,
projectPageUrl : undefined,
projectName : undefined,
{% endif %}
};
</script>
{% block extraheadcontent %}
{% endblock %}
</head>
<body>
{% csrf_token %}
<div id="loading-notification" class="alert alert-warning lead text-center" style="display:none">
Loading <i class="fa-pulse icon-spinner"></i>
</div>
<div id="change-notification" class="alert alert-info alert-dismissible change-notification" style="display:none">
<button type="button" class="close" id="hide-alert" data-toggle="alert">&times;</button>
<span id="change-notification-msg"></span>
</div>
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#global-nav" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<div class="toaster-navbar-brand">
<a href="/">
<img class="logo" src="{% static 'img/logo.png' %}" class="" alt="Yocto logo project"/>
</a>
<a class="brand" href="/">Toaster</a>
{% if DEBUG %}
<span id="toaster-version-info-sign" class="glyphicon glyphicon-info-sign" title="<strong>Toaster version information</strong>" data-content="<dl><dt>Git branch</dt><dd>{{TOASTER_BRANCH}}</dd><dt>Git revision</dt><dd>{{TOASTER_REVISION}}</dd></dl>"></i>
{% endif %}
</div>
</div>
<div class="collapse navbar-collapse" id="global-nav">
<ul class="nav navbar-nav">
{% if request.resolver_match.url_name != 'landing' and request.resolver_match.url_name != 'newproject' %}
<li id="navbar-all-builds"
{% if request.resolver_match.url_name == 'all-builds' %}
class="active"
{% endif %}>
<a href="{% url 'all-builds' %}">
<i class="glyphicon glyphicon-tasks"></i>
All builds
</a>
</li>
{% if project_enable %}
<li id="navbar-all-projects"
{% if request.resolver_match.url_name == 'all-projects' %}
class="active"
{% endif %}>
<a href="{% url 'all-projects' %}">
<i class="icon-folder-open"></i>
All projects
</a>
</li>
{% endif %}
{% endif %}
<li id="navbar-docs">
<a target="_blank" href="http://docs.yoctoproject.org/toaster-manual/index.html#toaster-user-manual">
<i class="glyphicon glyphicon-book"></i>
Documentation
</a>
</li>
</ul>
{% if project_enable %}
<a class="btn btn-default navbar-btn navbar-right" id="new-project-button" href="{% url 'newproject' %}">New project</a>
{% endif %}
<a class="btn btn-default navbar-btn navbar-right" id="import_page" style="margin-right: 5px !important" id="import-cmdline-button" href="{% url 'cmdlines' %}">Import command line builds</a>
</div>
</div>
</nav>
<div class="container-fluid">
{% block pagecontent %}
{% endblock %}
</div>
</body>
</html>