コード例 #1
0
def distro(request, distro):
	packages = map(PackageHistory, groups.get_group("twenty"))
	now = datetime.datetime.now()
	s = DataStats()
	data = []
	for branch in ["future", "current", "past"]:
		try:
			h = DistroHistory(distro, packages, branch, now=now)
		except UnknownDistroError:
			return render_to_response('unknown_distro.html',
				{"stats": s,
				"name" : distro
				}
			)
		if h.codename == None:
			h.codename = ""
		data.append((branch.capitalize(), h.codename.capitalize(), h.snapshot_all_metrics()))
	return render_to_response('distro.html',
		{"stats": s,
			"name": distro,
			"data": data,
			"True": True,
			"zero": 0
		}
	)
コード例 #2
0
	def update(self, cache=None):
		if cache == None:
			cache = Cache()
		
		pkgs = groups.get_group("twenty")
		upstream = map(history.PackageHistory, pkgs)
		distros = downstream.list_distros()
		distros = map(lambda x: history.DistroHistory(x,upstream,self.branch), distros)
		results = []
		for distro in distros:
			current_obs = distro.get_obsoletion_timeline()[-1]
			current_obs_count = distro.get_obsoletion_count_timeline()[-1]
			current_lag = distro.get_lag_timeline()[-1]
			results.append({"name":distro.name,
											"codename":distro.codename,
											"obs":current_obs,
											"count":current_obs_count,
											"lag":current_lag})
		
		self.distros = results
		self.distros.sort(key=lambda x: x["obs"])
		
		cache.put("/distro_ranks/"+self.branch, (self.distros,), [(None, None)])
コード例 #3
0
def home(request, user):
	vals = {}
	vals['user'] = user
	vals['stats'] = DataStats()
	vals["crawl_stats"] = sidebar()
	
	now = datetime.datetime.now()
	week_ago = now - datetime.timedelta(days=7)
	
	timeline = Timeline()
	group = groups.get_group(".tracked")
	print group
	histories = []
	for pkg in group:
		hist = PackageHistory(pkg)
		histories.append(hist)
		for date in hist.timeline[week_ago:]:
			timeline[date] = (None, pkg, hist.timeline[date])
	
	distro = DistroHistory('gentoo', histories)
	for p in group:
		downstream = distro.get_pkg(p)[week_ago:]
		for date in downstream:
			timeline[date] = (distro.name, date.time(), pkg, downstream[date])
	
	feed = [["Today",[]], ["Yesterday",[]]]
	for i in range(2,7):
		day = now - datetime.timedelta(i)
		feed.append([day.strftime("%A"), []])
	
	for date in timeline:
		feed[(now.date() - date.date()).days][1].append(timeline[date])
	print feed
	map(lambda x: x[1].reverse(), feed)
	
	vals["release_feed"] = feed
	return render_to_response('home.html', vals)
コード例 #4
0
def distro(request, distro):
	packages = map(PackageHistory, groups.get_group("twenty"))
	now = datetime.datetime.now()
	vals = {}
	vals["stats"] = DataStats()
	vals["user"] = maybe_login(request)
	vals["True"] = True
	vals["zero"] = 0
	vals["name"] = distro
	data = []
	for branch in ["future", "current", "past"]:
		try:
			h = DistroHistory(distro, packages, branch, now=now)
		except UnknownDistroError:
			return render_to_response('unknown_distro.html',
				{"stats": s,
				"name" : distro
				}
			)
		if h.codename == None:
			h.codename = ""
		data.append((branch.capitalize(), h.codename.capitalize(), h.snapshot_all_metrics()))
	vals["data"] = data
	return render_to_response('distro.html', vals)
コード例 #5
0
# -*- coding: utf-8 -*-
import sys
sys.path.append(".")
from utils.db import groups

if len(sys.argv)==1:
	print sys.argv[0],"<cmd>","[opts]"
	print "list"
	print "list <group>"
	print "create <name>"
	print "delete <name>"
	print "add_to <group> <package>"
elif sys.argv[1]=="list" and len(sys.argv)==2:
	gs = groups.list_groups()
	for group in gs:
		print group
elif sys.argv[1]=="list":
	pkgs = groups.get_group(sys.argv[2])
	for p in pkgs:
		print p
elif sys.argv[1]=="create":
	print "new group id:",groups.create_group(sys.argv[2])
elif sys.argv[1]=="delete":
	groups.delete_group(sys.argv[2])
elif sys.argv[1]=="add_to":
	groups.add_to_group(sys.argv[3], sys.argv[2])
print "done"
コード例 #6
0
# -*- coding: utf-8 -*-
import sys
sys.path.append(".")
from utils.db import groups

if len(sys.argv) == 1:
    print sys.argv[0], "<cmd>", "[opts]"
    print "list"
    print "list <group>"
    print "create <name>"
    print "delete <name>"
    print "add_to <group> <package>"
elif sys.argv[1] == "list" and len(sys.argv) == 2:
    gs = groups.list_groups()
    for group in gs:
        print group
elif sys.argv[1] == "list":
    pkgs = groups.get_group(sys.argv[2])
    for p in pkgs:
        print p
elif sys.argv[1] == "create":
    print "new group id:", groups.create_group(sys.argv[2])
elif sys.argv[1] == "delete":
    groups.delete_group(sys.argv[2])
elif sys.argv[1] == "add_to":
    groups.add_to_group(sys.argv[3], sys.argv[2])
print "done"