Forge Home

aem_resources

Puppet module for provisioning Adobe Experience Manager (AEM) resources

52,748 downloads

242 latest version

3.6 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 7.10.2 (latest)
  • 7.10.1
  • 7.10.0
  • 7.9.0
  • 7.8.0
  • 7.7.0
  • 7.6.1
  • 7.5.0
  • 7.4.0
  • 7.3.0
  • 7.2.3
  • 7.2.2
  • 7.2.1
  • 7.2.0
  • 7.1.0
  • 7.0.1
  • 7.0.0
  • 6.0.0
  • 5.6.0
  • 5.5.0
  • 5.3.0
  • 5.2.0
  • 5.1.0
  • 5.0.0
  • 4.1.0
  • 4.0.0
  • 3.10.2
  • 3.10.1
  • 3.10.0
  • 3.9.0
  • 3.8.1
  • 3.8.0
  • 3.7.0
  • 3.6.0
  • 3.5.0
  • 3.4.0
  • 3.3.0
  • 3.2.1
  • 3.2.0
  • 3.1.1
  • 3.1.0
  • 3.0.1
  • 3.0.0
  • 2.4.1
  • 2.4.0
  • 2.3.1
  • 2.3.0
  • 2.2.5
  • 2.2.4
  • 2.2.3
  • 2.2.2
  • 2.2.1
  • 2.2.0
  • 2.1.1
  • 2.1.0
  • 2.0.2
  • 2.0.1
  • 2.0.0
  • 1.3.0
  • 1.2.0
  • 1.1.1
  • 1.1.0
  • 1.0.0
  • 0.9.5
  • 0.9.4
  • 0.9.3
  • 0.9.2
  • 0.9.1
  • 0.9.0
released Jan 17th 2017

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'shinesolutions-aem_resources', '0.9.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add shinesolutions-aem_resources
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install shinesolutions-aem_resources --version 0.9.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

shinesolutions/aem_resources — version 0.9.0 Jan 17th 2017

Build Status

Puppet AEM Resources

A Puppet module for provisioning Adobe Experience Manager (AEM) resources.

Install

puppet module install shinesolutions-aem_resources

Or via a Puppetfile:

mod 'shinesolutions/aem_resources'

If you want to use the master version:

mod 'shinesolutions/aem_resources', :git => 'https://github.com/shinesolutions/puppet-aem-resources'

And because PUP-3386 hasn't been implemented, you have to install ruby_aem prior to using aem_resource Puppet module. nokogiri needs to be installed explicitly to version 1.6.8.1 only if you are using ruby 1.9 or 2.0 .

package { 'nokogiri':
  ensure   => '1.6.8.1',
  provider => 'puppet_gem',
} ->
package { 'ruby_aem':
  ensure   => '1.0.6',
  provider => 'puppet_gem',
}

Configuration

AEM username, password, protocol, host, port, and debug can be set via environment variables or a configuration file.

Environment variables have aem_ prefix, e.g. aem_username, aem_password, aem_protocol, aem_host, aem_port, and aem_debug.

Configuration file should be named aem.yaml and be placed under Puppet config directory. Example config file:

---
:username: 'admin'
:password: 'admin'
:port: 'http'
:host: 'localhost'
:port: 4502
:debug: False

If a configuration property is not set, then it will use the default value set in ruby_aem.

Usage

AEM

aem_aem { 'Wait until login page is ready':
  ensure => login_page_is_ready,
}

Bundle

aem_bundle { 'Stop webdav bundle':
  ensure => stopped,
  name   => 'org.apache.sling.jcr.webdav',
}

aem_bundle { 'Start webdav bundle':
  ensure => started,
  name   => 'org.apache.sling.jcr.webdav',
}

Config property

aem_config_property { 'Create https.enable property':
  ensure   => present,
  name     => 'org.apache.felix.https.enable',
  type     => 'Boolean',
  value    => true,
  run_mode => 'author',
}

Flush agent

aem_flush_agent { 'Create flush agent':
  ensure        => present,
  name          => 'some-flush-agent',
  run_mode      => 'author',
  title         => 'Some Flush Agent Title',
  description   => 'Some flush agent description',
  dest_base_url => 'http://somehost:8080',
  log_level     => 'info',
  retry_delay   => 60000,
  force         => true,
}

aem_flush_agent { 'Delete flush agent':
  ensure   => absent,
  name     => 'some-flush-agent',
  run_mode => 'author',
}

Group

aem_group { 'Create staff group':
  ensure => present,
  name   => 'staff',
  path   => '/home/groups/s',
}

aem_group { 'Create contractor group':
  ensure => present,
  name   => 'contractor',
  path   => '/home/groups/c',
}

aem_group { 'Delete staff group':
  ensure => absent,
  name   => 'staff',
  path   => '/home/groups/s',
}

Node

aem_node { 'Create http OSGI config node':
  ensure => present,
  name   => 'org.apache.felix.http',
  path   => '/apps/system/config.author',
  type   => 'sling:OsgiConfig',
}

aem_node { 'Delete http OSGI config node':
  ensure => absent,
  name   => 'org.apache.felix.http',
  path   => '/apps/system/config.author',
}

Package

aem_package { 'Install AEM6.2 hotfix 12785':
  ensure    => present,
  name      => 'cq-6.2.0-hotfix-12785',
  group     => 'adobe/cq620/hotfix',
  version   => '7.0',
  path      => '/tmp/',
  replicate => false,
  activate  => true,
  force     => true,
}

Path

aem_path { 'Activate /etc/designs/cloudservices/':
  ensure => is_activated,
  name   => '/etc/designs/cloudservices/',
}

Replication agent

aem_replication_agent { 'Create replication agent':
  ensure             => present,
  name               => 'some-replication-agent',
  run_mode           => 'author',
  title              => 'Some Replication Agent Title',
  description        => 'Some replication agent description',
  dest_base_url      => 'http://somehost:8080',
  transport_user     => 'someuser',
  transport_password => 'somepass',
  log_level          => 'info',
  retry_delay        => 60000,
  force              => true,
}

aem_replication_agent { 'Delete replication agent':
  ensure   => absent,
  name     => 'some-replication-agent',
  run_mode => 'author',
}

Repository

aem_repository { 'Block repository writes':
  ensure => writes_blocked,
}

aem_repository { 'Unblock repository writes':
  ensure => writes_unblocked,
}

User

aem_user { 'Create user':
  ensure   => present,
  name     => 'bob',
  path     => '/home/users/b',
  password => 'somepassword'
}

aem_user { 'Change user password':
  ensure       => password_changed,
  name         => 'bob',
  path         => '/home/users/b',
  old_password => 'somepassword',
  new_password => 'somenewpassword'
}

aem_user { 'Delete user':
  ensure => absent,
  name   => 'bob',
  path   => '/home/users/b',
}