module ForemanFogProxmox::Semver

Constants

SEMVER_REGEX

Public Class Methods

semver?(version) click to toggle source
# File lib/foreman_fog_proxmox/semver.rb, line 85
def self.semver?(version)
  version.is_a?(String) && version.match(SEMVER_REGEX)
end
to_semver(version) click to toggle source
# File lib/foreman_fog_proxmox/semver.rb, line 89
def self.to_semver(version)
  raise ArgumentError unless semver?(version)

  version_a = version.scan(SEMVER_REGEX)
  raise ArgumentError if version_a.empty?

  semver_a = version_a.first
  raise ArgumentError if semver_a.empty?
  raise ArgumentError unless semver_a.size == 6

  SemverClass.new(semver_a[0], semver_a[1], semver_a[3], semver_a[5])
end