rubber 2.1.0 → 2.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. data/.travis.yml +2 -2
  2. data/CHANGELOG +33 -0
  3. data/lib/rubber/cloud/fog.rb +12 -14
  4. data/lib/rubber/configuration.rb +1 -1
  5. data/lib/rubber/environment.rb +12 -3
  6. data/lib/rubber/recipes/rubber/setup.rb +7 -1
  7. data/lib/rubber/recipes/rubber/utils.rb +4 -1
  8. data/lib/rubber/version.rb +1 -2
  9. data/rubber.gemspec +1 -1
  10. data/templates/apache/config/rubber/deploy-apache.rb +13 -2
  11. data/templates/base/config/rubber/rubber.yml +9 -2
  12. data/templates/complete_passenger/config/rubber/role/haproxy/haproxy-passenger.conf +8 -1
  13. data/templates/couchbase/config/rubber/deploy-couchbase.rb +105 -0
  14. data/templates/couchbase/config/rubber/role/couchbase/crontab +8 -0
  15. data/templates/couchbase/config/rubber/rubber-couchbase.yml +25 -0
  16. data/templates/couchbase/templates.rb +3 -0
  17. data/templates/couchbase/templates.yml +1 -0
  18. data/templates/graylog/config/rubber/deploy-graylog.rb +5 -1
  19. data/templates/graylog/config/rubber/role/graylog_web/graylog_web-upstart.conf +1 -1
  20. data/templates/graylog/config/rubber/rubber-graylog.yml +3 -3
  21. data/templates/jenkins/config/rubber/deploy-jenkins.rb +37 -24
  22. data/templates/jenkins/config/rubber/role/jenkins/crontab +7 -0
  23. data/templates/jenkins/config/rubber/role/jenkins/github-deploy-key.pem +2 -0
  24. data/templates/jenkins/config/rubber/role/jenkins/github-deploy-key.pem.pub +2 -0
  25. data/templates/jenkins/config/rubber/role/jenkins/jenkins-apache-vhost.conf +1 -1
  26. data/templates/jenkins/config/rubber/rubber-jenkins.yml +1 -1
  27. data/templates/monit/config/rubber/role/couchbase/monit-couchbase.conf +7 -0
  28. data/templates/monit/config/rubber/role/resque_scheduler/monit-resque_scheduler.conf +10 -0
  29. data/templates/mysql/config/rubber/deploy-mysql.rb +1 -0
  30. data/templates/passenger/config/rubber/deploy-passenger.rb +43 -4
  31. data/templates/passenger/config/rubber/rubber-passenger.yml +4 -1
  32. data/templates/passenger_nginx/config/rubber/role/passenger_nginx/application.conf +13 -0
  33. data/templates/torquebox/config/rubber/role/torquebox/standalone-ha.xml +60 -54
  34. data/templates/torquebox/config/rubber/role/torquebox/standalone.conf +1 -0
  35. data/templates/torquebox/config/rubber/rubber-torquebox.yml +6 -4
  36. data/test/cloud/aws_test.rb +1 -1
  37. data/test/cloud/fog_test.rb +1 -1
  38. data/test/dns/aws_test.rb +28 -4
  39. data/test/dns/zerigo_test.rb +2 -2
  40. data/test/environment_test.rb +28 -8
  41. data/test/fixtures/basic/rubber.yml +5 -0
  42. data/test/instance_test.rb +1 -1
  43. metadata +14 -6
@@ -9,7 +9,7 @@ stop on runlevel [016]
9
9
 
10
10
  script
11
11
  cd <%= rubber_env.graylog_web_dir %>
12
- exec bash -l -c "passenger start -e production --user <%= rubber_env.app_user %> -p <%= rubber_env.graylog_web_port %> --log-file <%= rubber_env.graylog_web_dir %>/log/server.log"
12
+ exec bash -l -c "bundle exec puma -p <%= rubber_env.graylog_web_port %> <%= rubber_env.graylog_web_dir %>/config.ru"
13
13
  end script
14
14
 
15
15
  post-start script
@@ -1,4 +1,4 @@
1
- graylog_server_version: "0.9.6"
1
+ graylog_server_version: "0.9.6p1"
2
2
  graylog_server_pkg_url: "https://github.com/downloads/Graylog2/graylog2-server/graylog2-server-#{graylog_server_version}.tar.gz"
3
3
  graylog_server_prefix: "/usr/local"
4
4
  graylog_server_dir: "#{graylog_server_prefix}/graylog2-server-#{graylog_server_version}"
@@ -6,7 +6,7 @@ graylog_server_pid_file: "/var/run/graylog-server.pid"
6
6
  graylog_server_port: 12201
7
7
  graylog_server_syslog_port: 12514
8
8
 
