diff options
Diffstat (limited to 'bitbake/lib/toaster/orm/models.py')
-rw-r--r-- | bitbake/lib/toaster/orm/models.py | 21 |
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) |