From 7f0dd69ef316e8ec594a6cb1e254a7d153b5236d Mon Sep 17 00:00:00 2001 From: Jarkko Oranen Date: Wed, 21 Apr 2021 19:06:16 +0300 Subject: [PATCH] Document most parameters with puppet strings Also mark classes as private properly --- README.md | 485 +---------------------------------- functions/sort_hash.pp | 3 +- manifests/config.pp | 2 + manifests/init.pp | 258 ++++++++++++++++++- manifests/install.pp | 2 + manifests/mysql_connector.pp | 2 +- manifests/service.pp | 2 + manifests/sso.pp | 6 +- types/tomcat_attributes.pp | 1 + types/tomcat_connectors.pp | 1 + 10 files changed, 261 insertions(+), 501 deletions(-) diff --git a/README.md b/README.md index abcd1d52..737c3299 100644 --- a/README.md +++ b/README.md @@ -49,7 +49,7 @@ Puppet. configure/manage the database. The module uses PostgreSQL as a default. * Whilst not required, for production use we recommend using nginx/apache as a - reverse proxy to JIRA. We suggest using the jfryman/nginx puppet module. + reverse proxy to JIRA. We suggest using the puppet/nginx puppet module. ### What JIRA affects @@ -64,16 +64,16 @@ can be done using the puppetlabs-postgresql and puppetlabs-mysql modules. When using this module to upgrade JIRA, please make sure you have a database/JIRA home backup. -When using MySQL, We call the jira::mysql_connector class to install the MySQL java +When using MySQL, We call the `jira::mysql_connector` class to install the MySQL java connector directory from mysql.com as per Atlassian's documented recommendations. ### Beginning with JIRA This puppet module will automatically download the JIRA archive from Atlassian and extracts it into /opt/jira/atlassian-jira-$version. The default JIRA home is -/home/jira. +`/home/jira`, though you are encouraged to change this. -If you would prefer to use Hiera then see jira.yaml file for available options. +If you would prefer to use Hiera then see jira.yaml file for an example. #### Basic example @@ -111,483 +111,6 @@ doing large version upgrades. Always backup your database and your home director } ``` - -## Reference - -### Classes - -#### Public Classes - -* `jira`: Main class, manages the installation and configuration of JIRA - -#### Private Classes - -* `jira::install`: Installs JIRA binaries -* `jira::config`: Modifies jira/tomcat configuration files -* `jira::service`: Manage the JIRA service. -* `jira::mysql_connector`: Install/Manage the MySQL Java connector - -### Parameters - -#### JIRA parameters - -##### `$version` - -Specifies the version of JIRA to install, defaults to latest available at time of -module upload to the forge. It is recommended to pin the version number to avoid -unnecessary upgrades of JIRA. - -##### `$product` - -Product name, defaults to jira - -##### `$format` - -The default file format of the JIRA install file, defaults to tar.gz - -##### `$installdir` - -The directory to install to, defaults to '/opt/jira'. Note that -any parent directories must exist. - -##### `$homedir` - -The default home directory of JIRA, defaults to '/home/jira'. Note that -any parent directories must exist. - -##### `$user` - -The user to run/install JIRA as, defaults to 'jira' - -##### `$group` - -The group to run/install JIRA as, defaults to 'jira' - -##### `$uid` - -The uid of the JIRA user, defaults to next available (undef) - -##### `$gid` - -The gid of the JIRA user, defaults to next available (undef) - -##### `$shell` - -The shell of the JIRA user, defaults to '/bin/true' - -##### `$enable_secure_admin_sessions` - -Enables or disables JIRA Secure Administrator Sessions, defaults to true - -##### `$jira_config_properties = {}` - -Override default values for advanced configuration. Default values are defined -in jpm.xml, see -for details. Specify key/value pairs as a hash. Example: - -``` -jira_config_properties => { - 'ops.bar.group.size.opsbar-transitions' => '4', -} -``` - -##### `$datacenter` - -Enables or disables clustering, defaults to false - -##### `$shared_homedir` - -The directory of the shared home directory, defaults to undef. When clustering -is enabled, this parameter is *required*. - -#### Database parameters - -##### `$db` - -Which database to use for JIRA, defaults to 'postgresql'. Can be: -'postgresql', 'mysql', 'oracle', 'sqlserver', or 'h2'. - -##### `$dbuser` - -The default database user for JIRA, defaults to 'jiraadm' - -##### `$dbpassword` - -The password for the database user, defaults to 'mypassword' - -##### `$dbserver` - -The hostname of the database server, defaults to 'localhost' - -##### `$dbname` - -The name of the database, defaults to 'jira'. If using oracle this should be the -SID. - -##### `$dbport` - -The port of the database, defaults to an appropriate port for the $db: - -| $db | DEFAULT | -|------|--------| -| postgresql | 5432 | -| mysql | 3306 | -| oracle | 1521 | -| sqlserver | 1443 | -| h2 | N/A | - -##### `$dbdriver` - -The database driver to use, defaults to an appropriate value for $db: - -| $db | DEFAULT | -|------|--------| -| postgresql | org.postgresql.Driver | -| mysql | com.mysql.jdbc.Driver | -| oracle | oracle.jdbc.OracleDriver (*) | -| sqlserver | com.microsoft.sqlserver.jdbc.SQLServerDriver | -| h2 | org.h2.Driver | - -(*) NOTE: You must add the Oracle JDBC Driver manually with recent versions of JIRA (for now). -See: https://confluence.atlassian.com/doc/database-jdbc-drivers-171742.html - -##### `$dbtype` - -Database type, defaults to an appropriate value for $db: - -| $db | DEFAULT | -|------|--------| -| postgresql | postgresql72 | -| mysql | mysql | -| oracle | oracle10g | -| sqlserver | mssql | -| h2 | h2 | - -NOTE: Atlassian only supports Oracle 11g/12g, even so this value should be as documented here. - -##### `$dbschema` - -Set the schema - -The default value is 'public' for PostgreSQL, and undef for others - -##### `$dburl` - -This parameter is not required nor do we recommend setting it. However it can be -used to customize the database connection string. - -##### `$oracle_use_sid` - -Controls whether the module will use SID or service name syntax for the database URL. -Only has an effect if `$dbtype` is oracle. Defaults to true - -##### `$pool_max_size` - -Setting most of the advanced JDBC parameters is not required unless you want to tune JIRA -settings. - -defaults to undef - -##### `$pool_min_size` - -defaults to undef - -##### `$pool_max_wait` - -defaults to undef - -##### `$validation_query` - -defaults to undef - -##### `$min_evictable_idle_time` - -defaults to undef - -##### `$time_between_eviction_runs` - -defaults to undef - -##### `$pool_max_idle` - -defaults to undef - -##### `$pool_remove_abandoned` - -defaults to undef - -##### `$pool_remove_abandoned_timeout` - -defaults to undef - -##### `$pool_test_while_idle` - -defaults to undef - -##### `$pool_test_on_borrow` - -defaults to undef - -#### MySQL Java Connector parameters - -##### `mysql_connector_manage` - -Manage the MySQL Java Connector with the JIRA module, defaults to 'true' - -##### `mysql_connector_version` - -Specifies the version of MySQL Java Connector you would like installed. Defaults -to '5.1.34', - -##### `$mysql_connector_product` - -Product name, defaults to 'mysql-connector-java' - -##### `$mysql_connector_format` - -The default file format of the MySQL Java Connector install file, defaults to tar.gz - -##### `$mysql_connector_install` - -Installation directory of the MySQL connector. Defaults to '/opt/MySQL-connector' - -##### `$mysql_connector_url` - -The URL used to download the MySQL Java Connector installation file. -Defaults to `http://cdn.mysql.com/Downloads/Connector-J` - -#### JVM Java parameters - -##### `$javahome` - -The `JAVA_HOME` directory, defaults to undef. This is a *required* parameter - -##### `$java_package` - -If defined, the module will install this package before it runs the JIRA service. -Defaults to undef. - -##### `$jvm_xms` - -The initial memory allocation pool for a Java Virtual Machine. -defaults to '256m' - -##### `$jvm_xmx` - -Maximum memory allocation pool for a Java Virtual Machine. -defaults to '1024m' - -##### `$jvm_type` - -Choose your JVM type. Valid values are 'openjdk-11', 'oracle-jdk-1.8' -This setting affects various defaults in setenv.sh if the options aren't defined - -##### `$java_opts` - -defaults to ''. This sets `JVM_SUPPORT_RECOMMENDED_ARGS` in setenv.sh - -##### `$jvm_gc_args` - -This sets `JVM_GC_ARGS` in `setenv.sh`. Defaults to undef, meaning -the module makes a choice based on `jvm_type` - -##### `$jvm_code_cache_args` - -This sets `JVM_CODE_CACHE_ARGS` in `setenv.sh`. Defaults to undef, meaning -the module makes a choice based on `jvm_type` - -##### `$jvm_extra_args` -This sets `JVM_EXTRA_ARGS` in `setenv.sh`. Defaults to undef, meaning -the module makes a choice based on `jvm_type` - -##### `$catalina_opts` - -defaults to '' - -#### Miscellaneous parameters - -##### `$download_url` - -The URL used to download the JIRA installation file. -Defaults to `https://product-downloads.atlassian.com/software/jira/downloads/` - -##### `checksum` - -The md5 checksum of the archive file. Defaults to 'undef' - -##### `$proxy_server` - -Specify a proxy server, with port number if needed. ie: https://example.com:8080. -Defaults to 'undef'. - -##### `$proxy_type` - -Proxy server type (none|http|https|ftp). Defaults to 'undef'. - -##### `$service_manage` - -Manage the JIRA service, defaults to 'true' - -##### `$service_ensure` - -Manage the JIRA service, defaults to 'running' - -##### `$service_enable` - -Defaults to 'true' - -##### `$service_subscribe` - -Restart the jira service in response to this subscription - -##### `$service_notify` - -Notify other puppet resources to refresh after the jira service - -##### `$stop_jira` - -If the jira service is managed outside of puppet the stop_jira parameter can be -used to shut down jira for upgrades. Defaults to 'service jira stop && sleep 15' - -##### `$proxy = {}` - -Defaults to {}, See examples on how to use. - -##### `$contextpath = ""` - -Defaults to an empty string (""). Will add a path to the Tomcat Server Context. - -##### `$script_check_java_manage` - -Manages the 'check-java.sh' script provided by JIRA. - -Defaults to 'false'. - -##### `$script_check_java_template` - -Alternate location to find the 'check-java.sh' script. Requires -`$script_check_java_manage = true`. - -Defaults to 'jira/check-java.sh.erb'. - -#### Tomcat parameters - -##### `$tomcat_address` - -IP address to listen on. Defaults to all addresses. - -##### `$tomcat_port` - -Port to listen on, defaults to '8080' - -##### `$tomcat_max_threads` - -Defaults to '150' - -##### `$tomcat_accept_count` - -Defaults to '100' - -##### `$tomcat_native_ssl` - -Enable https/ssl support. Defaults to 'false'. See -for additional info. The java keystore can be managed with the puppetlabs-java\_ks -module or manually with -`keytool -genkey -alias jira -keyalg RSA -sigalg SHA256withRSA -keystore /home/jira/jira.ks` - -##### `$tomcat_https_port` - -https/ssl Port to listen on, defaults to 8443. - -##### `$tomcat_redirect_https_port` - -Specifiy Jira redirect https port when using port redirection 80->8080 and -443->8443 or proxy server in front, defaults to $tomcat_https_port. To be used -with tomcat_native_ssl. - -##### `$tomcat_key_alias` - -The alias name of the java keystore entry. Defaults to 'jira'. - -##### `$tomcat_keystore_file` - -Location of java keystore file. Defaults to '/home/jira/jira.jks' - -##### `$tomcat_keystore_pass` - -Password to access java keystore. Defaults to 'changeit' - -##### `$tomcat_keystore_type` - -Defaults to 'JKS'. Valid options are 'JKS', 'PKCS12', 'JCEKS'. - -##### `$tomcat_additional_connectors` - -Well-formed, complex Hash where each key represents a port number and the key's -value is a hash whose key/value pairs represent the attributes and their values -that define the connector's behaviour. Default is `{}`. - -Use this parameter to specify arbitrary, additional connectors with arbitrary -attributes. There are no defaults here, so you must take care to specify all -attributes a connector requires to work in Jira. See below for examples. - -This is useful if you need to access your Jira instance directly through an -additional HTTP port, e.g. one that is not configured for reverse proxy use. -Atlassian describes use cases for this in -https://confluence.atlassian.com/kb/how-to-create-an-unproxied-application-link-719095740.html -and -https://confluence.atlassian.com/kb/how-to-bypass-a-reverse-proxy-or-ssl-in-application-links-719095724.html - -##### `$tomcat_accesslog_enable_xforwarded_for` - -If a proxy operates before JIRA, the access logs will only contain the IP addresses of the proxy -instead of the address of the user. With `X-Forwarded-For` the proxy can forward the users IP -address to the JIRA application server so that it can be logged correctly. - -Defaults to `false`. - -#### Crowd single sign on parameters - -#### `enable_sso` - -Enable crowd single sign on configuration as described in - -#### `application_name` - -Set crowd application name - -#### `application_password` - -Set crowd application password - -#### `application_login_url` - -Set crowd application login url, where to login into crowd (e.g. `https://crowd.example.com/console/`) - -#### `crowd_server_url` - -Set crowd application services url, e.g. `https://crowd.example.com/services/` - -#### `crowd_base_url` - -Set crowd base url, e.g. `https://crowd.example.com/` - -#### `session_isauthenticated` - -Some more crowd.properties for SSO, see atlassian documentation for details - -#### `session_tokenkey` - -Some more crowd.properties for SSO, see atlassian documentation for details - -#### `session_validationinterval` - -Some more crowd.properties for SSO, see atlassian documentation for details - -#### `session_lastvalidation` - -Some more crowd.properties for SSO, see atlassian documentation for details - ## Usage ### A more complex example diff --git a/functions/sort_hash.pp b/functions/sort_hash.pp index 72745e32..adca8191 100644 --- a/functions/sort_hash.pp +++ b/functions/sort_hash.pp @@ -1,4 +1,5 @@ -# @summary Return a sorted hash +# @summary Sort a hash +# @return Returns a sorted hash # @api private function jira::sort_hash(Hash $input) >> Hash { # Puppet hashes are "insertion order", so this works to sort by key diff --git a/manifests/config.pp b/manifests/config.pp index f7a6c69e..95a900ab 100644 --- a/manifests/config.pp +++ b/manifests/config.pp @@ -13,6 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. # ----------------------------------------------------------------------------- + +# @api private class jira::config { # This class should be used from init.pp with a dependency on jira::install # and sending a refresh to jira::service diff --git a/manifests/init.pp b/manifests/init.pp index cc8e4cb3..3dcfba74 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -13,23 +13,253 @@ # See the License for the specific language governing permissions and # limitations under the License. # ----------------------------------------------------------------------------- -# == Class: jira # -# This module is used to install Jira. +# @author Bryce Johnson, Merritt Krakowitzer, Vox Pupuli +# @param version +# The JIRA version to install or upgrade to. Changing this will trigger a restart +# @param product +# Atlassian product to install. +# @param installdir +# The directory in which JIRA software packages will be extracted +# @param homedir +# The directory for JIRA's runtime data that persists between versions. +# @param manage_user +# Whether to manage the service user +# @param user +# User that the service will run as +# @param group +# Group that the service will run as +# @param uid +# The desired UID for the service user +# @param gid +# The desired GID for the service group +# @param shell +# The shell of the service user +# @param enable_secure_admin_sessions +# Enables secure administrator sessions +# @param jira_config_properties +# Allows configuring advanced JIRA properties as a key-value hash. +# See https://confluence.atlassian.com/adminjiraserver0813/advanced-jira-application-configuration-1027138631.html +# @param datacenter +# Set to true to enable clustered mode (JIRA Datacenter) +# @param shared_homedir +# Shared data directory for all JIRA instances in a cluster +# @param ehcache_listener_host +# EHCache configuration for clustered mode +# @param ehcache_listener_port +# EHCache configuration for clustered mode +# @param ehcache_object_port +# EHCache configuration for clustered mode +# @param db +# The kind of database to use. +# @param dbname +# The database name to connect to +# @param dbuser +# Database username +# @param dbpassword +# Database password +# @param dbserver +# Database host DNS name or IP address +# @param dbport +# The database port. Default depends on `$db` +# @param dbtype +# The database type. Default depends on `$db` +# @param dbdriver +# The database driver class. Default depends on `$db` +# @param dbschema +# The database schema, if applicable. Defaults to 'public' with PostgreSQL +# @param dburl +# Set this if you wish to use a custom database URL +# @param connection_settings +# Configures JDBC connection settings +# @param oracle_use_sid +# Affects the database URL format for Oracle depending on whether you connect via a SID or a service name +# @param mysql_connector_manage +# If true, the module will download and install the MySQL connector for JDBC +# @param mysql_connector_version +# Version of the connector to install +# @param mysql_connector_product +# Determines the filename for the download +# @param mysql_connector_install +# Directory in which the connector will be installed +# @param mysql_connector_format +# Format of the downloaded package +# @param mysql_connector_url +# Source for the connector +# @param pool_min_size +# Configures pool-min-size in dbconfig.xml +# @param pool_max_size +# Configures pool-max-size in dbconfig.xml +# @param pool_max_wait +# Configures pool-max-wait in dbconfig.xml +# @param validation_query +# Configures validation_query in dbconfig.xml +# @param validation_query_timeout +# Configures validation_query_timeout in dbconfig.xml +# @param min_evictable_idle_time +# Configures min-evictable-idle-time-millis in dbconfig.xml +# @param time_between_eviction_runs +# Configures time-between-eviction-runs-millis in dbconfig.xml +# @param pool_max_idle +# Configures pool-max-idle in dbconfig.xml +# @param pool_remove_abandoned +# Configures pool-remove-abandoned in dbconfig.xml +# @param pool_remove_abandoned_timeout +# Configures pool-remove-abandoned-timeout in dbconfig.xml +# @param pool_test_while_idle +# Configures pool-test-while-idle in dbconfig.xml +# @param pool_test_on_borrow +# Configures pool-test-on-borrow in dbconfig.xml +# @param java_package +# If defined, the module will install this package before installing JIRA. +# @param javahome +# The location of an installed JVM. Must be set even if you specify java_package +# @param jvm_type +# The type of JVM to use. Affects some defaults for the arguments below +# @param jvm_xms +# Java -Xms parameter +# @param jvm_xmx +# Java -Xmx parameter +# @param java_opts +# Configures JVM_SUPPORT_RECOMMENDED_ARGS in setenv.sh. This is the preferred option to override. +# @param jvm_gc_args +# Configures JVM_GC_ARGS in setenv.sh +# @param jvm_code_cache_args +# Configures JVM_CODE_CACHE_ARGS in setenv.sh +# @param jvm_extra_args +# Configures JVM_EXTRA_ARGS in setenv.sh +# @param jvm_nofiles_limit +# Set the limit for open files +# @param catalina_opts +# Does nothing :-) +# @param download_url +# Base URL for downloading Atlassian software +# @param checksum +# Optional checksum to verify the downloaded package +# @param disable_notifications +# Configures JIRA to disable e-mail handlers +# @param proxy_server +# Configures the proxy server to use for downloads +# @param proxy_type +# Configures the proxy type +# @param service_manage +# Whether to manage the jira service +# @param service_ensure +# Service state to ensure +# @param service_enable +# Whether to enable the service on boot +# @param service_notify +# Service notify parameter +# @param service_subscribe +# Service subscribe parameter +# @param stop_jira +# The command used to stop jira prior to upgrades. You can override this if you use an external too l to manage the jira service. Must return either 0 or 5 for success +# @param script_check_java_manage +# undocumented +# @param script_check_java_template +# undocumented +# @param tomcat_address +# Tomcat bind address +# @param tomcat_port +# Tomcat bind port +# @param tomcat_shutdown_port +# Tomcat shutdown command port +# @param tomcat_max_http_header_size +# Tomcat connector setting +# @param tomcat_min_spare_threads +# Tomcat connector setting +# @param tomcat_connection_timeout +# Tomcat connector setting +# @param tomcat_enable_lookups +# Tomcat connector setting +# @param tomcat_native_ssl +# Enables a native SSL connector +# @param tomcat_https_port +# Tomcat port for the native SSL connector +# @param tomcat_redirect_https_port +# Specify which port to redirect internally when using port redirection from 80 to 8080 and +# from 443 to 8443 or with proxy server in front, defaults to $tomcat_https_port. To be used +# with tomcat_native_ssl. +# @param tomcat_protocol +# Tomcat connector setting +# @param tomcat_protocol_ssl +# Tomcat connector setting +# @param tomcat_use_body_encoding_for_uri +# Tomcat connector setting +# @param tomcat_disable_upload_timeout +# Tomcat connector setting +# @param tomcat_key_alias +# Key alias in the keystore for the SSL connector +# @param tomcat_keystore_file +# Path to a Java keystore for the SSL connector +# @param tomcat_keystore_pass +# Keystore passphrase +# @param tomcat_keystore_type +# Keystore type +# @param tomcat_accesslog_format +# Format string for Tomcat access log +# @param tomcat_accesslog_enable_xforwarded_for +# Configures tomcat to respect X-Forwarded-For and X-Forwarded-By headers +# If a proxy operates before JIRA, the access logs will only contain the IP addresses of the proxy +# instead of the address of the user. With `X-Forwarded-For` the proxy can forward the users IP +# address to the JIRA application server so that it can be logged correctly. +# @param tomcat_max_threads +# Tomcat connector setting +# @param tomcat_accept_count +# Tomcat connector setting +# @param proxy +# Hash of additional settings to configure on the connectors. +# The confusing naming is retained for backwards compatibility +# @param ajp +# Properties for an AJP connector +# @param tomcat_default_connector +# If set to false, the default connector will be omitted +# @param tomcat_additional_connectors +# Well-formed, complex Hash where each key represents a port number and the key's +# value is a hash whose key/value pairs represent the attributes and their values +# that define the connector's behaviour. Default is `{}`. # -# See README.md for more details -# -# === Authors -# -# Bryce Johnson -# Merritt Krakowitzer -# -# === Copyright -# -# Copyright (c) 2012 Bryce Johnson -# -# Published under the Apache License, Version 2.0 +# Use this parameter to specify arbitrary, additional connectors with arbitrary +# attributes. There are no defaults here, so you must take care to specify all +# attributes a connector requires to work in Jira. See below for examples. # +# This is useful if you need to access your Jira instance directly through an +# additional HTTP port, e.g. one that is not configured for reverse proxy use. +# Atlassian describes use cases for this in +# https://confluence.atlassian.com/kb/how-to-create-an-unproxied-application-link-719095740.html +# and +# https://confluence.atlassian.com/kb/how-to-bypass-a-reverse-proxy-or-ssl-in-application-links-719095724.html +# @param contextpath +# Tomcat context path for the web service +# @param resources +# undocumented +# @param enable_sso +# Enable single sign-on via Crowd +# @param application_name +# Crowd application name +# @param application_password +# Crowd application password +# @param application_login_url +# Crowd application login URL +# @param crowd_server_url +# Crowd server URL +# @param crowd_base_url +# Crowd base URL +# @param session_isauthenticated +# undocumented SSO parameter +# @param session_tokenkey +# undocumented SSO parameter +# @param session_validationinterval +# undocumented SSO parameter +# @param session_lastvalidation +# undocumented SSO parameter +# @param jvm_permgen +# Deprecated. Exists to notify users that they're trying to configure a parameter that has no effect +# @param poolsize +# Deprecated alias for `$pool_max_size`. +# @param enable_connection_pooling +# Deprecated. Has no effect. +# @summary Downloads and installs Atlassian JIRA class jira ( # Jira Settings diff --git a/manifests/install.pp b/manifests/install.pp index cd0cbe64..2e57159c 100644 --- a/manifests/install.pp +++ b/manifests/install.pp @@ -13,6 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. # ----------------------------------------------------------------------------- + +# @api private class jira::install { include 'archive' diff --git a/manifests/mysql_connector.pp b/manifests/mysql_connector.pp index f4fac776..489f6601 100644 --- a/manifests/mysql_connector.pp +++ b/manifests/mysql_connector.pp @@ -1,4 +1,4 @@ -# Class to install the MySQL Java connector +# @api private class jira::mysql_connector ( $version = $jira::mysql_connector_version, $product = $jira::mysql_connector_product, diff --git a/manifests/service.pp b/manifests/service.pp index 4890efc6..70ae9a57 100644 --- a/manifests/service.pp +++ b/manifests/service.pp @@ -13,6 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. #----------------------------------------------------------------------------- + +# @api private class jira::service { assert_private() diff --git a/manifests/sso.pp b/manifests/sso.pp index 414cecd7..8fb92f15 100644 --- a/manifests/sso.pp +++ b/manifests/sso.pp @@ -1,7 +1,4 @@ -# == Class: confluence::sso -# -# Install confluence SSO via crowd, See README.md for more. -# +# @api private class jira::sso ( $application_name = $jira::application_name, $application_password = $jira::application_password, @@ -13,6 +10,7 @@ $session_validationinterval = $jira::session_validationinterval, $session_lastvalidation = $jira::session_lastvalidation, ) { + assert_private() file { "${jira::webappdir}/atlassian-jira/WEB-INF/classes/crowd.properties": ensure => file, content => epp('jira/crowd.properties.epp'), diff --git a/types/tomcat_attributes.pp b/types/tomcat_attributes.pp index 2d536472..ef0d1ba7 100644 --- a/types/tomcat_attributes.pp +++ b/types/tomcat_attributes.pp @@ -1 +1,2 @@ +# @summary A hash of string keys to arbitrary values that will be rendered as XML attributes type Jira::Tomcat_attributes = Hash[String[1], Scalar] diff --git a/types/tomcat_connectors.pp b/types/tomcat_connectors.pp index 5b93a663..3587dbd9 100644 --- a/types/tomcat_connectors.pp +++ b/types/tomcat_connectors.pp @@ -1 +1,2 @@ +# @summary A set of attribute hashes keyed by connector port number type Jira::Tomcat_connectors = Hash[Stdlib::Port::Unprivileged, Jira::Tomcat_attributes]