9
- graylog_web_version: "0.9.6"
9
+ graylog_web_version: "0.9.6p1"
10
10
  graylog_web_pkg_url: "https://github.com/downloads/Graylog2/graylog2-web-interface/graylog2-web-interface-#{graylog_web_version}.tar.gz"
11
11
  graylog_web_prefix: "/usr/local"
12
12
  graylog_web_dir: "#{graylog_web_prefix}/graylog2-web-interface-#{graylog_web_version}"
@@ -37,6 +37,6 @@ roles:
37
37
  packages: [openjdk-6-jdk, mongodb-10gen]
38
38
  graylog_web:
39
39
  packages: [libcurl4-openssl-dev]
40
- gems: [[passenger, "#{passenger_version || '3.0.7'}"]]
40
+ gems: [puma]
41
41
 
42
42
  gems: [gelf, graylog2_exceptions, graylog2-resque]
@@ -1,78 +1,91 @@
1
1
 
2
2
  namespace :rubber do
3
-
3
+
4
4
  namespace :jenkins do
5
-
5
+
6
6
  rubber.allow_optional_tasks(self)
7
-
7
+
8
8
  before "rubber:install_packages", "rubber:jenkins:setup_apt_sources"
9
-
9
+
10
10
  task :setup_apt_sources, :roles => :jenkins do
11
11
  # Setup apt sources to jenkins
12
12
  sources = <<-SOURCES
13
13
  deb http://pkg.jenkins-ci.org/debian binary/
14
14
  SOURCES
15
15
  sources.gsub!(/^[ \t]*/, '')
16
- put(sources, "/etc/apt/sources.list.d/jenkins.list")
16
+ put(sources, "/etc/apt/sources.list.d/jenkins.list")
17
17
  rsudo "wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -"
18
18
  end
19
19
 
20
- after "rubber:bootstrap", "rubber:jenkins:bootstrap"
20
+ after "rubber:apache:bootstrap", "rubber:jenkins:bootstrap"
21
21
 
22
22
  task :bootstrap, :roles => :jenkins do
23
23
  exists = capture("echo $(ls /etc/apache2/jenkins.auth 2> /dev/null)")
24
24
  if exists.strip.size == 0
25
25
  rubber.update_code_for_bootstrap
26
- rubber.run_config(:file => "role/jenkins/", :force => true, :deploy_path => release_path)
26
+ rubber.run_config(:file => "role/jenkins", :force => true, :deploy_path => release_path)
27
27
 
28
28
  restart
29
29
  rubber.apache.restart
30
-
30
+
31
31
  # user specific bootstrap (add plugins, etc)
32
+ sleep(5) # Allow Jenkins enough time to start up.
32
33
  custom_bootstrap
33
34
  end
34
35
  end
35
36
 
36
37
  task :custom_bootstrap, :roles => :jenkins do
37
38
  jenkins_cli = "java -jar /var/cache/jenkins/war/WEB-INF/jenkins-cli.jar -s http://localhost:#{rubber_env.jenkins_proxy_port}/"
38
-
39
- rsudo "#{jenkins_cli} install-plugin -restart github"
40
-
41
- rubber.sudo_script 'configure_git', <<-ENDSCRIPT
39
+
40
+ rubber.sudo_script "update_jenkins_plugin_list", <<-ENDSCRIPT
41
+ curl -L http://updates.jenkins-ci.org/update-center.json | sed '1d;$d' | curl -X POST -H "Accept: application/json" -d @- http://localhost:#{rubber_env.jenkins_proxy_port}/updateCenter/byId/default/postBack
42
+ ENDSCRIPT
43
+
44
+ rsudo "#{jenkins_cli} install-plugin github"
45
+ rsudo "#{jenkins_cli} install-plugin gravatar"
46
+ rsudo "#{jenkins_cli} install-plugin brakeman"
47
+ rsudo "#{jenkins_cli} install-plugin rubyMetrics"
48
+ rsudo "#{jenkins_cli} install-plugin xvfb"
49
+ rsudo "#{jenkins_cli} restart"
50
+
51
+ init_jenkins_user_ssh = <<-ENDSCRIPT
42
52
  # Get host key for src machine to prevent ssh from failing
43
- rm -f #{jenkins_build_home}/.ssh/known_hosts
53
+ rm -f #{rubber_env.jenkins_build_home}/.ssh/known_hosts
44
54
  ssh -o 'StrictHostKeyChecking=no' git@github.com &> /dev/null || true
45
55
  ENDSCRIPT
56
+
57
+ rubber.sudo_script 'configure_git', init_jenkins_user_ssh, :as => "jenkins"
58
+
46
59
  #
47
60
  # Manual configuration steps in jenkins webui
48
61
  #
