Sha256: c6586cb2fbcbaed7ef6daf06a5417e024a9891c8e069136cbf4a646081f31927

Contents?: true

Size: 1.34 KB

Versions: 3

Compression:

Stored size: 1.34 KB

Contents

require 'generators/spring/version'

require 'minke/generators/register'
require 'minke/generators/config'

module Minke
  module Generators
    module Spring
      # Register the template with minke
      config = Minke::Generators::Config.new
      config.name = 'minke-generator-spring'

      config.template_location = File.expand_path(File.dirname(__FILE__)) + '/spring/scaffold'

      config.generate_settings = Minke::Generators::GenerateSettings.new.tap do |gs|
        gs.command = ['/bin/sh', '-c', 'apk add --update curl && curl https://start.spring.io/starter.tgz -d dependencies=web,actuator -d language=java -d type=maven-project -d baseDir=./ -d groupId=<%= namespace %> -d artifactId=<%= application_name %> | tar -xzvf -']
        gs.docker_image = 'frolvlad/alpine-oraclejdk8:slim'
      end

      config.build_settings = Minke::Generators::BuildSettings.new
      config.build_settings.build_commands = Minke::Generators::BuildCommands.new.tap do |bc|
        bc.build = [['/bin/bash', '-c', 'mvn package']]
      end

      config.build_settings.docker_settings = Minke::Generators::DockerSettings.new.tap do |bs|
        bs.image = 'frolvlad/alpine-oraclejdk8:slim'
        bs.binds = ['<%= src_root %>:/src', '<%= src_root %>/.m2:/root/.m2']
        bs.working_directory = '/src'
      end

      Minke::Generators.register config
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
minke-generator-spring-0.1.2 lib/generators/spring.rb
minke-generator-spring-0.1.1 lib/generators/spring.rb
minke-generator-spring-0.1.0 lib/generators/spring.rb