Author: sandervanderburg
Date: Tue Jan 18 23:17:49 2011
New Revision: 25621
URL: https://svn.nixos.org/websvn/nix/?rev=25621&sc=1
Log:
Added release.nix and some modifications to make it automatically testable
Added:
disnix/examples/nixos-configurations/trunk/DistributedDeployment/network.nix
disnix/examples/nixos-configurations/trunk/release.nix
disnix/examples/nixos-configurations/trunk/version
Modified:
disnix/examples/nixos-configurations/trunk/DistributedDeployment/distribution.nix
disnix/examples/nixos-configurations/trunk/DistributedDeployment/infrastructure.nix
disnix/examples/nixos-configurations/trunk/DistributedDeployment/services.nix
disnix/examples/nixos-configurations/trunk/configurations/basic.nix
disnix/examples/nixos-configurations/trunk/configurations/tomcat.nix
Modified:
disnix/examples/nixos-configurations/trunk/DistributedDeployment/distribution.nix
==============================================================================
---
disnix/examples/nixos-configurations/trunk/DistributedDeployment/distribution.nix
Tue Jan 18 23:08:40 2011 (r25620)
+++
disnix/examples/nixos-configurations/trunk/DistributedDeployment/distribution.nix
Tue Jan 18 23:17:49 2011 (r25621)
@@ -1,5 +1,6 @@
{infrastructure}:
{
- basic = [ infrastructure.test1 ];
+ basic = [ infrastructure.basic ];
+ tomcat = [ infrastructure.tomcat ];
}
Modified:
disnix/examples/nixos-configurations/trunk/DistributedDeployment/infrastructure.nix
==============================================================================
---
disnix/examples/nixos-configurations/trunk/DistributedDeployment/infrastructure.nix
Tue Jan 18 23:08:40 2011 (r25620)
+++
disnix/examples/nixos-configurations/trunk/DistributedDeployment/infrastructure.nix
Tue Jan 18 23:17:49 2011 (r25621)
@@ -1,13 +1,17 @@
{
- test1 = {
+ basic = {
hostname = "test1";
system = "i686-linux";
sshTarget = "localhost:2222";
+ disableNixOSSystemProfile = true;
+ testNixOS = true;
};
- test2 = {
+ tomcat = {
hostname = "test2";
system = "i686-linux";
sshTarget = "localhost:2223";
+ disableNixOSSystemProfile = true;
+ testNixOS = true;
};
}
Added:
disnix/examples/nixos-configurations/trunk/DistributedDeployment/network.nix
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++
disnix/examples/nixos-configurations/trunk/DistributedDeployment/network.nix
Tue Jan 18 23:17:49 2011 (r25621)
@@ -0,0 +1,4 @@
+{
+ basic = import ../configurations/basic.nix;
+ tomcat = import ../configurations/tomcat.nix;
+}
Modified:
disnix/examples/nixos-configurations/trunk/DistributedDeployment/services.nix
==============================================================================
---
disnix/examples/nixos-configurations/trunk/DistributedDeployment/services.nix
Tue Jan 18 23:08:40 2011 (r25620)
+++
disnix/examples/nixos-configurations/trunk/DistributedDeployment/services.nix
Tue Jan 18 23:17:49 2011 (r25621)
@@ -1,9 +1,12 @@
-{system, distribution}:
+{distribution, system, pkgs}:
+let
+ evalConfig = import /etc/nixos/nixos/lib/eval-config.nix;
+in
{
basic = {
name = "basic";
- pkg = (import /etc/nixos/nixos/lib/eval-config.nix {
+ pkg = (evalConfig {
modules = [ ../configurations/basic.nix ];
inherit system;
}).config.system.build.toplevel;
@@ -12,7 +15,7 @@
tomcat = {
name = "tomcat";
- pkg = (import /etc/nixos/nixos/lib/eval-config.nix {
+ pkg = (evalConfig {
modules = [ ../configurations/tomcat.nix ];
inherit system;
}).config.system.build.toplevel;
Modified: disnix/examples/nixos-configurations/trunk/configurations/basic.nix
==============================================================================
--- disnix/examples/nixos-configurations/trunk/configurations/basic.nix Tue Jan
18 23:08:40 2011 (r25620)
+++ disnix/examples/nixos-configurations/trunk/configurations/basic.nix Tue Jan
18 23:17:49 2011 (r25621)
@@ -1,6 +1,11 @@
-{pkgs, config, ...}:
+{pkgs, config, modulesPath, ...}:
{
+ require = [
+ "${modulesPath}/virtualisation/qemu-vm.nix"
+ "${modulesPath}/testing/test-instrumentation.nix"
+ ];
+
boot = {
loader = {
grub = {
@@ -26,6 +31,10 @@
disnix = {
enable = true;
+ infrastructure = {
+ disableNixOSSystemProfile = true;
+ testNixOS = true;
+ };
};
};
}
Modified: disnix/examples/nixos-configurations/trunk/configurations/tomcat.nix
==============================================================================
--- disnix/examples/nixos-configurations/trunk/configurations/tomcat.nix
Tue Jan 18 23:08:40 2011 (r25620)
+++ disnix/examples/nixos-configurations/trunk/configurations/tomcat.nix
Tue Jan 18 23:17:49 2011 (r25621)
@@ -1,6 +1,11 @@
-{pkgs, config, ...}:
+{pkgs, config, modulesPath, ...}:
{
+ require = [
+ "${modulesPath}/virtualisation/qemu-vm.nix"
+ "${modulesPath}/testing/test-instrumentation.nix"
+ ];
+
boot = {
loader = {
grub = {
@@ -26,10 +31,14 @@
disnix = {
enable = true;
+ infrastructure = {
+ disableNixOSSystemProfile = true;
+ testNixOS = true;
+ };
};
tomcat = {
enable = true;
- };
+ };
};
}
Added: disnix/examples/nixos-configurations/trunk/release.nix
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ disnix/examples/nixos-configurations/trunk/release.nix Tue Jan 18
23:17:49 2011 (r25621)
@@ -0,0 +1,69 @@
+{ nixpkgs ? /etc/nixos/nixpkgs
+, nixos ? /etc/nixos/nixos
+}:
+
+let
+
+ jobs = rec {
+ tarball =
+ { nixos_configurations ? {outPath = ./.; rev = 1234;}
+ , officialRelease ? false}:
+
+ let
+ pkgs = import nixpkgs {};
+
+ disnixos = import "${pkgs.disnixos}/share/disnixos/testing.nix" {
+ inherit nixpkgs nixos;
+ };
+ in
+ disnixos.sourceTarball {
+ name = "nixos-configurations";
+ version = builtins.readFile ./version;
+ src = nixos_configurations;
+ inherit officialRelease;
+ };
+
+ build =
+ { tarball ? jobs.tarball {}
+ , system ? "x86_64-linux"
+ }:
+
+ let
+ pkgs = import nixpkgs { inherit system; };
+
+ disnixos = import "${pkgs.disnixos}/share/disnixos/testing.nix" {
+ inherit nixpkgs nixos system;
+ };
+ in
+ disnixos.buildManifest {
+ name = "nixos-configurations";
+ version = builtins.readFile ./version;
+ inherit tarball;
+ servicesFile = "DistributedDeployment/services.nix";
+ networkFile = "DistributedDeployment/network.nix";
+ distributionFile = "DistributedDeployment/distribution.nix";
+ };
+
+ tests =
+
+ let
+ pkgs = import nixpkgs {};
+
+ disnixos = import "${pkgs.disnixos}/share/disnixos/testing.nix" {
+ inherit nixpkgs nixos;
+ };
+ in
+ disnixos.disnixTest {
+ name = "nixos-configurations";
+ tarball = tarball {};
+ manifest = build { system = "x86_64-linux"; };
+ networkFile = "DistributedDeployment/network.nix";
+ testScript =
+ ''
+ # The tomcat server must run Apache Tomcat
+ $tomcat->waitForJob("tomcat");
+ '';
+ };
+ };
+in
+jobs
Added: disnix/examples/nixos-configurations/trunk/version
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ disnix/examples/nixos-configurations/trunk/version Tue Jan 18 23:17:49
2011 (r25621)
@@ -0,0 +1 @@
+0.1
\ No newline at end of file
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits