From b17f9995d5d2bbbf2912ccb7639fbcc55b961b14 Mon Sep 17 00:00:00 2001 From: Marc Weber Date: Fri, 6 Mar 2009 12:26:31 +0000 Subject: [PATCH] Convert "jboss" (untested) svn path=/nixos/branches/fix-style/; revision=14379 --- system/options.nix | 43 +--------------------- upstart-jobs/default.nix | 6 --- upstart-jobs/jboss.nix | 79 +++++++++++++++++++++++++++++++++++----- 3 files changed, 71 insertions(+), 57 deletions(-) diff --git a/system/options.nix b/system/options.nix index 5358c206059..4c988d0b1bf 100644 --- a/system/options.nix +++ b/system/options.nix @@ -480,48 +480,6 @@ in }; - jboss = { - enable = mkOption { - default = false; - description = "Whether to enable jboss"; - }; - - tempDir = mkOption { - default = "/tmp"; - description = "Location where JBoss stores its temp files"; - }; - - logDir = mkOption { - default = "/var/log/jboss"; - description = "Location of the logfile directory of JBoss"; - }; - - serverDir = mkOption { - description = "Location of the server instance files"; - default = "/var/jboss/server"; - }; - - deployDir = mkOption { - description = "Location of the deployment files"; - default = "/nix/var/nix/profiles/default/server/default/deploy/"; - }; - - libUrl = mkOption { - default = "file:///nix/var/nix/profiles/default/server/default/lib"; - description = "Location where the shared library JARs are stored"; - }; - - user = mkOption { - default = "nobody"; - description = "User account under which jboss runs."; - }; - - useJK = mkOption { - default = false; - description = "Whether to use to connector to the Apache HTTP server"; - }; - }; - tomcat = { enable = mkOption { default = false; @@ -1343,6 +1301,7 @@ in (import ../upstart-jobs/bitlbee.nix) (import ../upstart-jobs/gnunet.nix) (import ../upstart-jobs/ejabberd.nix) # untested, dosen't compile on x86_64-linux + (import ../upstart-jobs/jboss.nix) # nix (import ../upstart-jobs/nix.nix) # nix options and daemon diff --git a/upstart-jobs/default.nix b/upstart-jobs/default.nix index 4de7e099a4f..684eb7dd36d 100644 --- a/upstart-jobs/default.nix +++ b/upstart-jobs/default.nix @@ -174,12 +174,6 @@ let inherit config pkgs; }) - # JBoss service - ++ optional config.services.jboss.enable - (import ../upstart-jobs/jboss.nix { - inherit config pkgs; - }) - # Apache Tomcat service ++ optional config.services.tomcat.enable (import ../upstart-jobs/tomcat.nix { diff --git a/upstart-jobs/jboss.nix b/upstart-jobs/jboss.nix index 6c35fe06436..322ed92b920 100644 --- a/upstart-jobs/jboss.nix +++ b/upstart-jobs/jboss.nix @@ -1,21 +1,82 @@ -args: with args; +{pkgs, config, ...}: +###### interface +let + inherit (pkgs.lib) mkOption mkIf; + + options = { + services = { + jboss = { + enable = mkOption { + default = false; + description = "Whether to enable jboss"; + }; + + tempDir = mkOption { + default = "/tmp"; + description = "Location where JBoss stores its temp files"; + }; + + logDir = mkOption { + default = "/var/log/jboss"; + description = "Location of the logfile directory of JBoss"; + }; + + serverDir = mkOption { + description = "Location of the server instance files"; + default = "/var/jboss/server"; + }; + + deployDir = mkOption { + description = "Location of the deployment files"; + default = "/nix/var/nix/profiles/default/server/default/deploy/"; + }; + + libUrl = mkOption { + default = "file:///nix/var/nix/profiles/default/server/default/lib"; + description = "Location where the shared library JARs are stored"; + }; + + user = mkOption { + default = "nobody"; + description = "User account under which jboss runs."; + }; + + useJK = mkOption { + default = false; + description = "Whether to use to connector to the Apache HTTP server"; + }; + }; + }; + }; +in + +###### implementation let cfg = config.services.jboss; -jbossService = import ../services/jboss { +jbossService = import ../../services/jboss { inherit (pkgs) stdenv jboss su; inherit (cfg) tempDir logDir libUrl deployDir serverDir user useJK; }; in -{ - name = "jboss"; - job = " -description \"JBoss server\" -stop on shutdown +mkIf config.services.jboss.enable { + require = [ + options + ]; -respawn ${jbossService}/bin/control start - "; + services = { + extraJobs = [{ + name = "jboss"; + job = '' + description \"JBoss server\" + + stop on shutdown + + respawn ${jbossService}/bin/control start + ''; + }]; + }; }