Sha256: a885bebddd6bf80af34b5df0030eed29def31de3779881a3eb8a07e1c5effdb1

Contents?: true

Size: 773 Bytes

Versions: 1

Compression:

Stored size: 773 Bytes

Contents

# frozen_string_literal: true

module Neptuno
  module CLI
    # Init Neptuno files
    class Init < Dry::CLI::Command
      include TTY::File
      include TTY::Config
      include TTY::Which

      desc "Initializes a Neptuno project folder structure"

      WORK_TREE = {"." => [{"services" => [], "dockerfiles" => [], "procfiles" => [], "environments" => []}]}.freeze

      CONFIG = nil

      def call(**)
        abort "Neptuno projects can not be nested." if neptuno_path != ""
        ::TTY::File.create_dir(WORK_TREE, Dir.pwd)
        config.set(:configured_services, value: "")
        config.set(:services, value: [])
        config.write(create: true, force: true)
        `cp -r #{File.expand_path("../templates", __dir__)}/* ./`
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
neptuno-1.5.0 lib/neptuno/cli/init.rb