Channel branches: Difference between revisions
imported>Raboof link to channel history |
imported>Dustinlacewell Merge channel update information from http://howoldis.herokuapp.com/ |
||
Line 49: | Line 49: | ||
== Channel update process == | == Channel update process == | ||
Channels are updated when anyone with commit access pushes changes to either master or one of the release-XX.XX branches. | |||
=== Hydra Build === | |||
Then, for each <code>unstable</code> channel, a particular job at [https://hydra.nixos.org hydra.nixos.org] is started which must succeed: | |||
* For NixOS: the [http://hydra.nixos.org/job/nixos/trunk-combined/tested trunk-combined/tested] job, which includes some automated NixOS tests. | * For NixOS: the [http://hydra.nixos.org/job/nixos/trunk-combined/tested trunk-combined/tested] job, which includes some automated NixOS tests. | ||
* For nixos-small: the [http://hydra.nixos.org/job/nixos/unstable-small/tested unstable-small/tested] job. | * For nixos-small: the [http://hydra.nixos.org/job/nixos/unstable-small/tested unstable-small/tested] job. | ||
* For nixpkgs: the [http://hydra.nixos.org/job/nixpkgs/trunk/unstable trunk/unstable] job, which contains some critical release packages. | * For nixpkgs: the [http://hydra.nixos.org/job/nixpkgs/trunk/unstable trunk/unstable] job, which contains some critical release packages. | ||
=== Success Conditions === | |||
For a channel update to succeed, two conditions need to be satisfied: | |||
* Particular jobset evaluation needs to be completely built ie. no more queued jobs, even if some jobs may fail | |||
* Particular jobset evaluation's tested/unstable job needs to be built succesfully | |||
The nixos.org server has a cronjob for which nixos-channel-scripts are executed and poll for the newest jobset that satisfies the above two conditions and trigger a channel update. | |||
=== Channel Update === | |||
Once the job succeeds at a particular nixpkgs commit, cache.nixos.org will download binaries from [https://hydra.nixos.org hydra.nixos.org]. When the download completes, the channel updates. | Once the job succeeds at a particular nixpkgs commit, cache.nixos.org will download binaries from [https://hydra.nixos.org hydra.nixos.org]. When the download completes, the channel updates. | ||
For the <code>NixOS</code> channel command-not-found index is generated, which can take some time since it has to fetch all packages. <code>nixpkgs</code> is quickly updated since none of the above needs to happen once a channel update is triggered. | |||
To find out when a channel was last updated, check [https://status.nixos.org/ this] page. | To find out when a channel was last updated, check [https://status.nixos.org/ this] page. |