From: "Magnus Granberg" <zorry@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/tinderbox-cluster-www:master commit in: python/templates/pages/packages/ebuilds/ebuild/, ...
Date: Sun, 26 Jul 2015 14:38:19 +0000 (UTC) [thread overview]
Message-ID: <1437921459.65c8b3dcce64f5c865baa472c0307a07c1f9872b.zorry@gentoo> (raw)
commit: 65c8b3dcce64f5c865baa472c0307a07c1f9872b
Author: Magnus Granberg <zorry <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 26 14:37:39 2015 +0000
Commit: Magnus Granberg <zorry <AT> gentoo <DOT> org>
CommitDate: Sun Jul 26 14:37:39 2015 +0000
URL: https://gitweb.gentoo.org/proj/tinderbox-cluster-www.git/commit/?id=65c8b3dc
add ebuild info and fix listing of packages
python/tbc_www/models.py | 27 +++++++++++++
python/tbc_www/urls.py | 1 +
python/tbc_www/views.py | 40 ++++++++++++------
python/templates/includes/frontpage/new_logs | 8 ++--
.../templates/pages/packages/category/index.html | 6 +--
.../pages/packages/ebuilds/ebuild/index.html | 47 ++++++++++++++++++++++
python/templates/pages/packages/index.html | 6 +--
7 files changed, 112 insertions(+), 23 deletions(-)
diff --git a/python/tbc_www/models.py b/python/tbc_www/models.py
index 621a7dc..2cb327a 100644
--- a/python/tbc_www/models.py
+++ b/python/tbc_www/models.py
@@ -175,6 +175,14 @@ class Keywords(models.Model):
def __str__(self):
return '%s %s' % (self.KeywordId, self.Keyword)
+class Restrictions(models.Model):
+ RestrictionId = models.IntegerField(primary_key=True, db_column='restriction_id')
+ Restriction = models.CharField(max_length=150, db_column='restriction')
+ class Meta:
+ db_table = 'restrictions'
+ def __str__(self):
+ return '%s %s' % (self.RestrictionId, self.Restriction)
+
class EbuildsKeywords(models.Model):
Id = models.IntegerField(primary_key=True, db_column='id')
EbuildId = models.ForeignKey(Ebuilds, db_column='ebuild_id')
@@ -184,3 +192,22 @@ class EbuildsKeywords(models.Model):
db_table = 'ebuilds_keywords'
def __str__(self):
return '%s %s %s' % (self.EbuildId, self.KeywordId, self.Status)
+
+class EbuildsIuse(models.Model):
+ Id = models.IntegerField(primary_key=True, db_column='id')
+ EbuildId = models.ForeignKey(Ebuilds, db_column='ebuild_id')
+ UseId = models.ForeignKey(Uses, db_column='use_id')
+ Status =models.BooleanField(db_column='status')
+ class Meta:
+ db_table = 'ebuilds_iuse'
+ def __str__(self):
+ return '%s %s %s %s' % (self.Id, self.EbuildId, self.UseId, self.Status)
+
+class EbuildsRestrictions(models.Model):
+ Id = models.IntegerField(primary_key=True, db_column='id')
+ EbuildId = models.ForeignKey(Ebuilds, db_column='ebuild_id')
+ RestrictionId = models.ForeignKey(Restrictions, db_column='restriction_id')
+ class Meta:
+ db_table = 'ebuilds_restrictions'
+ def __str__(self):
+ return '%s %s' % (self.EbuildId, self.RestrictionId)
diff --git a/python/tbc_www/urls.py b/python/tbc_www/urls.py
index 193443f..4d50f40 100644
--- a/python/tbc_www/urls.py
+++ b/python/tbc_www/urls.py
@@ -5,5 +5,6 @@ urlpatterns = patterns('tbc_www.views',
url(r'^packages/$', 'categories'),
url(r'^categories/(?P<category_id>\d+)/$', 'packages'),
url(r'^package/(?P<package_id>\d+)/$', 'ebuilds'),
+ url(r'^ebuild/(?P<ebuild_id>\d+)/$', 'ebuild'),
url(r'^new/$', 'new_main'),
)
diff --git a/python/tbc_www/views.py b/python/tbc_www/views.py
index f68a706..5b719aa 100644
--- a/python/tbc_www/views.py
+++ b/python/tbc_www/views.py
@@ -7,7 +7,7 @@ from django.conf import settings
from gentoo_www.models import SiteSettings, Layout, Pages, SubPages, Sponsors, Posts
from tbc_www.models import EbuildsMetadata, BuildLogs, BuildJobs, BuildLogsRepomanQa, \
BuildJobsUse, Categories, CategoriesMetadata, Packages, PackagesMetadata, Ebuilds, \
- Repos, EbuildsKeywords, BuildLogsErrors
+ Repos, EbuildsKeywords, BuildLogsErrors, EbuildsRestrictions, EbuildsIuse
import re
def default_TmpDict(pagerequest):
@@ -32,9 +32,10 @@ def home(request):
Lines = 5
TmpDict = default_TmpDict(pagerequest)
TmpDict['EM'] = EbuildsMetadata.objects.filter(Revision = '1.1').order_by('-Id')[:Lines]
- adict = {}
+ alist = []
for BL in BuildLogs.objects.order_by('-TimeStamp')[:Lines]:
adict2 = {}
+ adict2['BuildLogId'] = BL.BuildLogId
adict2['C'] = BL.EbuildId.PackageId.CategoryId.Category
adict2['P'] = BL.EbuildId.PackageId.Package
adict2['V'] = BL.EbuildId.Version
@@ -43,8 +44,8 @@ def home(request):
adict2['SummeryText'] = BL.SummeryText
if BL.Fail:
adict2['BE_tmp'] = BuildLogsErrors.objects.filter(BuildLogId = BL.BuildLogId)
- adict[BL.BuildLogId] = adict2
- TmpDict['BL'] = adict
+ alist.append(adict2)
+ TmpDict['BL'] = alist
adict = {}
BJ_Tmp = BuildJobs.objects.order_by('-TimeStamp')[:Lines]
for BJ in BJ_Tmp:
@@ -82,7 +83,7 @@ def home(request):
def categories(request):
pagerequest = 'packages'
TmpDict = default_TmpDict(pagerequest)
- adict2 = {}
+ alist = []
for CM in CategoriesMetadata.objects.filter(CategoryId__Active = True).order_by('CategoryId__Category'):
adict = {}
adict['CategoryId'] = CM.CategoryId.CategoryId
@@ -92,14 +93,14 @@ def categories(request):
for P in Packages.objects.filter(Active = True).filter(CategoryId_id = CM.CategoryId.CategoryId).order_by('Package'):
packages.append(P.Package + '\n')
adict['Packages'] = packages
- adict2[CM.CategoryId.Category] = adict
- TmpDict['CM_tmp'] = adict2
+ alist.append(adict)
+ TmpDict['CM_tmp'] = alist
return render(request, 'pages/' + pagerequest + '/index.html', TmpDict)
def packages(request, category_id):
pagerequest = 'packages'
TmpDict = default_TmpDict(pagerequest)
- adict2 = {}
+ alist = []
for PM in PackagesMetadata.objects.filter(PackageId__CategoryId_id = category_id).filter(PackageId__Active = True):
adict = {}
adict['PackageId'] = PM.PackageId.PackageId
@@ -110,8 +111,8 @@ def packages(request, category_id):
for E in Ebuilds.objects.filter(Active = True).filter(PackageId__Package = PM.PackageId.Package):
ebuilds.append(E.Version + '::' + E.PackageId.RepoId.Repo + '\n')
adict['Ebuilds'] = ebuilds
- adict2[PM.PackageId.Package] = adict
- TmpDict['PM_tmp'] = adict2
+ alist.append(adict)
+ TmpDict['PM_tmp'] = alist
TmpDict['C'] = get_object_or_404(Categories, CategoryId = category_id)
return render(request, 'pages/' + pagerequest + '/category/index.html', TmpDict)
@@ -122,16 +123,29 @@ def ebuilds(request, package_id):
TmpDict['P'] = P
TmpDict['EM_tmp'] = EbuildsMetadata.objects.filter(EbuildId__Active = True).filter(EbuildId__PackageId__Package = P.PackageId.Package)
TmpDict['EK_tmp'] = EbuildsKeywords.objects.filter(EbuildId__Active = True).filter(EbuildId__PackageId__Package = P.PackageId.Package)
+
return render(request, 'pages/' + pagerequest + '/ebuilds/index.html', TmpDict)
+def ebuild(request, ebuild_id):
+ pagerequest = 'packages'
+ TmpDict = default_TmpDict(pagerequest)
+ TmpDict['E'] = get_object_or_404(Ebuilds, EbuildId = ebuild_id)
+ TmpDict['EM_tmp'] = EbuildsMetadata.objects.filter(EbuildId__EbuildId = ebuild_id)
+ TmpDict['EK_tmp'] = EbuildsKeywords.objects.filter(EbuildId__EbuildId = ebuild_id)
+ TmpDict['BL_tmp'] = BuildLogs.objects.filter(EbuildId__EbuildId = ebuild_id)
+ TmpDict['EU_tmp'] = EbuildsIuse.objects.filter(EbuildId__EbuildId = ebuild_id)
+ TmpDict['ER_tmp'] = EbuildsRestrictions.objects.filter(EbuildId__EbuildId = ebuild_id)
+ return render(request, 'pages/' + pagerequest + '/ebuilds/ebuild/index.html', TmpDict)
+
def new_main(request):
pagerequest = 'new'
Lines = 30
TmpDict = default_TmpDict(pagerequest)
TmpDict['EM'] = EbuildsMetadata.objects.filter(Revision = '1.1').order_by('-Id')[:Lines]
- adict = {}
+ alist = []
for BL in BuildLogs.objects.order_by('-TimeStamp')[:Lines]:
adict2 = {}
+ adict2['BuildLogId'] = BL.BuildLogId
adict2['C'] = BL.EbuildId.PackageId.CategoryId.Category
adict2['P'] = BL.EbuildId.PackageId.Package
adict2['V'] = BL.EbuildId.Version
@@ -140,8 +154,8 @@ def new_main(request):
adict2['SummeryText'] = BL.SummeryText
if BL.Fail:
adict2['BE_tmp'] = BuildLogsErrors.objects.filter(BuildLogId = BL.BuildLogId)
- adict[BL.BuildLogId] = adict2
- TmpDict['BL'] = adict
+ alist.append(adict2)
+ TmpDict['BL'] = alist
adict = {}
BJ_Tmp = BuildJobs.objects.order_by('-TimeStamp')[:Lines]
for BJ in BJ_Tmp:
diff --git a/python/templates/includes/frontpage/new_logs b/python/templates/includes/frontpage/new_logs
index afe190c..3074c4d 100644
--- a/python/templates/includes/frontpage/new_logs
+++ b/python/templates/includes/frontpage/new_logs
@@ -1,19 +1,19 @@
<table class="table table-striped frontpage-table">
- {% for BuildLogId, B in BL.items %}
+ {% for B in BL%}
<tr>
- <td class="frontpage-table-package-atom"><a href="/new_logs/{{ BuildLogId }}/" title="{{ B.C }}/{{ B.P }}-{{ B.V }}::{{ B.R }}">
+ <td class="frontpage-table-package-atom"><a href="/new_logs/{{ B.BuildLogId }}/" title="{{ B.C }}/{{ B.P }}-{{ B.V }}::{{ B.R }}">
{{ B.C }}/{{ B.P }}-{{ B.V }}::{{ B.R }}</a></td>
<td><p title="{{ B.SummeryText }}">{{ B.SummeryText|truncatewords:3 }}</p>
<td class="text-right">
{% if B.Fail %}
{% for BE in B.BE_tmp %}
- {% if BE.BuildLogId.BuildLogId == BuildLogId %}
+ {% if BE.BuildLogId.BuildLogId == B.BuildLogId %}
{% if BE.ErrorId.ErrorId == 1 or BE.ErrorId.ErrorId == 2 %}
<span class="label label-warning">{{ BE.ErrorId.ErrorName|upper }}</span>
{% elif BE.ErrorId.ErrorId == 3 %}
<span class="label label-info">OTHERS</span>
{% else %}
- <span class="label label-danger">{{ BE.ErrorId.ErrorName|upper}}</span>
+ <span class="label label-danger">{{ BE.ErrorId.ErrorName|upper }}</span>
{% endif %}
{% endif %}
{% endfor %}
diff --git a/python/templates/pages/packages/category/index.html b/python/templates/pages/packages/category/index.html
index edc7cc9..2f2b6f2 100644
--- a/python/templates/pages/packages/category/index.html
+++ b/python/templates/pages/packages/category/index.html
@@ -3,16 +3,16 @@
<div class="row">
<h2>Packages in {{ C.Category }}</h2>
<div class="col-xs-12 col-md-5">
- {% for key, PM in PM_tmp.items %}
+ {% for PM in PM_tmp %}
<table class="table table-striped frontpage-table">
<tr>
<td class="frontpage-table-package-atom">
- <a href="/package/{{ PM.PackageId }}/" title="{{ C.Category }}/{{ key }}">{{ C.Category }}/{{ key }}</a>
+ <a href="/package/{{ PM.PackageId }}/" title="{{ C.Category }}/{{ PM.Package }}">{{ C.Category }}/{{ PM.Package }}</a>
<p title="{{ PM.Changlog }}">Changlog</p>
</td>
<td>
<p title="{{ PM.Descriptions }}">{{ PM.Descriptions }}</p>
- <p title="{% for P in PM.Ebuilds %}{{ key }}/{{ P }}{% endfor %}">Versions</p>
+ <p title="{% for P in PM.Ebuilds %}{{ PM.Package }}/{{ P }}{% endfor %}">Versions</p>
</td>
</tr>
</table>
diff --git a/python/templates/pages/packages/ebuilds/ebuild/index.html b/python/templates/pages/packages/ebuilds/ebuild/index.html
new file mode 100644
index 0000000..e000a53
--- /dev/null
+++ b/python/templates/pages/packages/ebuilds/ebuild/index.html
@@ -0,0 +1,47 @@
+{% extends "layout/base.html" %}
+{% block content %}
+<div class="row">
+ <div class="col-xs-12 col-md-9">
+ <h2>{{ E.PackageId.CategoryId.Category }}/{{ E.PackageId.Package }}</h2>
+ <table class="table table-striped frontpage-table">
+ {% for EM in EM_tmp %}
+ <tr>
+ <td class="frontpage-table-package-atom">
+ <p" title="{{ E.PackageId.CategoryId.Category }}/{{ E.PackageId.Package }}-{{ E.EbuildId.Version }}::{{ E.PackageId.RepoId.Repo }}">{{ E.PackageId.Package }}-{{ E.Version }}::{{ E.PackageId.RepoId.Repo }}</p>
+ <a class="btn btn-default btn-xs" href="/buildpackage/{{ E.EbuildId.EbuildId }}/">Build</a>
+ {% for BL in BL_tmp %}
+ {% if BL.Fail %}
+ <a class="btn btn-danger btn-xs" href="/buildlog/{{ BL.BuildLogId }}/">Fail</a>
+ {% else %}
+ <a class="btn btn-success btn-xs" href="/buildlog/{{ BL.BuildLogId }}/">Success</a>
+ {% endif %}
+ {% endfor %}
+ </td>
+ <td>
+ {% for K in EK_tmp %}
+ {% if K.EbuildId.EbuildId == E.EbuildId and K.KeywordId.Keyword != '*' %}
+ {% if K.Status == 'Stable' %}<span class="label label-success">{{ K.KeywordId.Keyword }}</span>{% endif %}
+ {% if K.Status == 'Unstable' %}<span class="label label-warning">{{ K.KeywordId.Keyword }}</span>{% endif %}
+ {% if K.Status == 'Negative' %}{{ K.KeywordId.Keyword }}{% endif %}
+ {% endif %}
+ {% endfor %}
+ <p>
+ {% for U in EU_tmp %}
+ {% if U.Status %}
+ <span class="label label-info">{{ U.UseId.Flag }}</span>
+ {% else %}
+ <span class="label label-default">{{ U.UseId.Flag }}</span>
+ {% endif %}
+ {% endfor %}
+ </p><p>
+ {% for R in ER_tmp %}
+ <span class="label label-warning">{{ R.RestrictionId.Restriction }}</span>
+ {% endfor %}
+ </p>
+ </td>
+ </tr>
+ {% endfor %}
+ </table>
+ </div>
+</div>
+{% endblock %}
\ No newline at end of file
diff --git a/python/templates/pages/packages/index.html b/python/templates/pages/packages/index.html
index 5e02552..7139c87 100644
--- a/python/templates/pages/packages/index.html
+++ b/python/templates/pages/packages/index.html
@@ -3,15 +3,15 @@
<div class="row">
<h2>Categories</h2>
<div class="col-xs-8 col-md-4">
- {% for key, CM in CM_tmp.items %}
+ {% for CM in CM_tmp %}
<table class="table table-striped frontpage-table">
<tr>
<td class="frontpage-table-package-atom">
- <a href="/categories/{{ CM.CategoryId }}/" title="{{ key }}">{{ key }}</a>
+ <a href="/categories/{{ CM.CategoryId }}/" title="{{ CM.Category }}">{{CM.Category }}</a>
</td>
<td>
<p title="{{ CM.Descriptions }}">{{ CM.Descriptions }}</p>
- <p title="{% for P in CM.Packages %}{{ key }}/{{ P }}{% endfor %}">Packages</p>
+ <p title="{% for P in CM.Packages %}{{ CM.Category}}/{{ P }}{% endfor %}">Packages</p>
</td>
</tr>
</table>
next reply other threads:[~2015-07-26 14:38 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-26 14:38 Magnus Granberg [this message]
-- strict thread matches above, loose matches on Subject: below --
2021-09-24 2:22 [gentoo-commits] proj/tinderbox-cluster-www:master commit in: python/templates/pages/packages/ebuilds/ebuild/, Magnus Granberg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1437921459.65c8b3dcce64f5c865baa472c0307a07c1f9872b.zorry@gentoo \
--to=zorry@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox