Branch: refs/heads/master
  Home:   https://github.com/NixOS/hydra
  Commit: 4392d3e21db42f02a70c56db9a227e6a56c9e1df
      
https://github.com/NixOS/hydra/commit/4392d3e21db42f02a70c56db9a227e6a56c9e1df
  Author: Shea Levy <[email protected]>
  Date:   2016-05-09 (Mon, 09 May 2016)

  Changed paths:
    M src/lib/Hydra/Controller/Jobset.pm
    M src/lib/Hydra/Controller/Project.pm
    M src/lib/Hydra/Helper/AddBuilds.pm
    M src/lib/Hydra/Helper/CatalystUtils.pm
    M src/lib/Hydra/Schema/Projects.pm
    M src/root/edit-project.tt
    M src/root/jobset.tt
    M src/root/project.tt
    M src/script/hydra-evaluator
    M src/script/hydra-notify
    M src/sql/hydra.sql
    A src/sql/upgrade-48.sql

  Log Message:
  -----------
  Enable declarative projects.

This allows fully declarative project specifications. This is best
illustrated by example:

* I create a new project, setting the declarative spec file to
  "spec.json" and the declarative input to a git repo pointing
  at git://github.com/shlevy/declarative-hydra-example.git
* hydra creates a special ".jobsets" jobset alongside the project
* Just before evaluating the ".jobsets" jobset, hydra fetches
  declarative-hydra-example.git, reads spec.json as a jobset spec,
  and updates the jobset's configuration accordingly:
{
    "enabled": 1,
    "hidden": false,
    "description": "Jobsets",
    "nixexprinput": "src",
    "nixexprpath": "default.nix",
    "checkinterval": 300,
    "schedulingshares": 100,
    "enableemail": false,
    "emailoverride": "",
    "keepnr": 3,
    "inputs": {
  "src": { "type": "git", "value": 
"git://github.com/shlevy/declarative-hydra-example.git", "emailresponsible": 
false },
  "nixpkgs": { "type": "git", "value": "git://github.com/NixOS/nixpkgs.git 
release-16.03", "emailresponsible": false }
    }
}
* When the "jobsets" job of the ".jobsets" jobset completes, hydra
  reads its output as a JSON representation of a dictionary of
  jobset specs and creates a jobset named "master" configured
  accordingly (In this example, this is the same configuration as
  .jobsets itself, except using release.nix instead of default.nix):
{
    "enabled": 1,
    "hidden": false,
    "description": "js",
    "nixexprinput": "src",
    "nixexprpath": "release.nix",
    "checkinterval": 300,
    "schedulingshares": 100,
    "enableemail": false,
    "emailoverride": "",
    "keepnr": 3,
    "inputs": {
  "src": { "type": "git", "value": 
"git://github.com/shlevy/declarative-hydra-example.git", "emailresponsible": 
false },
  "nixpkgs": { "type": "git", "value": "git://github.com/NixOS/nixpkgs.git 
release-16.03", "emailresponsible": false }
    }
}


  Commit: aa7cc6d599e0a4750885833175d3b4b396026b5e
      
https://github.com/NixOS/hydra/commit/aa7cc6d599e0a4750885833175d3b4b396026b5e
  Author: Shea Levy <[email protected]>
  Date:   2016-05-09 (Mon, 09 May 2016)

  Changed paths:
    M src/script/hydra-evaluator

  Log Message:
  -----------
  Declarative projects: Include the fetch info for the declarative input in the 
project eval


  Commit: 615c10bcc416428bd9726211d5b7edd95221e5f5
      
https://github.com/NixOS/hydra/commit/615c10bcc416428bd9726211d5b7edd95221e5f5
  Author: Eelco Dolstra <[email protected]>
  Date:   2016-05-09 (Mon, 09 May 2016)

  Changed paths:
    M src/lib/Hydra/Controller/Jobset.pm
    M src/lib/Hydra/Controller/Project.pm
    M src/lib/Hydra/Helper/AddBuilds.pm
    M src/lib/Hydra/Helper/CatalystUtils.pm
    M src/lib/Hydra/Schema/Projects.pm
    M src/root/edit-project.tt
    M src/root/jobset.tt
    M src/root/project.tt
    M src/script/hydra-evaluator
    M src/script/hydra-notify
    M src/sql/hydra.sql
    A src/sql/upgrade-48.sql

  Log Message:
  -----------
  Merge pull request #277 from shlevy/declarative-project

Enable declarative projects.


Compare: https://github.com/NixOS/hydra/compare/995f3b21db97...615c10bcc416
_______________________________________________
nix-commits mailing list
[email protected]
http://lists.science.uu.nl/mailman/listinfo/nix-commits

Reply via email to