aboutsummaryrefslogtreecommitdiffstats
path: root/bitbake/lib/toaster/orm/models.py
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/toaster/orm/models.py')
-rw-r--r--bitbake/lib/toaster/orm/models.py21
1 files changed, 19 insertions, 2 deletions
diff --git a/bitbake/lib/toaster/orm/models.py b/bitbake/lib/toaster/orm/models.py
index f4064296bc..9b7387a8af 100644
--- a/bitbake/lib/toaster/orm/models.py
+++ b/bitbake/lib/toaster/orm/models.py
@@ -37,13 +37,13 @@ class ProjectManager(models.Manager):
name = "meta",
giturl = "git://git.yoctoproject.org/poky",
commit = branch,
- treepath = "meta")
+ dirpath = "meta")
ProjectLayer.objects.create(project = prj,
name = "meta-yocto",
giturl = "git://git.yoctoproject.org/poky",
commit = branch,
- treepath = "meta-yocto")
+ dirpath = "meta-yocto")
return prj
@@ -66,6 +66,22 @@ class Project(models.Model):
user_id = models.IntegerField(null = True)
objects = ProjectManager()
+
+ def schedule_build(self):
+ from bldcontrol.models import BuildRequest, BRTarget, BRLayer, BRVariable
+ br = BuildRequest.objects.create(project = self)
+ for l in self.projectlayer_set.all():
+ BRLayer.objects.create(req = br, name = l.name, giturl = l.giturl, commit = l.commit, dirpath = l.dirpath)
+ for t in self.projecttarget_set.all():
+ BRTarget.objects.create(req = br, target = t.target, task = t.task)
+ for v in self.projectvariable_set.all():
+ BRVariable.objects.create(req = br, name = v.name, value = v.value)
+
+ br.state = BuildRequest.REQ_QUEUED
+ br.save()
+ return br
+
+
class Build(models.Model):
SUCCEEDED = 0
FAILED = 1
@@ -375,6 +391,7 @@ class ProjectLayer(models.Model):
name = models.CharField(max_length = 100)
giturl = models.CharField(max_length = 254)
commit = models.CharField(max_length = 254)
+ dirpath = models.CharField(max_length = 254)
class Layer(models.Model):
name = models.CharField(max_length=100)