salt.states.artifactory

This state downloads artifacts from artifactory.

salt.states.artifactory.downloaded(name, artifact, target_dir='/tmp', target_file=None)

Ensures that the artifact from artifactory exists at given location. If it doesn't exist, then it will be downloaded. It it already exists then the checksum of existing file is checked against checksum in artifactory. If it is different then the step will fail.

artifact:
Details of the artifact to be downloaded from artifactory.
  • artifactory_url: URL of the artifactory instance
  • repository: Repository in artifactory
  • artifact_id: Artifact ID
  • group_id: Group ID
  • packaging: Packaging
  • version: Version
target_dir:
Directory where the artifact should be downloaded. By default it is downloaded to /tmp directory.
target_file:
Target file to download artifact to. By default file name is resolved by artifactory.

Example:: Download artifact to a specific file:

jboss_module_downloaded:
  artifactory.downloaded:
   - artifact:
        artifactory_url: http://artifactory.intranet.company.com/artifactory
        repository: 'libs-release-local'
        artifact_id: 'module'
        group_id: 'com.company.module'
        packaging: 'jar'
        version: '1.0'
   - target_file: /opt/jboss7/modules/com/company/lib/module.jar

Download artifact to the folder (automatically resolves file name):

jboss_module_downloaded:
  artifactory.downloaded:
   - artifact:
        artifactory_url: http://artifactory.intranet.company.com/artifactory
        repository: 'libs-release-local'
        artifact_id: 'module'
        group_id: 'com.company.module'
        packaging: 'jar'
        version: '1.0'
   - target_dir: /opt/jboss7/modules/com/company/lib