Skip to main content

Lightweight Python client to the Artifactory API.

Project description

Python client for the Artifactory API

Usage

Key Points

  • Configuration is pre-loaded from party_config.py, but can be overridden at runtime

  • A new class must first be instantiated

  • Any properties returned from using a “find” or “get” method are assigned to the class instance

  • Properties are NOT appended. To add multiple properties to a class, get them all in one call.

Some example code:

import party

artifact = party.Party()

artifact.artifactory_url = "http://myserver.com/api"  # <= Runtime config change

Additionally, passing a config parameter to Party() will work

PARTY_CONFIG = {
    'artifactory_url': 'https://myserver.com/api',
    'username': 'api',
    'password': 'password',
}

artifact = party.Party(config=PARTY_CONFIG)

Find Artifact by Name

myFile = "my-file.rpm"
result = artifact.find(myFile)

Find Artifact By Properties

file_props = {
    "build.number": 999,
    "rpm.version": "1.0.0.999"
}
result = artifact.find_by_properties(file_props)

Find Artifact by Pattern

result = artifact.find_by_pattern("erlang*R15B*.rpm")

Get Specific Artifact Properties

specific_properties = [ "build.number", "rpm.version" ]
result = artifact.get_properties(artifact, specific_properties)

Set Properties on an Artifact

new_properties = {
    "myKey": "myValue"
}
result = artifact.set_properties(artifact, new_properties)

CONFIGURING PARTY

Party class instances load in the values from party_config.py. However, those values can be overridden directly in the file, or at runtime using:

artifact = party.Party()
artifact.CONFIG_KEY = "new value"

The following is a list of config keys (CONFIG_KEY above) and descriptions of their purposes:

artifactory_url - Base URL to your Artifactory instance.
    search_prop - Artifactory API endpoint used for the property search.
    search_name - Artifactory API endpoint to access quick search.
   search_repos - Artifactory API endpoint to search for repositories.
       username - Username credential to use to connect to the Artifactory instance.
       password - Base64 encoded password credential used to connect to the Artifactory instance.
        headers - JSON (Python dict) of headers to send in the Artifactory queries.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

party-1.7.0.tar.gz (8.0 kB view details)

Uploaded Source

File details

Details for the file party-1.7.0.tar.gz.

File metadata

  • Download URL: party-1.7.0.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for party-1.7.0.tar.gz
Algorithm Hash digest
SHA256 ab1410e18a5ffb3ec6833e99265c0b099b3f56c57e921bb36ea7ef8551c6ce96
MD5 3feecf0fce47c62a2e54ab151464cbaf
BLAKE2b-256 870095905ea4a6f5694234bd2c40c8c0505c931de2d1446ee49a009fe2d42f10

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page