rails_plan 0.0.2 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 88472b9ad2b2bdcf2c55e8c78edad02cd8f7803aef5b36d5d4ea0b492ce027a3
4
- data.tar.gz: f7355e7a282adee10c1c72cf532341a09d262ce8432d88371d1ae3bbd64f7770
3
+ metadata.gz: 2514de50b22779a293ad4455071eb682e829d7343658ec508b6042617fca276b
4
+ data.tar.gz: b7ba5905351dfcb7341c356c51f2fbf6e82957dcba3d2aee165a78db05ef8933
5
5
  SHA512:
6
- metadata.gz: 9bb98024808017686220f952bafd61632549998bb1af3566047929a416eaef7aa4b00d159cedf59479da3bb9a5558f3739b63bba06edc67d4fe015f354e42c4c
7
- data.tar.gz: f08c6967228a92a62e8f56903ea56fcf7dc789eb9eb8e27efc471aa2d6556f25672faa5163db0a972dd9cc9c3c404597eca173a5e43ab09f9c344f340b7f3023
6
+ metadata.gz: 9f3a6ae5c736b3b6345760dbee23be420b360798962bade77fde65d349f45b6c06fa0589c0adc47b0646285d2cb2056b55d76e0eba7a2994b3ee288179079157
7
+ data.tar.gz: 6f3d97472e4f309079bde3f40d760e344adfc174f75ea1264caaafe04d4c7ce82d516e2985a254151881cc61411f028951034df83f6245dee274a1fbb5894f8b
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RailsPlan
4
- VERSION = '0.0.2'
4
+ VERSION = '0.0.4'
5
5
  RAILS_VERSION = '7.1.3.3'
6
6
  end
data/lib/rails_plan.rb CHANGED
@@ -19,15 +19,22 @@ module RailsPlan
19
19
  ::RailsPlan::GemVersion.validate!
20
20
 
21
21
  verify_rails_installation
22
+
22
23
  generate_project(template)
23
24
  generate_files(template['files'])
24
- run_commands(template['commands'])
25
+ run_commands(template['before_commands'])
25
26
  clone_files(template['clones'])
26
27
  inject_code(template['inject_code'])
27
28
  append_code(template['append_code'])
28
29
  update_files(template['gsub'])
29
30
 
30
- puts 'Time for coding! 🚀'
31
+ template['steps'].each do |step|
32
+ puts step['title'] if step['title']
33
+ run_commands(step['before_commands'])
34
+ generate_files(step['files'])
35
+ prepend_to_file(step['prepend_code'])
36
+ run_commands(step['after_commands'])
37
+ end
31
38
  end
32
39
 
33
40
  private
@@ -70,6 +77,16 @@ module RailsPlan
70
77
  end
71
78
  end
72
79
 
80
+ def prepend_to_file(injections)
81
+ return if injections.nil? || injections.empty?
82
+
83
+ thor_app = ::RailsPlan::RailsApp.new
84
+
85
+ injections.each do |injection|
86
+ thor_app.insert_into_file(injection['file_path'], injection['content'], after: injection['after'])
87
+ end
88
+ end
89
+
73
90
  def append_code(appends)
74
91
  return if appends.nil? || appends.empty?
75
92
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_plan
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paweł Dąbrowski
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-30 00:00:00.000000000 Z
11
+ date: 2024-06-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client