Sha256: f5a4e02681b3232e7c7ca78b9015d1e0fddede2c9f080bf4c58f65f1f46b4e0d
Contents?: true
Size: 781 Bytes
Versions: 8
Compression:
Stored size: 781 Bytes
Contents
# frozen_string_literal: true require "refinements/struct" module Rubysmith module Builders # Builds project skeleton GitHub CI template. class GitHubCI using Refinements::Struct def self.call(...) = new(...).call def initialize configuration, builder: Builder @configuration = configuration @builder = builder end def call return configuration unless configuration.build_git_hub_ci builder.call(configuration_with_template).render.replace(/\n\n\Z/, "\n") configuration end private attr_reader :configuration, :builder def configuration_with_template configuration.merge template_path: "%project_name%/.github/workflows/ci.yml.erb" end end end end
Version data entries
8 entries across 8 versions & 1 rubygems