Class: Jekyll::Gitlab::Letsencrypt::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/jekyll/gitlab/letsencrypt/configuration.rb

Constant Summary collapse

DEFAULT_FILENAME =
'letsencrypt_challenge.html'
DEFAULT_ENDPOINT =
'https://acme-v01.api.letsencrypt.org/'
DEFAULT_BRANCH =
'master'
DEFAULT_LAYOUT =
'null'
DEFAULT_INITIAL_DELAY =
120
DEFAULT_DELAY_TIME =
15
REQUIRED_KEYS =
%w{gitlab_repo personal_access_token email domain}

Class Method Summary collapse

Class Method Details

.base_pathObject



29
30
31
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 29

def base_path
  jekyll_config['base_path'] || ''
end

.branchObject



53
54
55
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 53

def branch
  jekyll_config['branch'] || DEFAULT_BRANCH
end

.delay_timeObject



65
66
67
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 65

def delay_time
  jekyll_config['delay_time'] || DEFAULT_DELAY_TIME
end

.domainObject



49
50
51
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 49

def domain
  jekyll_config['domain']
end

.emailObject



45
46
47
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 45

def email
  jekyll_config['email']
end

.endpointObject



21
22
23
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 21

def endpoint
  jekyll_config['endpoint'] || DEFAULT_ENDPOINT
end

.filenameObject



57
58
59
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 57

def filename
  jekyll_config['filename'] || DEFAULT_FILENAME
end

.gitlab_repoObject



25
26
27
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 25

def gitlab_repo
  jekyll_config['gitlab_repo']
end

.initial_delayObject



61
62
63
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 61

def initial_delay
  jekyll_config['initial_delay'] || DEFAULT_INITIAL_DELAY
end

.jekyll_configObject



73
74
75
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 73

def jekyll_config
  @jekyll_config ||= (Jekyll.configuration({})['gitlab-letsencrypt'] || {})
end

.layoutObject



37
38
39
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 37

def layout
  jekyll_config['layout'] || DEFAULT_LAYOUT
end

.personal_access_tokenObject



41
42
43
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 41

def personal_access_token
  jekyll_config['personal_access_token']
end

.pretty_url?Boolean

Returns:

  • (Boolean)


33
34
35
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 33

def pretty_url?
  !!jekyll_config['pretty_url']
end

.reset!Object



69
70
71
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 69

def reset!
  @jekyll_config = nil
end

.valid?Boolean

Returns:

  • (Boolean)


17
18
19
# File 'lib/jekyll/gitlab/letsencrypt/configuration.rb', line 17

def valid?
  REQUIRED_KEYS.all? { |key| jekyll_config.has_key? key }
end