forked from lix-project/hydra
4392d3e21d
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 } } } |
||
---|---|---|
.. | ||
static | ||
all.tt | ||
auth.tt | ||
bootstrap-2.3.1.zip | ||
build-deps.tt | ||
build.tt | ||
channel-contents.tt | ||
common.tt | ||
dashboard-my-jobs-tab.tt | ||
dashboard-my-jobsets-tab.tt | ||
dashboard.tt | ||
deps.tt | ||
edit-jobset.tt | ||
edit-project.tt | ||
edit-release.tt | ||
error.tt | ||
evals.tt | ||
flot-0.8.3.zip | ||
job-metrics-tab.tt | ||
job.tt | ||
jobset-channels-tab.tt | ||
jobset-eval.tt | ||
jobset-jobs-tab.tt | ||
jobset.tt | ||
jquery-ui-1.8.5.custom.zip | ||
layout.tt | ||
log.tt | ||
machine-status.tt | ||
machines.tt | ||
Makefile.am | ||
metric.tt | ||
news.tt | ||
overview.tt | ||
plain-reload.tt | ||
plain.tt | ||
product-list.tt | ||
project.tt | ||
queue-runner-status.tt | ||
queue-summary.tt | ||
queue.tt | ||
release.tt | ||
reproduce.tt | ||
runtime-deps.tt | ||
search.tt | ||
status.tt | ||
steps.tt | ||
topbar.tt | ||
user.tt | ||
users.tt |