{"id":17857744,"url":"https://github.com/voxpupuli/puppet-confluence","last_synced_at":"2025-12-11T21:26:13.936Z","repository":{"id":14132642,"uuid":"16838049","full_name":"voxpupuli/puppet-confluence","owner":"voxpupuli","description":"A puppet module to install confluence","archived":false,"fork":false,"pushed_at":"2025-03-19T19:08:15.000Z","size":460,"stargazers_count":21,"open_issues_count":19,"forks_count":72,"subscribers_count":47,"default_branch":"master","last_synced_at":"2025-04-02T19:45:37.081Z","etag":null,"topics":["centos-puppet-module","debian-puppet-module","hacktoberfest","linux-puppet-module","puppet","redhat-puppet-module","ubuntu-puppet-module"],"latest_commit_sha":null,"homepage":"https://forge.puppet.com/puppet/confluence","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/voxpupuli.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"open_collective":"vox-pupuli","github":"voxpupuli"}},"created_at":"2014-02-14T13:33:22.000Z","updated_at":"2025-03-19T13:49:36.000Z","dependencies_parsed_at":"2024-09-16T23:13:23.805Z","dependency_job_id":"70736c35-7b16-44bf-87d8-b7e7c0ab33fa","html_url":"https://github.com/voxpupuli/puppet-confluence","commit_stats":{"total_commits":277,"total_committers":60,"mean_commits":4.616666666666666,"dds":0.628158844765343,"last_synced_commit":"8b65ce6e60a1fcd75087d6068729432c7db84bc3"},"previous_names":["mkrakowitzer/puppet-confluence"],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voxpupuli%2Fpuppet-confluence","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voxpupuli%2Fpuppet-confluence/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voxpupuli%2Fpuppet-confluence/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voxpupuli%2Fpuppet-confluence/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/voxpupuli","download_url":"https://codeload.github.com/voxpupuli/puppet-confluence/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247198904,"owners_count":20900171,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["centos-puppet-module","debian-puppet-module","hacktoberfest","linux-puppet-module","puppet","redhat-puppet-module","ubuntu-puppet-module"],"created_at":"2024-10-28T04:03:47.790Z","updated_at":"2025-12-11T21:26:13.882Z","avatar_url":"https://github.com/voxpupuli.png","language":"Ruby","funding_links":["https://opencollective.com/vox-pupuli","https://github.com/sponsors/voxpupuli"],"categories":[],"sub_categories":[],"readme":"# puppet-confluence\n\n[![Build Status](https://travis-ci.org/voxpupuli/puppet-confluence.png?branch=master)](https://travis-ci.org/voxpupuli/puppet-confluence)\n[![Code Coverage](https://coveralls.io/repos/github/voxpupuli/puppet-confluence/badge.svg?branch=master)](https://coveralls.io/github/voxpupuli/puppet-confluence)\n[![Puppet Forge](https://img.shields.io/puppetforge/v/puppet/confluence.svg)](https://forge.puppetlabs.com/puppet/confluence)\n[![Puppet Forge - downloads](https://img.shields.io/puppetforge/dt/puppet/confluence.svg)](https://forge.puppetlabs.com/puppet/confluence)\n[![Puppet Forge - endorsement](https://img.shields.io/puppetforge/e/puppet/confluence.svg)](https://forge.puppetlabs.com/puppet/confluence)\n[![Puppet Forge - scores](https://img.shields.io/puppetforge/f/puppet/confluence.svg)](https://forge.puppetlabs.com/puppet/confluence)\n\n#### Table of Contents\n\n1. [Overview](#overview)\n2. [Module Description - What the module does and why it is useful](#module-description)\n3. [Setup - The basics of getting started with Confluence](#setup)\n    * [Confluence Prerequisites](#confluence-prerequisites)\n    * [What Confluence affects](#what-confluence-affects)\n    * [Beginning with Confluence](#beginning-with-confluence)\n4. [Usage - Configuration options and additional functionality](#usage)\n5. [Reference - An under-the-hood peek at what the module is doing and how](#reference)\n5. [Limitations - OS compatibility, etc.](#limitations)\n6. [Development - Guide for contributing to the module](#development)\n\n## Overview\n\nThis is a puppet module to install and handle upgrades of Atlassian Confluence.\nConfluence is team collaboration software.\n\n## Module Description\n\nThis module installs/upgrades Atlassian Confluence. The Confluence module also\nmanages the Confluence configuration files with Puppet.\n\n## Setup\n\n### Confluence Prerequisites\n\n* Confluence require a Java Developers Kit (JDK) or Java Run-time Environment\n  (JRE) platform to be installed on your server's operating system. Oracle JDK\n  / JRE (formerly Sun JDK / JRE) versions 1.7 and 1.8 are currently supported by\n  Atlassian.\n\n:warning: There's a known issue with Java 1.8.0_25 and 1.8.0_31, and another\nknown issue with 1.7.0_25 and 1.7.0_45. Atlassian don't recommend running\nConfluence on these versions.\n\n* Confluence requires a relational database to store its configuration data.\n  Unfortunatly it is not possible to do the initial configuration\n  (Database setup) of confluence with puppet (See issue #3 - No database support\n  ). The configuration needs to be done via the web GUI.\n\n### What Confluence affects\n\nIf installing to an existing Confluence instance, it is your responsibility to\nbackup your database. We also recommend that you backup your Confluence home\ndirectory and that you align your current Confluence version with the version\nyou intend to use with puppet Confluence module.\n\nYou must have your database setup with the account user that Confluence will\nuse. This can be done using the puppetlabs-postgresql and puppetlabs-mysql\nmodules.\n\nWhen using this module to upgrade Confluence, please make sure you have a\ndatabase/Confluence home backup.\n\nThe following resources are potentially effected by this module:\n\n* confluence user\n* confluence init script\n* setenv.sh\n* confluence-init.properties\n* server.xml\n\n### Beginning with Confluence\n\nThis puppet module will automatically download the Confluence tar.gz from\nAtlassian and extracts it into /opt/confluence/atlassian-confluence-$version.\nThe default Confluence home is /home/confluence.\n\n```puppet\n  class { 'confluence':\n    javahome =\u003e '/opt/java',\n  }\n```\n\n## Usage\n\nThis module also allows for direct customization of the JVM, following\n[atlassians recommendations](https://confluence.atlassian.com/display/JIRA/Setting+Properties+and+Options+on+Startup)\n\nThis is especially useful for setting properties such as http/https proxy settings.\nSupport has also been added for reverse proxying confluence via apache or nginx.\n\n### A more complex example\n\n```puppet\n  class { 'confluence':\n    version        =\u003e '5.7.1',\n    installdir     =\u003e '/opt/atlassian/atlassian-confluence',\n    homedir        =\u003e '/opt/atlassian/application-data/confluence-home',\n    javahome       =\u003e '/opt/java',\n    java_opts      =\u003e '-Dhttp.proxyHost=proxy.example.com -Dhttp.proxyPort=3128 -Dhttps.proxyHost=secure-proxy.example.com -Dhttps.proxyPort=3128'\n    tomcat_proxy   =\u003e {\n      scheme       =\u003e 'https',\n      proxyName    =\u003e 'confluence.example.co.za',\n      proxyPort    =\u003e '443',\n    },\n  }\n```\n\n#### Hiera example\n\nThis example is used in production for 2000+ users in an traditional enterprise\nenvironment. Your mileage may vary.\n\n```yaml\nconfluence::user:           'confluence'\nconfluence::group:          'confluence'\nconfluence::shell:          '/bin/bash'\nconfluence::dbserver:       'dbvip.example.co.za'\nconfluence::version:        '5.7.1'\nconfluence::installdir:     '/opt/atlassian/atlassian-confluence'\nconfluence::homedir:        '/opt/atlassian/application-data/confluence-home'\nconfluence::javahome:       '/opt/java'\nconfluence::java_opts:      '-Dhttp.proxyHost=proxy.example.co.za -Dhttp.proxyPort=8080 -Dhttps.proxyHost=proxy.example.co.za -Dhttps.proxyPort=8080 -Dhttp.nonProxyHosts=localhost\\|127.0.0.1\\|172.*.*.*\\|10.*.*.*\\|*.example.co.za -XX:+UseLargePages'\nconfluence::manage_service: false\nconfluence::tomcat_port:    '8090'\nconfluence::jvm_xms:        '4G'\nconfluence::jvm_xmx:        '8G'\nconfluence::jvm_permgen:    '512m'\nconfluence::download_url:    'http://webserver.example.co.za/pub/software/development-tools/atlassian'\nconfluence::catalina_opts:\n  - -Dconfluence.cluster.node.name=%{hostname}\n  - -Dconfluence.upgrade.recovery.file.enabled=false\nconfluence::tomcat_proxy:\n  scheme:    'https'\n  proxyName: 'webvip.example.co.za'\n  proxyPort: '443'\n```\n\n## Reference\n\n### Classes\n\n#### Public Classes\n\n* `confluence`: Main class, manages the installation and configuration of Confluence.\n\n#### Private Classes\n\n* `confluence::install`: Installs Confluence binaries\n* `confluence::config`: Modifies Confluence/tomcat configuration files\n* `confluence::service`: Manage the Confluence service\n* `confluence::facts`: Class to get the running version of confluence\n* `confluence::params`: Default params\n\n### Parameters\n\n#### Confluence parameters\n\n##### `javahome`\n\nSpecify the java home directory. No assumptions are made re the location of java\nand therefor this option is required. Default: undef\n\n##### `version`\n\nThe version of confluence to install. Default: '5.5.6'\n\n##### `format`\n\nThe format of the file confluence will be installed from. Default: 'tar.gz'\n\n##### `installdir`\n\nThe installation directory of the confluence binaries. Default: '/opt/confluence'\n\n##### `homedir`\n\nThe home directory of confluence. Configuration files are stored here. Default: '/home/confluence'\n\n##### `user`\n\nThe user that confluence should run as, as well as the ownership of confluence\nrelated files. Default: 'confluence'\n\n##### `group`\n\nThe group that confluence files should be owned by. Default: 'confluence'\n\n##### `uid`\n\nSpecify a uid of the confluence user. Default: undef\n\n##### `gid`\n\nSpecify a gid of the confluence user. Default: undef\n\n##### `shell`\n\nSpecify the shell of the confluence user. Default: undef\n\n##### `manage_user`\n\nWhether or not to manage the confluence user. Default: true\n\n##### `context_path`\n\nSpecify context path, defaults to ''. If modified, Once Confluence has started,\ngo to the administration area and click General Configuration.\nAppend the new context path to your base URL.\n\n#### JVM Java parameters\n\n##### `jvm_xms`\n\nThe initial memory allocation pool for a Java Virtual Machine. Default: '256m'\n\n##### `jvm_xmx`\n\nMaximum memory allocation pool for a Java Virtual Machine. Default: '1024m'\n\n##### `jvm_permgen`\n\nIncrease max permgen size for a Java Virtual Machine. Default: '256m'\n\n##### `java_opts`\n\nAdditional java options can be specified here. Default: ''\n\n##### `catalina_opts`\n\nAdditional catalina options can be specified either as a simple string or array of strings. Default: ''\n\n#### Tomcat parameters\n\n#### `tomcat_proxy`\n\nReverse https proxy configuration. See customization section for more detail.\nDefault: {}\n\n##### `tomcat_port`\n\nPort to listen on, defaults to '8090'\n\n##### `tomcat_max_threads`\n\nDefaults to '150'\n\n##### `tomcat_accept_count`\n\nDefaults to  '100'\n\n##### `tomcat_extras`\n\nAny additional tomcat params for server.xml. Takes same format as\n`tomcat_proxy`. Default: {}\n\n#### Crowd single sign on parameters\n\n#### `enable_sso`\n\nEnable crowd single sign on configuration as described in \u003chttps://confluence.atlassian.com/display/CROWD/Integrating+Crowd+with+Atlassian+Confluence#IntegratingCrowdwithAtlassianConfluence-2.2EnableSSOintegrationwithCrowd(Optional)\u003e\n\n#### `application_name`\n\nSet crowd application name\n\n#### `application_password`\n\nSet crowd application password\n\n#### `application_login_url`\n\nSet crowd application login url, where to login into crowd (e.g. \u003chttps://crowd.example.com/console/\u003e)\n\n#### `crowd_server_url`\n\nSet crowd application services url, e.g. \u003chttps://crowd.example.com/services/\u003e\n\n#### `crowd_base_url`\n\nSet crowd base url, e.g. \u003chttps://crowd.example.com/\u003e\n\n#### `session_isauthenticated`\n\nSome more crowd.properties for SSO, see atlassian documentation for details\n\n#### `session_tokenkey`\n\nSome more crowd.properties for SSO, see atlassian documentation for details\n\n#### `session_validationinterval`\n\nSome more crowd.properties for SSO, see atlassian documentation for details\n\n#### `session_lastvalidation`\n\nSome more crowd.properties for SSO, see atlassian documentation for details\n\n#### Miscellaneous parameters\n\n##### `manage_server_xml`\n\nShould we use augeas to manage server.xml or a template file. Defaults to\n'augeas'. Operating systems that do not have a support version of Augeas such\nas Ubuntu 12.04 can use 'template'.\n\n##### `download_url`\n\nThe URL used to download the JIRA installation file.\nDefaults to '\u003chttps://www.atlassian.com/software/confluence/downloads/binary\u003e'\n\n##### `checksum`\n\nThe md5 checksum of the archive file. Only supported with\n`deploy_module =\u003e archive`. Defaults to 'undef'.\n\n#### `proxy_server`\n\nSpecify a proxy server, with port number if needed. ie: https://example.com:8080.\nOnly supported with `deploy_module =\u003e archive` (the default).  Defaults to 'undef'.\n\n#### `proxy_type`\n\nProxy server type (none|http|https|ftp)\nOnly supported with `deploy_module =\u003e archive` (the default).  Defaults to 'undef'.\n\n##### `manage_service`\n\nShould puppet manage this service? Default: true\n\n##### `deploy_module`\n\nModule to use for downloading and extracting archive file. Supports\npuppet-archive and puppet-staging. Defaults to 'archive'. Archive supports md5\nhash checking and Staging supports S3 buckets.\n\n##### `stop_confluence`\n\nIf the Confluence service is managed outside of puppet the stop_confluence\nparamater can be used to shut down confluence for upgrades. Defaults to\n'service confluence stop \u0026\u0026 sleep 15'\n\n##### `facts_ensure`\n\nEnable external facts for confluence version. Defaults to present.\n\n##### `mysql_connector_version`\n\nSpecify the version of mysql_connector_version you want to use. Defaults to 5.1.47.\n\n##### `mysql_connector_install`\n\nSpecify where you want to install mysql connector . Defaults to /opt/MySQL-connector\n\n##### `mysql_connector`\n\nShould the module deploy mysql_connector for mysql databases ? . Default to false\n\n\n## Limitations\n\n* Puppet 5.5.8 or newer\n\nThe puppetlabs repositories can be found at:\n\u003chttp://yum.puppetlabs.com/\u003e and \u003chttp://apt.puppetlabs.com/\u003e\n\n* RedHat / CentOS 6/7\n* Ubuntu 16.04 / 18.04\n* Debian 9\n\nOperating Systems without an Augueas version \u003e= 1 such as Ubuntu 12.04 must use\nthe paramater:\n\n```puppet\nmanage_server_xml =\u003e 'template',\n```\n\nWe plan to support other Linux distributions and possibly Windows in the near future.\n\n## Development\n\nSee CONTRIBUTING.md\n\n## Contributors\n\nSee CONTRIBUTORS\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvoxpupuli%2Fpuppet-confluence","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvoxpupuli%2Fpuppet-confluence","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvoxpupuli%2Fpuppet-confluence/lists"}