diff --git a/manifests/init.pp b/manifests/init.pp index babba491..a6ccf0c7 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -81,12 +81,13 @@ $pool_remove_abandoned_timeout = 300, $pool_test_while_idle = true, $pool_test_on_borrow = false, + $tcpkeepalive = 240, # JVM Settings $javahome = undef, $jvm_xms = '256m', $jvm_xmx = '1024m', $jvm_permgen = '256m', - $jvm_optional = '-XX:-HeapDumpOnOutOfMemoryError', + $jvm_optional = '-XX:-HeapDumpOnOutOfMemoryError -XX:+PrintGCDateStamps', $java_opts = '', $catalina_opts = '', # Misc Settings @@ -131,6 +132,7 @@ $tomcat_keystore_pass = 'changeit', Enum['JKS', 'JCEKS', 'PKCS12'] $tomcat_keystore_type = 'JKS', $tomcat_accesslog_format = '%a %{jira.request.id}r %{jira.request.username}r %t "%m %U%q %H" %s %b %D "%{Referer}i" "%{User-Agent}i" "%{jira.request.assession.id}r"', + $tomcat_stuckvalve_threshold = '180', # Tomcat Tunables $tomcat_max_threads = '150', $tomcat_accept_count = '100', diff --git a/manifests/params.pp b/manifests/params.pp index 91e8e3cc..1142b234 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -14,6 +14,12 @@ $service_file_template = 'jira/jira.initscript.erb' $service_lockfile = '/var/lock/subsys/jira' $service_provider = undef + } elsif $facts['operatingsystem'] == 'Amazon' and $facts['operatingsystemmajrelease'] =='2' { + $json_packages = [ 'rubygem-json' ] + $service_file_location = '/usr/lib/systemd/system/jira.service' + $service_file_template = 'jira/jira.service.erb' + $service_lockfile = '/var/lock/subsys/jira' + $service_provider = 'systemd' } elsif versioncmp($facts['operatingsystemmajrelease'], '7') >= 0 { $json_packages = [ 'rubygem-json' ] $service_file_location = '/usr/lib/systemd/system/jira.service' diff --git a/templates/dbconfig.postgresql.xml.erb b/templates/dbconfig.postgresql.xml.erb index e7cba3f9..2ac5201f 100644 --- a/templates/dbconfig.postgresql.xml.erb +++ b/templates/dbconfig.postgresql.xml.erb @@ -24,5 +24,6 @@ <%= scope.lookupvar('jira::pool_test_while_idle') %> <%= scope.lookupvar('jira::pool_test_on_borrow') %> <% end -%> + tcpKeepAlive=true;socketTimeout=<%= scope.lookupvar('jira::tcpkeepalive') %> diff --git a/templates/server.xml.erb b/templates/server.xml.erb index fb656104..934521c6 100644 --- a/templates/server.xml.erb +++ b/templates/server.xml.erb @@ -49,6 +49,10 @@ <%- if @tomcat_address -%> address="<%= @tomcat_address %>" <%- end -%> + <%- if ( scope.function_versioncmp([@version, '7.12.1']) > 0 && @product =~ /^jira/ ) or @product =~ /^servicedesk/ -%> + relaxedPathChars="[]|" + relaxedQueryChars="[]|{}^\`"<>" + <%- end -%> maxThreads="<%= @tomcat_max_threads %>" minSpareThreads="<%= @tomcat_min_spare_threads %>" connectionTimeout="<%= @tomcat_connection_timeout %>" @@ -77,6 +81,10 @@ <%- if @tomcat_address -%> address="<%= @tomcat_address %>" <%- end -%> + <%- if ( scope.function_versioncmp([@version, '7.12.1']) > 0 && @product =~ /^jira/ ) or @product =~ /^servicedesk/ -%> + relaxedPathChars="[]|" + relaxedQueryChars="[]|{}^\`"<>" + <%- end -%> maxHttpHeaderSize="<%= @tomcat_max_http_header_size %>" SSLEnabled="true" maxThreads="<%= @tomcat_max_threads %>" @@ -126,6 +134,8 @@ + + diff --git a/templates/setenv.sh.erb b/templates/setenv.sh.erb index 80788a7f..bab566e4 100755 --- a/templates/setenv.sh.erb +++ b/templates/setenv.sh.erb @@ -3,6 +3,8 @@ # JIRA_HOME="<%= scope.lookupvar('jira::homedir') %>" +export LC_ALL="en_US.UTF-8" + # # Additional JAVA_OPTS # @@ -47,7 +49,9 @@ DISABLE_NOTIFICATIONS=" -Datlassian.mail.senddisabled=true -Datlassian.mail.fetc # This allows us to actually debug GC related issues by correlating timestamps # with other parts of the application logs. #----------------------------------------------------------------------------------- -JVM_EXTRA_ARGS="-XX:+PrintGCDateStamps" +JVM_EXTRA_ARGS="" + +JVM_OPENS=$(cat $PRGDIR/java-opens.txt) PRGDIR=`dirname "$0"` cat "${PRGDIR}"/jirabanner.txt