Class: PuppetfileResolver::Puppetfile::Parser::R10KEval::Module::Forge

Inherits:
Object
  • Object
show all
Defined in:
lib/puppetfile-resolver/puppetfile/parser/r10k_eval/module/forge.rb

Constant Summary collapse

REGEX_NUMERIC =

Version string matching regexes From Semantic Puppet gem

'(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)'
REGEX_PRE =

Major . Minor . Patch

'(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?'
REGEX_BUILD =

Prerelease

'(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?'
REGEX_FULL =

Build

REGEX_NUMERIC + REGEX_PRE + REGEX_BUILD.freeze
REGEX_FULL_RX =
/\A#{REGEX_FULL}\Z/.freeze

Class Method Summary collapse

Class Method Details

.implements?(name, args) ⇒ Boolean

Returns:

  • (Boolean)


11
12
13
# File 'lib/puppetfile-resolver/puppetfile/parser/r10k_eval/module/forge.rb', line 11

def self.implements?(name, args)
  !name.match(/\A(\w+)[-\/](\w+)\Z/).nil? && valid_version?(args)
end

.to_document_module(title, args) ⇒ Object



15
16
17
18
19
# File 'lib/puppetfile-resolver/puppetfile/parser/r10k_eval/module/forge.rb', line 15

def self.to_document_module(title, args)
  mod = ::PuppetfileResolver::Puppetfile::ForgeModule.new(title)
  mod.version = munge_version_string(args) if valid_version?(args)
  mod
end