62
+ # Set discard old builds (7 days?)
63
+ # Set email notification
49
64
  # set github project (url for linking from build results): http://github.com/user/project/
50
65
  # set repository url to github clone address: git@github.com:user/project.git
51
66
  # set branches to build to: master
52
- # Under git advanced settings:
53
- # Set Config user.name: jenkins
54
- # Set Config user.email: jenkins@localhost
67
+ # Check Build when a change is pushed to GitHub
68
+ # (add https://jenkins.host/github-webhook/ to github post receive hook on github project)
55
69
  # Set build command to:
56
- # export RAILS_ENV=development
57
- # bundle install --path $HOME/bundler
58
- # bundle exec rake db:drop:all db:setup
59
- # bundle exec rake
70
+ # ./script/ci_test.sh
71
+ # Check Publish JUnit test result report, xmls: test/reports/*.xml
72
+ # Check Publish Rcov report, directory: coverage/rcov
60
73
  end
61
-
74
+
62
75
  desc <<-DESC
63
76
  Starts the jenkins daemon
64
77
  DESC
65
78
  task :start, :roles => :jenkins do
66
79
  rsudo "service jenkins start"
67
80
  end
68
-
81
+
69
82
  desc <<-DESC
70
83
  Stops the jenkins daemon
71
84
  DESC
72
85
  task :stop, :roles => :jenkins do
73
86
  rsudo "service jenkins stop || true"
74
87
  end
75
-
88
+
76
89
  desc <<-DESC
77
90
  Restarts the jenkins daemon
78
91
  DESC
@@ -80,7 +93,7 @@ namespace :rubber do
80
93
  stop
81
94
  start
82
95
  end
83
-
96
+
84
97
  end
85
98
 
86
99
  end
@@ -0,0 +1,7 @@
1
+ <%
2
+ @read_cmd = 'crontab -l'
3
+ @write_cmd = 'crontab -'
4
+ @additive = ["# rubber-confluence-start", "# rubber-confluence-end"]
5
+ %>
6
+
7
+ 0 2 * * * cd <%= Rubber.root %> && ./bin/rubber cron --task util:backup --directory=/mnt/jenkins_backups --name=jenkins --command="nice zip -r \%dir\%/jenkins_<%= rubber_env.host %>_\%time_stamp\%.zip <%= rubber_env.jenkins_build_home %> -x \*.bundler\* \*bundler\* \*.gem\* \*.java\* \*.dbus\* \*.mozilla\*"
@@ -1,6 +1,8 @@
1
1
  <%
2
2
  @path = "#{rubber_env.jenkins_build_home}/.ssh/id_dsa"
3
3
  @perms = 0600
4
+ @owner = "jenkins"
5
+ @post = "chown #{@owner} #{rubber_env.jenkins_build_home}/.ssh"
4
6
  %>
5
7
 
6
8
  <% raise "Create a ssh keypair and add the private key contents here, or delete this file" %>
@@ -1,5 +1,7 @@
1
1
  <%
2
2
  @path = "#{rubber_env.jenkins_build_home}/.ssh/id_dsa.pub"
3
3
  @perms = 0600
4
+ @owner = "jenkins"
5
+ @post = "chown #{@owner} #{rubber_env.jenkins_build_home}/.ssh"
4
6
  %>
5
7
  <% raise "Create a ssh keypair and add the public key contents here, or delete this file" %>
@@ -32,7 +32,7 @@ NameVirtualHost *:<%= rubber_env.jenkins_web_ssl_port %>
32
32
  AuthType Basic
33
33
  AuthName "Jenkins"
34
34
  AuthUserFile /etc/apache2/jenkins.auth
35
- Require user <%= rubber_env.web_tools_user %>
35
+ Require valid-user
36
36
 
37
37
  Allow from all
38
38
  </Location>
@@ -30,4 +30,4 @@ security_groups:
30
30
  roles:
31
31
  jenkins:
32
32
  assigned_security_groups: [jenkins_web]
33
- packages: [openjdk-6-jdk, jenkins]
33
+ packages: [openjdk-7-jdk, jenkins, xvfb, firefox]
@@ -0,0 +1,7 @@
1
+ <%
2
+ @path = '/etc/monit/monit.d/monit-couchbase.conf'
3
+ %>
4
+ check process couchbase with pidfile <%= rubber_env.couchbase_pid_file %>
5
+ group couchbase-<%= Rubber.env %>
6
+ start program = "/usr/bin/env service couchbase-server start"
7
+ stop program = "/usr/bin/env service couchbase-server stop"
@@ -0,0 +1,10 @@
1
+ <%
2
+ @path = '/etc/monit/monit.d/monit-resque_scheduler.conf'
3
+ %>
4
+
5
+ check process resque_scheduler with pidfile <%= rubber_env.resque_scheduler_pid_file %>
6
+ group resque-<%= Rubber.env %>
7
+ start program = "/usr/bin/env service resque-scheduler start"
8
+ stop program = "/usr/bin/env service resque-scheduler stop"
9
+
10
+ if totalmem > 350.0 MB for 15 cycles then restart
@@ -40,6 +40,7 @@ namespace :rubber do
40
40
  pass = "identified by '#{env.db_pass}'" if env.db_pass
