Forge Home

artifactory

A Puppet module which downloads artifacts from an Artifactory repository.

1,885 downloads

1,885 latest version

5.0 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

  • 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

Start using this module

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

Add this module to your Puppetfile:

mod 'stdtom-artifactory', '0.1.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add stdtom-artifactory
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install stdtom-artifactory --version 0.1.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

stdtom/artifactory — version 0.1.0 Mar 21st 2020

artifactory

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

Description

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

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 => 'https://repo.jfrog.org/artifactory',
}

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.

Usage

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 => 'https://repo.jfrog.org/artifactory',
  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 => 'https://repo.jfrog.org/artifactory',
  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',
}

Reference

see (REFERENCE.md)

Limitations

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

Development

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.