Class: Kitchen::Driver::VmpoolStores::GitlabStore

Inherits:
Object
  • Object
show all
Defined in:
lib/kitchen/driver/vmpool_stores/gitlab_store.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = nil) ⇒ GitlabStore

Returns a new instance of GitlabStore.

Parameters:

  • project_id (Hash)

    a customizable set of options

  • snippet_id (Hash)

    a customizable set of options

  • pool_file (Hash)

    a customizable set of options

Raises:

  • (ArgumentError)


13
14
15
16
17
18
19
20
# File 'lib/kitchen/driver/vmpool_stores/gitlab_store.rb', line 13

def initialize(options = nil)
  options ||= { project_id: nil, snippet_id: nil, pool_file: 'vmpool.yaml'}
  raise ArgumentError.new("You must pass the project_id option") unless options['project_id'].to_i > 0
  raise ArgumentError.new("You must pass the snippet_id option") unless options['snippet_id'].to_i > 0
  @snippet_id = options['snippet_id']  #ie. 630
  @project_id = options['project_id']  #ie. 89
  @pool_file = options['pool_file']
end

Instance Attribute Details

#pool_fileObject (readonly)

Returns the value of attribute pool_file.



8
9
10
# File 'lib/kitchen/driver/vmpool_stores/gitlab_store.rb', line 8

def pool_file
  @pool_file
end

#project_idObject

Returns the value of attribute project_id.



7
8
9
# File 'lib/kitchen/driver/vmpool_stores/gitlab_store.rb', line 7

def project_id
  @project_id
end

#snippet_idObject

Returns the value of attribute snippet_id.



7
8
9
# File 'lib/kitchen/driver/vmpool_stores/gitlab_store.rb', line 7

def snippet_id
  @snippet_id
end

Instance Method Details

#createObject



27
28
29
30
# File 'lib/kitchen/driver/vmpool_stores/gitlab_store.rb', line 27

def create
  create_snippet
  read
end

#pool_contentObject



46
47
48
# File 'lib/kitchen/driver/vmpool_stores/gitlab_store.rb', line 46

def pool_content
  read_snippet
end

#pool_dataObject



37
38
39
# File 'lib/kitchen/driver/vmpool_stores/gitlab_store.rb', line 37

def pool_data
  @pool_data ||= YAML.load(pool_content)
end

#readObject



32
33
34
35
# File 'lib/kitchen/driver/vmpool_stores/gitlab_store.rb', line 32

def read
  puts "Reading snippet"
  pool_content
end

#saveObject



41
42
43
44
# File 'lib/kitchen/driver/vmpool_stores/gitlab_store.rb', line 41

def save
  update_snippet
  read
end

#updateObject



22
23
24
25
# File 'lib/kitchen/driver/vmpool_stores/gitlab_store.rb', line 22

def update
  update_snippet
  read
end