class KPM::BaseArtifact
def build_coordinates(group_id, artifact_id, packaging, classifier, version=nil)
def build_coordinates(group_id, artifact_id, packaging, classifier, version=nil) if classifier.nil? if version.nil? "#{group_id}:#{artifact_id}:#{packaging}" else "#{group_id}:#{artifact_id}:#{packaging}:#{version}" end else if version.nil? "#{group_id}:#{artifact_id}:#{packaging}:#{classifier}" else "#{group_id}:#{artifact_id}:#{packaging}:#{classifier}:#{version}" end end end
def nexus_defaults
def nexus_defaults { url: 'https://repository.sonatype.org', repository: 'central-proxy' } end
def nexus_remote(overrides={}, ssl_verify=true)
def nexus_remote(overrides={}, ssl_verify=true) nexus_remote ||= NexusCli::RemoteFactory.create(nexus_defaults.merge(overrides || {}), ssl_verify) end
def pull(group_id, artifact_id, packaging='jar', version='LATEST', destination=nil, overrides={}, ssl_verify=true)
def pull(group_id, artifact_id, packaging='jar', version='LATEST', destination=nil, overrides={}, ssl_verify=true) coordinates = build_coordinates(group_id, artifact_id, packaging, nil, version) nexus_remote(overrides, ssl_verify).pull_artifact(coordinates, destination) end