41
41
  rubber.sudo_script "create_master_db", <<-ENDSCRIPT
42
42
  mysql -u root -e "create database #{env.db_name};"
43
+ mysql -u root -e "delete from mysql.user where user='' and host='localhost';"
43
44
  mysql -u root -e "grant all on *.* to '#{env.db_user}'@'%' #{pass};"
44
45
  mysql -u root -e "grant select on *.* to '#{env.db_slave_user}'@'%' #{pass};"
45
46
  mysql -u root -e "grant replication slave on *.* to '#{env.db_replicator_user}'@'%' #{pass};"
@@ -20,17 +20,56 @@ namespace :rubber do
20
20
  fi
21
21
  ENDSCRIPT
22
22
  end
23
+
24
+ on :load do
25
+ # serial_reload and serial_restart
26
+ apache_serial_tasks = rubber.apache.tasks.values.select {|t| t.name =~ /^_serial_task_serial_/ }
27
+
28
+ apache_serial_tasks.each do |apache_task|
29
+ qualifier = apache_task.name.to_s.gsub(/^_serial_task_serial_/, '')
30
+ remove_pool_name = "serial_remove_from_pool_#{qualifier}"
31
+ add_pool_name = "serial_add_to_pool_#{qualifier}"
32
+
33
+ task remove_pool_name.to_sym,
34
+ search_task(:remove_from_pool).options.merge(:hosts => apache_task.options[:hosts]),
35
+ &search_task(:remove_from_pool).body
36
+ task add_pool_name.to_sym,
37
+ search_task(:add_to_pool).options.merge(:hosts => apache_task.options[:hosts]),
38
+ &search_task(:add_to_pool).body
39
+ before apache_task.fully_qualified_name, "rubber:passenger:#{remove_pool_name}"
40
+ after apache_task.fully_qualified_name, "rubber:passenger:#{add_pool_name}"
41
+ end
42
+ end
43
+
44
+ before "rubber:apache:stop", "rubber:passenger:remove_from_pool"
45
+
46
+ task :remove_from_pool, :roles => :passenger do
47
+ maybe_sleep = " && sleep 5" if Rubber.env == 'production'
48
+ rsudo "rm -f #{releases_path}/*/public/httpchk.txt#{maybe_sleep}"
49
+ end
50
+
51
+ after "rubber:apache:start", "rubber:passenger:add_to_pool"
52
+
53
+ task :add_to_pool, :roles => :passenger do
54
+ # Wait for passenger to startup before adding host back into haproxy pool
55
+ logger.info "Waiting for passenger to startup"
23
56
 
57
+ opts = get_host_options('rolling_restart_port') {|port| port.to_s}
58
+ rsudo "while ! curl -s -f http://localhost:$CAPISTRANO:VAR$/ &> /dev/null; do echo .; done", opts
59
+ rsudo "touch #{current_path}/public/httpchk.txt"
60
+ end
61
+
62
+
24
63
  # passenger depends on apache for start/stop/restart, just need these defined
25
64
  # as apache hooks into standard deploy lifecycle
26
-
27
- deploy.task :restart, :roles => :app do
65
+
66
+ deploy.task :restart, :roles => :passenger do
28
67
  end
29
68
 
30
- deploy.task :stop, :roles => :app do
69
+ deploy.task :stop, :roles => :passenger do
31
70
  end
32
71
 
33
- deploy.task :start, :roles => :app do
72
+ deploy.task :start, :roles => :passenger do
34
73
  end
35
74
 
36
75
  end
@@ -1,4 +1,4 @@
1
- passenger_version: 3.0.12
1
+ passenger_version: 3.0.15
2
2
  passenger_root: "#{rvm_gem_home}/gems/passenger-#{passenger_version}"
3
3
  passenger_ruby: "#{rvm_prefix}/wrappers/#{`bash -l -c 'rvm strings #{rvm_ruby}'`.strip}/ruby"
4
4
  passenger_lib: "#{passenger_root}/ext/apache2/mod_passenger.so"
@@ -13,4 +13,7 @@ roles:
13
13
  passenger:
14
14
  packages: [apache2-mpm-prefork, apache2-prefork-dev, libcurl4-openssl-dev, libapache2-mod-xsendfile]
15
15
  gems: [fastthread, rack, [passenger, "#{passenger_version}"]]
