Puppet Class: minio::client

Defined in:
manifests/client.pp

Summary

Manages a Minio client (mc) on various Linux/BSD operating systems.

Overview

Examples:

class { 'minio::client':
    manage_client_installation => true,
    package_ensure             => 'present',
    base_url                   => 'https://dl.minio.io/client/mc/release',
    version                    => 'RELEASE.2021-07-27T06-46-19Z',
    checksum                   => '0df81285771e12e16a0c4c2f5e0ebc700e66abb8179013cc740d48b0abad49be',
    checksum_type              => 'sha256',
    installation_directory     => '/usr/local/bin',
    binary_name                => 'minio-client',
    aliases                    => {
      'default' => {
        'ensure'              => 'present',
        'endpoint'            => 'http://localhost:9000',
        'access_key'          => 'admin',
        'secret_key'          => Sensitive('password'), # can also be a string
        'api_signature'       => 'S3v4', # optional
        'path_lookup_support' => 'on',   # optional
      }
    },
    purge_unmanaged_aliases    => true
}

Parameters:

  • manage_client_installation (Boolean) (defaults to: $minio::manage_client_installation)

    Decides if puppet should manage the minio client installation.

  • package_ensure (Enum['present', 'absent']) (defaults to: $minio::client_package_ensure)

    Decides if the ‘mc` client binary will be installed. Default: `present`

  • base_url (Stdlib::HTTPUrl) (defaults to: $minio::client_base_url)

    Download base URL for the minio client. Default: Github. Can be used for local mirrors.

  • version (String) (defaults to: $minio::client_version)

    Client release version to be installed.

  • checksum (String) (defaults to: $minio::client_checksum)

    Checksum for the client binary.

  • checksum_type (String) (defaults to: $minio::client_checksum_type)

    Type of checksum used to verify the client binary being installed. Default: ‘sha256`

  • installation_directory (Stdlib::Absolutepath) (defaults to: $minio::client_installation_directory)

    Target directory to hold the minio client installation. Default: ‘/opt/minioclient`

  • aliases (Hash) (defaults to: $minio::client_aliases)

    List of aliases to add to the minio client configuration. For parameter description see ‘minio_client_alias`.

  • purge_unmanaged_aliases (Boolean) (defaults to: $minio::purge_unmanaged_client_aliases)

    Decides if puppet should purge unmanaged minio client aliases

  • binary_name (String) (defaults to: $minio::client_binary_name)

Author:

  • Daniel S. Reichenbach <daniel@kogitoapp.com>

  • Evgeny Soynov <esoynov@kogito.network>



49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# File 'manifests/client.pp', line 49

class minio::client(
  Boolean $manage_client_installation                   = $minio::manage_client_installation,
  Enum['present', 'absent'] $package_ensure             = $minio::client_package_ensure,
  Stdlib::HTTPUrl $base_url                             = $minio::client_base_url,
  String $version                                       = $minio::client_version,
  String $checksum                                      = $minio::client_checksum,
  String $checksum_type                                 = $minio::client_checksum_type,
  Stdlib::Absolutepath $installation_directory          = $minio::client_installation_directory,
  String $binary_name                                   = $minio::client_binary_name,
  Hash $aliases                                         = $minio::client_aliases,
  Boolean $purge_unmanaged_aliases                      = $minio::purge_unmanaged_client_aliases,
) {
  if ($manage_client_installation) {
    include ::minio::client::install
    include ::minio::client::config

    Class['minio::client::install'] -> Class['minio::client::config']
  }
}