* Added a maintainers field to the Builds table.
* Regenerated the schema bindings with the latest DBIx::Class.
This commit is contained in:
parent
6bcdfc8a1f
commit
5bdd5e7152
|
@ -86,6 +86,9 @@
|
||||||
create index IndexBuildInputsByDependency on BuildInputs(dependency);
|
create index IndexBuildInputsByDependency on BuildInputs(dependency);
|
||||||
|
|
||||||
create index IndexBuildsByTimestamp on Builds(timestamp);
|
create index IndexBuildsByTimestamp on Builds(timestamp);
|
||||||
|
|
||||||
|
alter table jobs add column disabled integer not null default 0;
|
||||||
|
alter table builds add column maintainers text;
|
||||||
|
|
||||||
|
|
||||||
* Job selection:
|
* Job selection:
|
||||||
|
@ -102,6 +105,13 @@
|
||||||
|
|
||||||
$ for i in $(cat ids); do echo $i; sqlite3 hydra.sqlite "begin transaction; insert into buildschedulinginfo (id, priority, busy, locker) values($i, 100, 0, ''); delete from buildresultinfo where id = $i; update builds set finished = 0 where id = $i; commit transaction;"; done
|
$ for i in $(cat ids); do echo $i; sqlite3 hydra.sqlite "begin transaction; insert into buildschedulinginfo (id, priority, busy, locker) values($i, 100, 0, ''); delete from buildresultinfo where id = $i; update builds set finished = 0 where id = $i; commit transaction;"; done
|
||||||
|
|
||||||
|
Or with Postgres:
|
||||||
|
|
||||||
|
(restarting all aborted builds with ID > 42000)
|
||||||
|
$ psql -h buildfarm.st.ewi.tudelft.nl -U hydra hydra -t -c 'select x.id from builds x join buildresultinfo r on r.id = x.id where finished = 1 and buildstatus = 3 and x.id > 42000' > ids
|
||||||
|
|
||||||
|
$ for i in $(cat ids); do echo $i; PGPASSWORD=... psql -h buildfarm.st.ewi.tudelft.nl -U hydra hydra -t -c "begin transaction; insert into buildschedulinginfo (id, priority, busy, locker) values($i, 100, 0, ''); delete from buildresultinfo where id = $i; update builds set finished = 0 where id = $i; commit transaction;"; done
|
||||||
|
|
||||||
|
|
||||||
* select * from (select project, jobset, job, system, max(timestamp) timestamp from builds where finished = 1 group by project, jobset, job, system) x join builds y on x.timestamp = y.timestamp and x.project = y.project and x.jobset = y.jobset and x.job = y.job and x.system = y.system;
|
* select * from (select project, jobset, job, system, max(timestamp) timestamp from builds where finished = 1 group by project, jobset, job, system) x join builds y on x.timestamp = y.timestamp and x.project = y.project and x.jobset = y.jobset and x.job = y.job and x.system = y.system;
|
||||||
|
|
||||||
|
|
|
@ -8,8 +8,8 @@ use base 'DBIx::Class::Schema';
|
||||||
__PACKAGE__->load_classes;
|
__PACKAGE__->load_classes;
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:aJVSTLLx1pgutjETaqTWXA
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:tt53dmgGYiV3yqHvnrSwkg
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,38 +9,105 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("BuildInputs");
|
__PACKAGE__->table("BuildInputs");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"id",
|
"id",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"build",
|
"build",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"name",
|
"name",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"type",
|
"type",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"uri",
|
"uri",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"revision",
|
"revision",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"tag",
|
"tag",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"value",
|
"value",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"dependency",
|
"dependency",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"path",
|
"path",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"sha256hash",
|
"sha256hash",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("id");
|
__PACKAGE__->set_primary_key("id");
|
||||||
__PACKAGE__->belongs_to("build", "Hydra::Schema::Builds", { id => "build" });
|
__PACKAGE__->belongs_to(
|
||||||
__PACKAGE__->belongs_to("dependency", "Hydra::Schema::Builds", { id => "dependency" });
|
"build",
|
||||||
|
"Hydra::Schema::Builds",
|
||||||
|
{ id => "build" },
|
||||||
|
{ join_type => "LEFT OUTER" },
|
||||||
|
);
|
||||||
|
__PACKAGE__->belongs_to(
|
||||||
|
"dependency",
|
||||||
|
"Hydra::Schema::Builds",
|
||||||
|
{ id => "dependency" },
|
||||||
|
{ join_type => "LEFT OUTER" },
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:02BDWXRn4LMcb0LFjHXqjg
|
||||||
|
|
||||||
use Hydra::Helper::Nix;
|
use Hydra::Helper::Nix;
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:uxfS8+GnU06sbx6nvWzTSQ
|
|
||||||
|
|
||||||
sub addSequence {
|
sub addSequence {
|
||||||
my $hydradbi = getHydraDBPath ;
|
my $hydradbi = getHydraDBPath ;
|
||||||
if ($hydradbi =~ m/^dbi:Pg/) {
|
if ($hydradbi =~ m/^dbi:Pg/) {
|
||||||
|
|
|
@ -9,34 +9,90 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("BuildProducts");
|
__PACKAGE__->table("BuildProducts");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"build",
|
"build",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"productnr",
|
"productnr",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"type",
|
"type",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"subtype",
|
"subtype",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"filesize",
|
"filesize",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"sha1hash",
|
"sha1hash",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"sha256hash",
|
"sha256hash",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"path",
|
"path",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"name",
|
"name",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"description",
|
"description",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"defaultpath",
|
"defaultpath",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("build", "productnr");
|
__PACKAGE__->set_primary_key("build", "productnr");
|
||||||
__PACKAGE__->belongs_to("build", "Hydra::Schema::Builds", { id => "build" });
|
__PACKAGE__->belongs_to("build", "Hydra::Schema::Builds", { id => "build" });
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:wnnwDGQMGr2YAu++PYRSuA
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:Fqzw8pcHMrUjdJZ/a43D3w
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,34 +9,85 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("BuildResultInfo");
|
__PACKAGE__->table("BuildResultInfo");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"id",
|
"id",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"iscachedbuild",
|
"iscachedbuild",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"buildstatus",
|
"buildstatus",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"errormsg",
|
"errormsg",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"starttime",
|
"starttime",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"stoptime",
|
"stoptime",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"logfile",
|
"logfile",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"releasename",
|
"releasename",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"keep",
|
"keep",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{ data_type => "integer", default_value => 0, is_nullable => 0, size => undef },
|
||||||
"faileddepbuild",
|
"faileddepbuild",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"faileddepstepnr",
|
"faileddepstepnr",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("id");
|
__PACKAGE__->set_primary_key("id");
|
||||||
__PACKAGE__->belongs_to("id", "Hydra::Schema::Builds", { id => "id" });
|
__PACKAGE__->belongs_to("id", "Hydra::Schema::Builds", { id => "id" });
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:CGlUjhJozOA4VCYaFtyhqw
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:KjrreyjxFwFTGDzdA9J42w
|
||||||
|
|
||||||
__PACKAGE__->belongs_to(
|
__PACKAGE__->belongs_to(
|
||||||
"failedDep",
|
"failedDep",
|
||||||
|
|
|
@ -9,26 +9,42 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("BuildSchedulingInfo");
|
__PACKAGE__->table("BuildSchedulingInfo");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"id",
|
"id",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"priority",
|
"priority",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{ data_type => "integer", default_value => 0, is_nullable => 0, size => undef },
|
||||||
"busy",
|
"busy",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{ data_type => "integer", default_value => 0, is_nullable => 0, size => undef },
|
||||||
"locker",
|
"locker",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{ data_type => "text", default_value => "''", is_nullable => 0, size => undef },
|
||||||
"logfile",
|
"logfile",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"disabled",
|
"disabled",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{ data_type => "integer", default_value => 0, is_nullable => 0, size => undef },
|
||||||
"starttime",
|
"starttime",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("id");
|
__PACKAGE__->set_primary_key("id");
|
||||||
__PACKAGE__->belongs_to("id", "Hydra::Schema::Builds", { id => "id" });
|
__PACKAGE__->belongs_to("id", "Hydra::Schema::Builds", { id => "id" });
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:X+Pz2XzTBNU3XdEcg49RyQ
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:jgOkt31QNifyPD8Y0rkVBA
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,33 +9,89 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("BuildSteps");
|
__PACKAGE__->table("BuildSteps");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"build",
|
"build",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"stepnr",
|
"stepnr",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"type",
|
"type",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"drvpath",
|
"drvpath",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"outpath",
|
"outpath",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"logfile",
|
"logfile",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"busy",
|
"busy",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"status",
|
"status",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"errormsg",
|
"errormsg",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"starttime",
|
"starttime",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"stoptime",
|
"stoptime",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("build", "stepnr");
|
__PACKAGE__->set_primary_key("build", "stepnr");
|
||||||
__PACKAGE__->belongs_to("build", "Hydra::Schema::Builds", { id => "build" });
|
__PACKAGE__->belongs_to("build", "Hydra::Schema::Builds", { id => "build" });
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:TtcOwOIZHO0vLSJ1CXF1bA
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:7z14GDq6a8ndBoj3Mx/3TQ
|
||||||
|
|
||||||
1;
|
1;
|
||||||
|
|
|
@ -9,33 +9,113 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("Builds");
|
__PACKAGE__->table("Builds");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"id",
|
"id",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"finished",
|
"finished",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"timestamp",
|
"timestamp",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"project",
|
"project",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"jobset",
|
"jobset",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"job",
|
"job",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"nixname",
|
"nixname",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"description",
|
"description",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"drvpath",
|
"drvpath",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"outpath",
|
"outpath",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"system",
|
"system",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"longdescription",
|
"longdescription",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"license",
|
"license",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"homepage",
|
"homepage",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
|
"maintainers",
|
||||||
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("id");
|
__PACKAGE__->set_primary_key("id");
|
||||||
__PACKAGE__->belongs_to("project", "Hydra::Schema::Projects", { name => "project" });
|
__PACKAGE__->belongs_to("project", "Hydra::Schema::Projects", { name => "project" });
|
||||||
|
@ -49,13 +129,13 @@ __PACKAGE__->belongs_to(
|
||||||
"Hydra::Schema::Jobs",
|
"Hydra::Schema::Jobs",
|
||||||
{ jobset => "jobset", name => "job", project => "project" },
|
{ jobset => "jobset", name => "job", project => "project" },
|
||||||
);
|
);
|
||||||
__PACKAGE__->has_many(
|
__PACKAGE__->might_have(
|
||||||
"buildschedulinginfoes",
|
"buildschedulinginfo",
|
||||||
"Hydra::Schema::BuildSchedulingInfo",
|
"Hydra::Schema::BuildSchedulingInfo",
|
||||||
{ "foreign.id" => "self.id" },
|
{ "foreign.id" => "self.id" },
|
||||||
);
|
);
|
||||||
__PACKAGE__->has_many(
|
__PACKAGE__->might_have(
|
||||||
"buildresultinfoes",
|
"buildresultinfo",
|
||||||
"Hydra::Schema::BuildResultInfo",
|
"Hydra::Schema::BuildResultInfo",
|
||||||
{ "foreign.id" => "self.id" },
|
{ "foreign.id" => "self.id" },
|
||||||
);
|
);
|
||||||
|
@ -81,16 +161,24 @@ __PACKAGE__->has_many(
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:xqKyjCWVdoTyQJC28K3WXA
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:mTc++yn7RST163jLNJkXaw
|
||||||
|
|
||||||
use Hydra::Helper::Nix;
|
use Hydra::Helper::Nix;
|
||||||
|
|
||||||
__PACKAGE__->has_many(dependents => 'Hydra::Schema::BuildInputs', 'dependency');
|
__PACKAGE__->has_many(
|
||||||
|
"dependents",
|
||||||
|
"Hydra::Schema::BuildInputs",
|
||||||
|
{ "foreign.dependency" => "self.id" },
|
||||||
|
);
|
||||||
|
|
||||||
__PACKAGE__->many_to_many(dependentBuilds => 'dependents', 'build');
|
__PACKAGE__->many_to_many(dependentBuilds => 'dependents', 'build');
|
||||||
|
|
||||||
__PACKAGE__->has_many(inputs => 'Hydra::Schema::BuildInputs', 'build');
|
__PACKAGE__->has_many(
|
||||||
|
"inputs",
|
||||||
|
"Hydra::Schema::BuildInputs",
|
||||||
|
{ "foreign.build" => "self.id" },
|
||||||
|
);
|
||||||
|
|
||||||
__PACKAGE__->belongs_to(
|
__PACKAGE__->belongs_to(
|
||||||
"schedulingInfo",
|
"schedulingInfo",
|
||||||
|
|
|
@ -9,21 +9,46 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("CachedPathInputs");
|
__PACKAGE__->table("CachedPathInputs");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"srcpath",
|
"srcpath",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"timestamp",
|
"timestamp",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"lastseen",
|
"lastseen",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"sha256hash",
|
"sha256hash",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"storepath",
|
"storepath",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("srcpath", "sha256hash");
|
__PACKAGE__->set_primary_key("srcpath", "sha256hash");
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:Eo9F2GRzgzTGGx15JWBv6Q
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:sEZCtuR96OmFAZe4ykVTUA
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,19 +9,39 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("CachedSubversionInputs");
|
__PACKAGE__->table("CachedSubversionInputs");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"uri",
|
"uri",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"revision",
|
"revision",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"sha256hash",
|
"sha256hash",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"storepath",
|
"storepath",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("uri", "revision");
|
__PACKAGE__->set_primary_key("uri", "revision");
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:KeKwcnnPNoVO4eNr9+y+1g
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:ImarwuHMkKrQ2GemxREDig
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,19 +9,53 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("Jobs");
|
__PACKAGE__->table("Jobs");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"project",
|
"project",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"jobset",
|
"jobset",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"name",
|
"name",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"active",
|
"active",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{ data_type => "integer", default_value => 1, is_nullable => 0, size => undef },
|
||||||
"errormsg",
|
"errormsg",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"firstevaltime",
|
"firstevaltime",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"lastevaltime",
|
"lastevaltime",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
|
"disabled",
|
||||||
|
{ data_type => "integer", default_value => 0, is_nullable => 0, size => undef },
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("project", "jobset", "name");
|
__PACKAGE__->set_primary_key("project", "jobset", "name");
|
||||||
__PACKAGE__->has_many(
|
__PACKAGE__->has_many(
|
||||||
|
@ -41,8 +75,8 @@ __PACKAGE__->belongs_to(
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:wJFyUvUACQHpaW/ktaYtOQ
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:OFEAwA4W5q0AF8uZ3JswFQ
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,19 +9,57 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("JobsetInputAlts");
|
__PACKAGE__->table("JobsetInputAlts");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"project",
|
"project",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"jobset",
|
"jobset",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"input",
|
"input",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"altnr",
|
"altnr",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"value",
|
"value",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"revision",
|
"revision",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"tag",
|
"tag",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("project", "jobset", "input", "altnr");
|
__PACKAGE__->set_primary_key("project", "jobset", "input", "altnr");
|
||||||
__PACKAGE__->belongs_to(
|
__PACKAGE__->belongs_to(
|
||||||
|
@ -31,8 +69,8 @@ __PACKAGE__->belongs_to(
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:V8h/34X4hs4PKhxKsFgy9w
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:kcIcgSux+SzIH7FQs2cnAw
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,13 +9,35 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("JobsetInputs");
|
__PACKAGE__->table("JobsetInputs");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"project",
|
"project",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"jobset",
|
"jobset",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"name",
|
"name",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"type",
|
"type",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("project", "jobset", "name");
|
__PACKAGE__->set_primary_key("project", "jobset", "name");
|
||||||
__PACKAGE__->has_many(
|
__PACKAGE__->has_many(
|
||||||
|
@ -43,8 +65,8 @@ __PACKAGE__->has_many(
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:1XdnQh4HnXU/iOyNvv8QWg
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:SkF1SaumgGAQvR9mUbPV+Q
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,21 +9,64 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("Jobsets");
|
__PACKAGE__->table("Jobsets");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"name",
|
"name",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"project",
|
"project",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"description",
|
"description",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"nixexprinput",
|
"nixexprinput",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"nixexprpath",
|
"nixexprpath",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"errormsg",
|
"errormsg",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"errortime",
|
"errortime",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"lastcheckedtime",
|
"lastcheckedtime",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "integer",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("project", "name");
|
__PACKAGE__->set_primary_key("project", "name");
|
||||||
__PACKAGE__->has_many(
|
__PACKAGE__->has_many(
|
||||||
|
@ -58,8 +101,8 @@ __PACKAGE__->has_many(
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:oZ81xw7qIjVkQKjRdOFW9A
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:lMdNiE6x4qZLK14+jEM7YQ
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,17 +9,43 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("Projects");
|
__PACKAGE__->table("Projects");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"name",
|
"name",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"displayname",
|
"displayname",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"description",
|
"description",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"enabled",
|
"enabled",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{ data_type => "integer", default_value => 1, is_nullable => 0, size => undef },
|
||||||
"owner",
|
"owner",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"homepage",
|
"homepage",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("name");
|
__PACKAGE__->set_primary_key("name");
|
||||||
__PACKAGE__->has_many(
|
__PACKAGE__->has_many(
|
||||||
|
@ -50,8 +76,8 @@ __PACKAGE__->has_many(
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:z+RXYaHk0RXJfFirBe175A
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:lDNoBncP2KhnrfbQIg+Usw
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,21 +9,53 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("ReleaseSetJobs");
|
__PACKAGE__->table("ReleaseSetJobs");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"project",
|
"project",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"release_",
|
"release_",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"job",
|
"job",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"attrs",
|
"attrs",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"isprimary",
|
"isprimary",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{ data_type => "integer", default_value => 0, is_nullable => 0, size => undef },
|
||||||
"mayfail",
|
"mayfail",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{ data_type => "integer", default_value => 0, is_nullable => 0, size => undef },
|
||||||
"description",
|
"description",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"jobset",
|
"jobset",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("project", "release_", "job", "attrs");
|
__PACKAGE__->set_primary_key("project", "release_", "job", "attrs");
|
||||||
__PACKAGE__->belongs_to("project", "Hydra::Schema::Projects", { name => "project" });
|
__PACKAGE__->belongs_to("project", "Hydra::Schema::Projects", { name => "project" });
|
||||||
|
@ -34,8 +66,8 @@ __PACKAGE__->belongs_to(
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:iWBkyucz/pXtzI+s0iP0EA
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:xaWTZqtzPyMq/xqi0ZFCDg
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,13 +9,29 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("ReleaseSets");
|
__PACKAGE__->table("ReleaseSets");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"project",
|
"project",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"name",
|
"name",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"description",
|
"description",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"keep",
|
"keep",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{ data_type => "integer", default_value => 0, is_nullable => 0, size => undef },
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("project", "name");
|
__PACKAGE__->set_primary_key("project", "name");
|
||||||
__PACKAGE__->belongs_to("project", "Hydra::Schema::Projects", { name => "project" });
|
__PACKAGE__->belongs_to("project", "Hydra::Schema::Projects", { name => "project" });
|
||||||
|
@ -29,8 +45,8 @@ __PACKAGE__->has_many(
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:eeWkr8kYyCvFVDZ3YzpI1Q
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:sYojSdWhlGMAL7Vj/UynBw
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,15 +9,20 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("SystemTypes");
|
__PACKAGE__->table("SystemTypes");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"system",
|
"system",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"maxconcurrent",
|
"maxconcurrent",
|
||||||
{ data_type => "integer", is_nullable => 0, size => undef },
|
{ data_type => "integer", default_value => 2, is_nullable => 0, size => undef },
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("system");
|
__PACKAGE__->set_primary_key("system");
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:z83sYSKRnt5mc2etYvH6Zg
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:QYzvQmgXtV3NURhO5j5F4Q
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,16 +9,27 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("UserRoles");
|
__PACKAGE__->table("UserRoles");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"username",
|
"username",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_foreign_key => 1,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"role",
|
"role",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("username", "role");
|
__PACKAGE__->set_primary_key("username", "role");
|
||||||
__PACKAGE__->belongs_to("username", "Hydra::Schema::Users", { username => "username" });
|
__PACKAGE__->belongs_to("username", "Hydra::Schema::Users", { username => "username" });
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:WRiW+nBfh/X+TMqYu0PI6g
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:syo00cqS/fp5mJt2jg+YJw
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -9,13 +9,33 @@ __PACKAGE__->load_components("Core");
|
||||||
__PACKAGE__->table("Users");
|
__PACKAGE__->table("Users");
|
||||||
__PACKAGE__->add_columns(
|
__PACKAGE__->add_columns(
|
||||||
"username",
|
"username",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"fullname",
|
"fullname",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 1,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"emailaddress",
|
"emailaddress",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
"password",
|
"password",
|
||||||
{ data_type => "text", is_nullable => 0, size => undef },
|
{
|
||||||
|
data_type => "text",
|
||||||
|
default_value => undef,
|
||||||
|
is_nullable => 0,
|
||||||
|
size => undef,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
__PACKAGE__->set_primary_key("username");
|
__PACKAGE__->set_primary_key("username");
|
||||||
__PACKAGE__->has_many(
|
__PACKAGE__->has_many(
|
||||||
|
@ -30,8 +50,8 @@ __PACKAGE__->has_many(
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
# Created by DBIx::Class::Schema::Loader v0.04005 @ 2009-03-13 13:33:20
|
# Created by DBIx::Class::Schema::Loader v0.04999_06 @ 2009-07-07 14:36:17
|
||||||
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:Gw6X/Et2+whq/S7o63zF8Q
|
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:ZH7GmAkTPdZm7G5aCp746A
|
||||||
|
|
||||||
|
|
||||||
# You can replace this text with custom content, and it will be preserved on regeneration
|
# You can replace this text with custom content, and it will be preserved on regeneration
|
||||||
|
|
|
@ -61,7 +61,7 @@ sub checkBuilds {
|
||||||
# Get the system types for the runnable builds.
|
# Get the system types for the runnable builds.
|
||||||
my @systemTypes = $db->resultset('Builds')->search(
|
my @systemTypes = $db->resultset('Builds')->search(
|
||||||
{ finished => 0, busy => 0, enabled => 1, disabled => 0 },
|
{ finished => 0, busy => 0, enabled => 1, disabled => 0 },
|
||||||
{ join => ['schedulingInfo', 'project'], select => [{distinct => 'system'}], as => ['system'] });
|
{ join => ['schedulingInfo', 'project'], group_by => 'system', as => ['system'] });
|
||||||
|
|
||||||
# For each system type, select up to the maximum number of
|
# For each system type, select up to the maximum number of
|
||||||
# concurrent build for that system type. Choose the highest
|
# concurrent build for that system type. Choose the highest
|
||||||
|
|
|
@ -295,7 +295,7 @@ sub checkJob {
|
||||||
, system => $job->{system}
|
, system => $job->{system}
|
||||||
});
|
});
|
||||||
|
|
||||||
$build->buildschedulinginfoes->create(
|
$build->create_related('buildschedulinginfo',
|
||||||
{ priority => $priority
|
{ priority => $priority
|
||||||
, busy => 0
|
, busy => 0
|
||||||
, locker => ""
|
, locker => ""
|
||||||
|
|
|
@ -25,6 +25,7 @@ create table Builds (
|
||||||
longDescription text, -- meta.longDescription
|
longDescription text, -- meta.longDescription
|
||||||
license text, -- meta.license
|
license text, -- meta.license
|
||||||
homepage text, -- meta.homepage
|
homepage text, -- meta.homepage
|
||||||
|
maintainers text, -- meta.maintainers (concatenated, comma-separated)
|
||||||
|
|
||||||
foreign key (project) references Projects(name), -- ignored by sqlite
|
foreign key (project) references Projects(name), -- ignored by sqlite
|
||||||
foreign key (project, jobset) references Jobsets(project, name), -- ignored by sqlite
|
foreign key (project, jobset) references Jobsets(project, name), -- ignored by sqlite
|
||||||
|
|
Loading…
Reference in a new issue