16
+ rolling_restart_port: "#{passenger_listen_port}"
16
17
 
18
+ web_tools:
19
+ rolling_restart_port: "#{web_tools_port}"
@@ -28,3 +28,16 @@ location = /404.html
28
28
  {
29
29
  root <%= Rubber.root + "/public" %>;
30
30
  }
31
+
32
+ <% if Rubber::Util.has_asset_pipeline? %>
33
+ # Give static assets a far-future header and serve the pre-compressed version of the asset
34
+ # instead of compressing on the fly.
35
+ location ~ ^/(assets)/ {
36
+ gzip_static on;
37
+ expires max;
38
+ add_header Cache-Control public;
39
+ add_header Last-Modified "";
40
+ add_header ETag "";
41
+ break;
42
+ }
43
+ <% end %>
@@ -1,7 +1,7 @@
1
1
  <%
2
2
  @path = "#{rubber_env.torquebox_dir}/jboss/standalone/configuration/standalone-ha.xml"
3
3
  %><?xml version='1.0' encoding='UTF-8'?>
4
- <server xmlns='urn:jboss:domain:1.2'>
4
+ <server xmlns='urn:jboss:domain:1.3'>
5
5
  <extensions>
6
6
  <extension module='org.jboss.as.clustering.infinispan'/>
7
7
  <extension module='org.jboss.as.clustering.jgroups'/>
@@ -35,15 +35,15 @@
35
35
  <extension module='org.jboss.as.weld'/>
36
36
  <extension module='org.torquebox.bootstrap'/>
37
37
  <extension module='org.torquebox.core'/>
38
- <extension module='org.torquebox.services'/>
39
- <extension module='org.torquebox.security'/>
40
- <extension module='org.torquebox.jobs'/>
41
- <extension module='org.torquebox.stomp'/>
42
38
  <extension module='org.torquebox.messaging'/>
43
- <extension module='org.torquebox.cdi'/>
39
+ <extension module='org.torquebox.stomp'/>
44
40
  <extension module='org.torquebox.web'/>
45
- <extension module='org.torquebox.cache'/>
41
+ <extension module='org.torquebox.security'/>
42
+ <extension module='org.torquebox.services'/>
43
+ <extension module='org.torquebox.cdi'/>
44
+ <extension module='org.torquebox.jobs'/>
46
45
  <extension module='org.projectodd.polyglot.hasingleton'/>
46
+ <extension module='org.projectodd.polyglot.cache'/>
47
47
  </extensions>
48
48
  <system-properties>
49
49
  <property name='org.apache.tomcat.util.http.ServerCookie.FWD_SLASH_IS_SEPARATOR' value='false'/>
@@ -53,13 +53,18 @@
53
53
  <security-realms>
54
54
  <security-realm name='ManagementRealm'>
55
55
  <authentication>
56
+ <local default-user='$local'/>
56
57
  <properties path='mgmt-users.properties' relative-to='jboss.server.config.dir'/>
57
58
  </authentication>
58
59
  </security-realm>
59
60
  <security-realm name='ApplicationRealm'>
60
61
  <authentication>
62
+ <local default-user='$local' allowed-users='*'/>
61
63
  <properties path='application-users.properties' relative-to='jboss.server.config.dir'/>
62
64
  </authentication>
65
+ <authorization>
66
+ <properties path='application-roles.properties' relative-to='jboss.server.config.dir'/>
67
+ </authorization>
63
68
  </security-realm>
64
69
  </security-realms>
65
70
  <management-interfaces>
@@ -115,7 +120,7 @@
115
120
  </subsystem>
116
121
  <subsystem xmlns='urn:jboss:domain:cmp:1.0'/>
117
122
  <subsystem xmlns='urn:jboss:domain:configadmin:1.0'/>
118
- <subsystem xmlns='urn:jboss:domain:datasources:1.0'>
123
+ <subsystem xmlns='urn:jboss:domain:datasources:1.1'>
119
124
  <datasources>
120
125
  <datasource jndi-name='java:jboss/datasources/ExampleDS' pool-name='ExampleDS' enabled='true' use-java-context='true'>
121
126
  <connection-url>
@@ -145,8 +150,15 @@
145
150
  <subsystem xmlns='urn:jboss:domain:deployment-scanner:1.1'>
146
151
  <deployment-scanner path='deployments' relative-to='jboss.server.base.dir' scan-interval='5000' deployment-timeout='1200'/>
147
152
  </subsystem>
148
- <subsystem xmlns='urn:jboss:domain:ee:1.0'/>
149
- <subsystem xmlns='urn:jboss:domain:ejb3:1.2'>
153
+ <subsystem xmlns='urn:jboss:domain:ee:1.1'>
154
+ <spec-descriptor-property-replacement>
155
+ false
156
+ </spec-descriptor-property-replacement>
157
+ <jboss-descriptor-property-replacement>
158
+ true
159
+ </jboss-descriptor-property-replacement>
160
+ </subsystem>
161
+ <subsystem xmlns='urn:jboss:domain:ejb3:1.3'>
150
162
  <session-bean>
151
163
  <stateless>
152
164
  <bean-instance-pool-ref pool-name='slsb-strict-max-pool'/>
@@ -186,27 +198,27 @@
186
198
  </thread-pools>
187
199
  <iiop enable-by-default='false' use-qualified-name='false'/>
188
200
  </subsystem>
189
- <subsystem xmlns='urn:jboss:domain:infinispan:1.2' default-cache-container='cluster'>
201
+ <subsystem xmlns='urn:jboss:domain:infinispan:1.3'>
190
202
  <cache-container name='cluster' aliases='ha-partition' default-cache='default'>
191
203
  <transport lock-timeout='60000'/>
192
204
  <replicated-cache name='default' mode='SYNC' batching='true'>
193
205
  <locking isolation='REPEATABLE_READ'/>
194
206
  </replicated-cache>
195
207
  </cache-container>
196
- <cache-container name='web' aliases='torquebox standard-session-cache' default-cache='repl'>
208
+ <cache-container name='web' aliases='polyglot torquebox standard-session-cache' default-cache='repl' module='org.jboss.as.clustering.web.infinispan'>
197
209
  <transport lock-timeout='60000'/>
198
- <replicated-cache name='repl' mode='ASYNC' batching='true'>
210
+ <replicated-cache name='repl' mode='ASYNC' batching='true' start='EAGER'>
199
211
  <file-store/>
200
212
  </replicated-cache>
201
213
  <replicated-cache name='sso' mode='SYNC' batching='true'/>
202
- <distributed-cache name='dist' mode='ASYNC' batching='true'>
214
+ <distributed-cache name='dist' mode='ASYNC' batching='true' l1-lifespan='0'>
203
215
  <file-store/>
204
216
  </distributed-cache>
205
217
  </cache-container>
206
- <cache-container name='ejb' aliases='sfsb sfsb-cache' default-cache='repl'>
218
+ <cache-container name='ejb' aliases='sfsb sfsb-cache' default-cache='repl' module='org.jboss.as.clustering.ejb3.infinispan'>
207
219
  <transport lock-timeout='60000'/>
208
220
  <replicated-cache name='repl' mode='ASYNC' batching='true'>
209
- <eviction strategy='LRU'/>
221
+ <eviction strategy='LRU' max-entries='10000'/>
210
222
  <file-store/>
211
223
  </replicated-cache>
212
224
  <!--
@@ -214,12 +226,12 @@
214
226
  ~ the socketbinding referenced by the EJB remoting connector
215
227
  -->
216
228
  <replicated-cache name='remote-connector-client-mappings' mode='SYNC' batching='true'/>
217
- <distributed-cache name='dist' mode='ASYNC' batching='true'>
218
- <eviction strategy='LRU'/>
229
+ <distributed-cache name='dist' mode='ASYNC' batching='true' l1-lifespan='0'>
230
+ <eviction strategy='LRU' max-entries='10000'/>
219
231
  <file-store/>
220
232
  </distributed-cache>
221
233
  </cache-container>
222
- <cache-container name='hibernate' default-cache='local-query'>
234
+ <cache-container name='hibernate' default-cache='local-query' module='org.jboss.as.jpa.hibernate:4'>
223
235
  <transport lock-timeout='60000'/>
224
236
  <local-cache name='local-query'>
225
237
  <transaction mode='NONE'/>
@@ -237,8 +249,8 @@
237
249
  </replicated-cache>
238
250
  </cache-container>
239
251
  </subsystem>
240
- <subsystem xmlns='urn:jboss:domain:jacorb:1.1'>
241
- <orb>
252
+ <subsystem xmlns='urn:jboss:domain:jacorb:1.2'>
253
+ <orb socket-binding='jacorb' ssl-socket-binding='jacorb-ssl'>
242
254
  <initializers transactions='spec' security='on'/>
243
255
  </orb>
244
256
  </subsystem>
@@ -282,6 +294,7 @@
282
294
  <protocol type='UFC'/>
283
295
  <protocol type='MFC'/>
284
296
  <protocol type='FRAG2'/>
297
+ <protocol type='RSVP'/>
285
298
  </stack>
286
299
  <stack name='tcp'>
287
300
  <transport type='TCP' socket-binding='jgroups-tcp' diagnostics-socket-binding='jgroups-diagnostics'/>
@@ -290,7 +303,6 @@
290
303
  <%= rubber_instances.for_role('torquebox').collect { |host| "#{host.full_name}[7600]" }.join(',') %>
291
304
  </property>
292
305
  </protocol>
293
- <protocol type='MPING' socket-binding='jgroups-mping'/>
294
306
  <protocol type='MERGE2'/>
295
307
  <protocol type='FD_SOCK' socket-binding='jgroups-tcp-fd'/>
296
308
  <protocol type='FD'/>
@@ -303,6 +315,7 @@
303
315
  <protocol type='UFC'/>
304
316
  <protocol type='MFC'/>
305
317
  <protocol type='FRAG2'/>
318
+ <protocol type='RSVP'/>
306
319
  </stack>
307
320
  </subsystem>
308
321
  <subsystem xmlns='urn:jboss:domain:jmx:1.1'>
@@ -318,11 +331,14 @@
318
331
  <smtp-server outbound-socket-binding-ref='mail-smtp'/>
319
332
  </mail-session>
320
333
  </subsystem>
321
- <subsystem xmlns='urn:jboss:domain:messaging:1.1'>
334
+ <subsystem xmlns='urn:jboss:domain:messaging:1.2'>
322
335
  <hornetq-server>
323
336
  <clustered>
324
337
  true
325
338
  </clustered>
339
+ <cluster-password>
340
+ ${jboss.messaging.cluster.password:CHANGE ME!!}
341
+ </cluster-password>
326
342
  <persistence-enabled>
327
343
  true
328
344
  </persistence-enabled>
@@ -349,25 +365,25 @@
349
365
  </acceptors>
350
366
  <broadcast-groups>
351
367
  <broadcast-group name='bg-group1'>
368
+ <socket-binding>
369
+ messaging-group
370
+ </socket-binding>
352
371
  <broadcast-period>
353
372
  5000
354
373
  </broadcast-period>
355
374
  <connector-ref>
356
375
  netty
357
376
  </connector-ref>
358
- <socket-binding>
359
- messaging-group
360
- </socket-binding>
361
377
  </broadcast-group>
362
378
  </broadcast-groups>
363
379
  <discovery-groups>
364
380
  <discovery-group name='dg-group1'>
365
- <refresh-timeout>
366
- 10000
367
- </refresh-timeout>
368
381
  <socket-binding>
369
382
  messaging-group
370
383
  </socket-binding>
384
+ <refresh-timeout>
385
+ 10000
386
+ </refresh-timeout>
371
387
  </discovery-group>
372
388
  </discovery-groups>
373
389
  <cluster-connections>
@@ -432,7 +448,6 @@
432
448
  <connector-ref connector-name='netty'/>
433
449
  </connectors>
434
450
  <entries>
435
- <entry name='RemoteConnectionFactory'/>
436
451
  <entry name='java:jboss/exported/jms/RemoteConnectionFactory'/>
437
452
  </entries>
438
453
  <consumer-window-size>
@@ -449,14 +464,6 @@
449
464
  </entries>
450
465
  </pooled-connection-factory>
451
466
  </jms-connection-factories>
452
- <jms-destinations>
453
- </jms-destinations>
454
- <cluster-user>
455
- admin
456
- </cluster-user>
457
- <cluster-password>
458
- password
459
- </cluster-password>
460
467
  <jmx-management-enabled>
461
468
  true
462
469
  </jmx-management-enabled>
@@ -465,14 +472,16 @@
465
472
  </security-enabled>
466
473
  </hornetq-server>
467
474
  </subsystem>
468
- <subsystem xmlns='urn:jboss:domain:modcluster:1.0'>
469
- <mod-cluster-config proxy-list="${jboss.mod_cluster.proxyList}" excluded-contexts='invoker,jbossws,juddi,console'>
475
+ <subsystem xmlns='urn:jboss:domain:modcluster:1.1'>
476
+ <mod-cluster-config advertise="false" proxy-list="${jboss.mod_cluster.proxyList}" connector='ajp' excluded-contexts='invoker,jbossws,juddi,console'>
470
477
  <dynamic-load-provider>
471
478
  <load-metric type='busyness'/>
472
479
  </dynamic-load-provider>
473
480
  </mod-cluster-config>
474
481
  </subsystem>
475
- <subsystem xmlns='urn:jboss:domain:naming:1.1'/>
482
+ <subsystem xmlns='urn:jboss:domain:naming:1.2'>
483
+ <remote-naming/>
484
+ </subsystem>
476
485
  <subsystem xmlns='urn:jboss:domain:osgi:1.2' activation='lazy'>
477
486
  <properties>
478
487
  <!-- Specifies the beginning start level of the framework -->
@@ -497,17 +506,14 @@
497
506
  </subsystem>
498
507
  <subsystem xmlns='urn:jboss:domain:resource-adapters:1.0'/>
