Sha256: eb719164792b80df7bbeb4503817ed55050486bbc86d035a12a5d1522b791986

Contents?: true

Size: 1.87 KB

Versions: 15

Compression:

Stored size: 1.87 KB

Contents

module NexusCli
  class ProRemote < BaseRemote
    
    include ArtifactActions
    include CustomMetadataActions
    include GlobalSettingsActions
    include LoggingActions
    include RepositoryActions
    include SmartProxyActions
    include UserActions

    def get_license_info
      response = nexus.get(nexus_url("service/local/licensing"), :header => DEFAULT_ACCEPT_HEADER)
      case response.status
      when 200
        return response.content
      else
        raise UnexpectedStatusCodeException.new(response.status)
      end
    end

    def install_license(license_file)
      file = File.read(File.expand_path(license_file))
      response = nexus.post(nexus_url("service/local/licensing/upload"), :body => file, :header => {"Content-Type" => "application/octet-stream"})
      case response.status
      when 201
        return true
      when 403
        raise LicenseInstallFailure
      else
        raise UnexpectedStatusCodeException.new(response.status)
      end
    end

    def install_license_bytes(bytes)
      response = nexus.post(nexus_url("service/local/licensing/upload"), :body => bytes, :header => {"Content-Type" => "application/octet-stream"})
      case response.status
      when 201
        return true
      when 403
        raise LicenseInstallFailure
      else
        raise UnexpectedStatusCodeException.new(response.status)
      end
    end

    def transfer_artifact(artifact, from_repository, to_repository)
      do_transfer_artifact(artifact, from_repository, to_repository)
      
      configuration["repository"] = sanitize_for_id(from_repository)
      from_artifact_metadata = get_custom_metadata_hash(artifact)

      configuration["repository"] = sanitize_for_id(to_repository)
      to_artifact_metadata = get_custom_metadata_hash(artifact)

      do_update_custom_metadata(artifact, from_artifact_metadata, to_artifact_metadata)
    end
  end
end

Version data entries

15 entries across 15 versions & 3 rubygems

Version Path
nexus_cli_sb-4.0.4 lib/nexus_cli/remote/pro_remote.rb
nexus_cli_sb-4.0.2 lib/nexus_cli/remote/pro_remote.rb
nexus_cli_nx-4.1.3 lib/nexus_cli/remote/pro_remote.rb
nexus_cli_nx-4.1.2 lib/nexus_cli/remote/pro_remote.rb
nexus_cli-4.1.1 lib/nexus_cli/remote/pro_remote.rb
nexus_cli-4.1.0 lib/nexus_cli/remote/pro_remote.rb
nexus_cli-4.0.3 lib/nexus_cli/remote/pro_remote.rb
nexus_cli-4.0.2 lib/nexus_cli/remote/pro_remote.rb
nexus_cli-4.0.1 lib/nexus_cli/remote/pro_remote.rb
nexus_cli-4.0.0 lib/nexus_cli/remote/pro_remote.rb
nexus_cli-4.0.0.beta1 lib/nexus_cli/remote/pro_remote.rb
nexus_cli-3.0.0 lib/nexus_cli/remote/pro_remote.rb
nexus_cli-2.0.2 lib/nexus_cli/remote/pro_remote.rb
nexus_cli-2.0.1 lib/nexus_cli/remote/pro_remote.rb
nexus_cli-2.0.0 lib/nexus_cli/remote/pro_remote.rb