Class: Hanamismith::Builders::CircleCI

Inherits:
Rubysmith::Builders::Abstract
  • Object
show all
Defined in:
lib/hanamismith/builders/circle_ci.rb

Overview

Builds project skeleton Circle CI configuration.

Instance Method Summary collapse

Constructor Details

#initialize(generator: SecureRandom) ⇒ CircleCI

Returns a new instance of CircleCI.



12
13
14
15
# File 'lib/hanamismith/builders/circle_ci.rb', line 12

def initialize(generator: SecureRandom, **)
  @generator = generator
  super(**)
end

Instance Method Details

#callObject



17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/hanamismith/builders/circle_ci.rb', line 17

def call
  return false unless settings.build_circle_ci

  path = "%project_name%/.circleci/config.yml.erb"

  builder.call(settings.with(template_path: path))
         .render
         .replace("<app_secret>", generator.hex(30))
         .replace(/\n\n\Z/, "\n")

  true
end