499
508
  <subsystem xmlns='urn:jboss:domain:sar:1.0'/>
500
- <subsystem xmlns='urn:jboss:domain:security:1.1'>
509
+ <subsystem xmlns='urn:jboss:domain:security:1.2'>
501
510
  <security-domains>
502
511
  <security-domain name='other' cache-type='default'>
503
512
  <authentication>
504
513
  <login-module code='Remoting' flag='optional'>
505
514
  <module-option name='password-stacking' value='useFirstPass'/>
506
515
  </login-module>
507
- <login-module code='RealmUsersRoles' flag='required'>
508
- <module-option name='usersProperties' value='${jboss.server.config.dir}/application-users.properties'/>
509
- <module-option name='rolesProperties' value='${jboss.server.config.dir}/application-roles.properties'/>
510
- <module-option name='realm' value='ApplicationRealm'/>
516
+ <login-module code='RealmDirect' flag='required'>
511
517
  <module-option name='password-stacking' value='useFirstPass'/>
512
518
  </login-module>
513
519
  </authentication>
@@ -525,7 +531,7 @@
525
531
  </security-domains>
526
532
  </subsystem>
527
533
  <subsystem xmlns='urn:jboss:domain:threads:1.1'/>
528
- <subsystem xmlns='urn:jboss:domain:transactions:1.1'>
534
+ <subsystem xmlns='urn:jboss:domain:transactions:1.2'>
529
535
  <core-environment>
530
536
  <process-id>
531
537
  <uuid/>
@@ -559,15 +565,15 @@
559
565
  <subsystem xmlns='urn:jboss:domain:weld:1.0'/>
560
566
  <subsystem xmlns='urn:jboss:domain:torquebox-bootstrap:1.0'/>
561
567
  <subsystem xmlns='urn:jboss:domain:torquebox-core:1.0'/>
562
- <subsystem xmlns='urn:jboss:domain:torquebox-services:1.0'/>
563
- <subsystem xmlns='urn:jboss:domain:torquebox-security:1.0'/>
564
- <subsystem xmlns='urn:jboss:domain:torquebox-jobs:1.0'/>
565
- <subsystem xmlns='urn:jboss:domain:torquebox-stomp:1.0' socket-binding='stomp'/>
566
568
  <subsystem xmlns='urn:jboss:domain:torquebox-messaging:1.0'/>
567
- <subsystem xmlns='urn:jboss:domain:torquebox-cdi:1.0'/>
569
+ <subsystem xmlns='urn:jboss:domain:torquebox-stomp:1.0' socket-binding='stomp'/>
568
570
  <subsystem xmlns='urn:jboss:domain:torquebox-web:1.0'/>
569
- <subsystem xmlns='urn:jboss:domain:torquebox-cache:1.0'/>
571
+ <subsystem xmlns='urn:jboss:domain:torquebox-security:1.0'/>
572
+ <subsystem xmlns='urn:jboss:domain:torquebox-services:1.0'/>
573
+ <subsystem xmlns='urn:jboss:domain:torquebox-cdi:1.0'/>
574
+ <subsystem xmlns='urn:jboss:domain:torquebox-jobs:1.0'/>
570
575
  <subsystem xmlns='urn:jboss:domain:polyglot-hasingleton:1.0'/>
576
+ <subsystem xmlns='urn:jboss:domain:polyglot-cache:1.0'/>
571
577
  </profile>
572
578
  <interfaces>
573
579
  <interface name='management'>
@@ -601,6 +607,7 @@
601
607
  <socket-binding name='jgroups-udp' port='55200' multicast-address='${jboss.default.multicast.address:230.0.0.4}' multicast-port='45688'/>
602
608
  <socket-binding name='jgroups-udp-fd' port='54200'/>
603
609
  <socket-binding name='messaging' port='5445'/>
610
+ <socket-binding name='messaging-group' port='0' multicast-address='${jboss.messaging.group.address:231.7.7.7}' multicast-port='${jboss.messaging.group.port:9876}'/>
604
611
  <socket-binding name='messaging-throughput' port='5455'/>
605
612
  <socket-binding name='modcluster' port='0' multicast-address='224.0.1.105' multicast-port='23364'/>
606
613
  <socket-binding name='osgi-http' interface='management' port='8090'/>
@@ -611,6 +618,5 @@
611
618
  <remote-destination host='localhost' port='25'/>
612
619
  </outbound-socket-binding>
613
620
  <socket-binding name='stomp' port='8675'/>
614
- <socket-binding name='messaging-group' port='0' multicast-address='${jboss.messaging.group.address:231.7.7.7}' multicast-port='${jboss.messaging.group.port:9876}'/>
615
621
  </socket-binding-group>
616
622
  </server>