Puppet Class: sftpgo

Inherits:
sftpgo::params
Defined in:
manifests/init.pp

Summary

A Puppet module that installs and configures sftpgo.

Overview

examples:

SFTPGO_FTPD__PASSIVE_PORT_RANGE__START=50000
SFTPGO_FTPD__PASSIVE_PORT_RANGE__END=50100
SFTPGO_WEBDAVD__BINDINGS__0__PORT=10080
SFTPGO_GRACE_TIME=10

Examples:

include sftpgo

Parameters:

  • config_hash (Optional[Hash]) (defaults to: undef)
  • docker_images (Hash) (defaults to: { 'sftpgo' => { image => 'drakkan/sftpgo', image_tag => 'latest' } })
  • memory_limit (String[1]) (defaults to: '256m')
  • force_passive_ip (String) (defaults to: $facts['networking']['ip'])
  • http_port (String[1]) (defaults to: '8080')
  • sftp_port (String[1]) (defaults to: '2022')
  • ftp_port (String[1]) (defaults to: '2121')
  • passive_port_range (String[1]) (defaults to: '50000-50100')
  • ports (Array[String]) (defaults to: [ "${http_port}:${http_port}", "${sftp_port}:${sftp_port}", "${ftp_port}:${ftp_port}", "${passive_port_range}:${passive_port_range}" ])
  • volumes (Array[String]) (defaults to: [ 'srv_sftpgo:/srv/sftpgo', 'var_lib_sftpgo:/var/lib/sftpgo' ])
  • environment (Array[String]) (defaults to: [ "SFTPGO_FTPD__BINDINGS__0__FORCE_PASSIVE_IP=${$force_passive_ip}", "SFTPGO_FTPD__BINDINGS__0__PORT=${ftp_port}" ])


23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'manifests/init.pp', line 23

class sftpgo (
  Optional[Hash] $config_hash = undef,
  Hash $docker_images = {
    'sftpgo' => {
      image     => 'drakkan/sftpgo',
      image_tag => 'latest'
    }
  },
  String[1] $memory_limit = '256m',
  String $force_passive_ip = $facts['networking']['ip'],
  String[1] $http_port = '8080',
  String[1] $sftp_port = '2022',
  String[1] $ftp_port = '2121',
  String[1] $passive_port_range = '50000-50100',
  Array[String] $ports = [
    "${http_port}:${http_port}",
    "${sftp_port}:${sftp_port}",
    "${ftp_port}:${ftp_port}",
    "${passive_port_range}:${passive_port_range}"
  ],
  Array[String] $environment = [
    "SFTPGO_FTPD__BINDINGS__0__FORCE_PASSIVE_IP=${$force_passive_ip}",
    "SFTPGO_FTPD__BINDINGS__0__PORT=${ftp_port}"
  ],
  Array[String] $volumes = [
    'srv_sftpgo:/srv/sftpgo',
    'var_lib_sftpgo:/var/lib/sftpgo'
  ]
) inherits sftpgo::params {
  if $config_hash { include sftpgo::config }
  include sftpgo::docker
  include sftpgo::service
}