A Puppet module which downloads artifacts from an Artifactory repository.




1,091 latest version

5.0 quality score

Version information

  • 0.1.0 (latest)
released Mar 21st 2020
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2016.4.x
  • Puppet >= 4.10.0 < 7.0.0
  • SLES

Start using this module


stdtom/artifactory — version 0.1.0 Mar 21st 2020


Table of Contents

  1. Description
  2. Setup - The basics of getting started with artifactory
  3. Usage - Configuration options and additional functionality
  4. Limitations - OS compatibility, etc.
  5. Development - Guide for contributing to the module


Artifactory is a universal artifact repository manager which can store software artifacts which are developed in various languages and technologies.

This module allows to search artifacts in an Artifactory instance via the Artifactory API and to download them to the managed node.


Setup Requirements

Manually install this module with Puppet module tool:

$ puppet module install stdtom-artifactory

The module relies on the Ruby client for Artifactory developed by Chef Software, Inc. Therefore the RubyGem artifactory has to be installed.

To install RubyGem artifactory execute on Puppet Server:

$ /opt/puppetlabs/bin/puppetserver gem install artifactory -v 2.8.2
$ systemctl restart puppetserver

If you are running Puppet in a masterless environment, execute on the managed server:

$ /opt/puppetlabs/puppet/bin/gem install artifactory -v 2.8.2

Beginning with artifactory

To initialize Puppet for using the Artifactory client, declare the artifactory class:

class { artifactory :
  endpoint => '',

If you are running the "default" Artifactory installation using tomcat, don't forget to include the +/artifactoy+ part of the URL in the endpoint parameter.


Artifactory authentication

In case your Artifactory server requires authentication, you can also initialize the [artifactory][] class with basic authentication information. Since this uses HTTP Basic Auth, it is highly recommended that you run Artifactory over SSL.

class { artifactory :
  endpoint => '',
  username => 'myuserid',
  password => 'secretpassword',

You can also use an API key for authentication. Username and password take precedence so leave them off if you are using an API key.

class { artifactory :
  endpoint => '',
  api_key  => 'xxxxxxxxxxxxxxx',

Serach an artifact

artifactory::artifact {'myartifact':
  group_id    => 'org.artifactory',
  artifact_id => 'artifactory-api',
  version     => '',
  repository  => 'oss-releases-local',
  output      => "/tmp/",
  extension   => 'jar',


see (


For an extensive list of supported operating systems, see (metadata.json)


In the Development section, tell other users the ground rules for contributing to your project and how they should submit their work.

Release Notes/Contributors/Etc. Optional

If you aren't using changelog, put your release notes here (though you should consider using changelog). You can also add any additional sections you feel are necessary or important to include here. Please use the ## header.