rails_engine_toolkit 0.6.3 → 0.6.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2daf757686e083799345227ffbacbb0fe9d53915f764a82320049f23202aab1f
4
- data.tar.gz: d0e663fa492f7f6f2992cd0b2f9ad7ec6e80c1c772baf385f4537410461b407e
3
+ metadata.gz: 0ab01356b27bc7c983607f824c6424f4d1baa14990f406db778dd517e70ef3f9
4
+ data.tar.gz: 88d88bc28c6769c0447c24d82494024b8e6fa3252e97bb63299be8cf72c33a2d
5
5
  SHA512:
6
- metadata.gz: b03b80e939f4e62b57471509c80241b4e7ca2157f8db29a6c7ae8b38e79df651633839bd50135546234418076b9d89f3e1c4de17a58b490372b54a81a440915c
7
- data.tar.gz: c537ed36c0a79ac052eadeb992f38ddb5fcb526d5f057f855708feeee988b30188e704ed95f7a59318fd5742ec70e03b995d4230ac13b899092e8c9ef461e183
6
+ metadata.gz: e690531ad9a2cffe7b25a33bc011d4bb88e70fe435deac750ef2a1355dc629182410057231754932b1fe125061fba35a81d2ae0b314020686569346e294c9d3c
7
+ data.tar.gz: 2a919314dbb87df84fcd4d3e80217c85f960c97a0311005430334701234c6b28f70b82fbb3ba999ef30b7572e8fe376c1b36063980e4d7fe305fc4135215723a
@@ -14,13 +14,24 @@ jobs:
14
14
  rails: ["8.1.2"]
15
15
  steps:
16
16
  - uses: actions/checkout@v4
17
- - uses: ruby/setup-ruby@v1
17
+
18
+ - name: Setup Ruby
19
+ uses: ruby/setup-ruby@v1
18
20
  with:
19
21
  ruby-version: ${{ matrix.ruby }}
20
22
  bundler-cache: true
21
- - run: bundle install
22
- - run: bundle exec rspec
23
- - run: bundle exec rubocop
23
+
24
+ - name: Install dependencies
25
+ run: bundle install
26
+
27
+ - name: Run RSpec
28
+ run: bundle exec rspec
29
+
30
+ - name: Run RuboCop
31
+ run: bundle exec rubocop --cache false lib spec test scripts rails_engine_toolkit.gemspec
32
+
33
+ - name: Run Smoke Test (fast)
34
+ run: bash scripts/smoke.sh
24
35
 
25
36
  host-app-smoke:
26
37
  runs-on: ubuntu-latest
@@ -39,16 +50,11 @@ jobs:
39
50
  - run: |
40
51
  cp -R test/fixtures/host_app /tmp/host_app
41
52
  cd /tmp/host_app
53
+ bundle config unset frozen || true
54
+ bundle config unset deployment || true
42
55
  bundle config set local.rails_engine_toolkit "$GITHUB_WORKSPACE"
56
+ bundle config set --local frozen false
57
+ bundle config set --local deployment false
43
58
  bundle install
44
- bundle exec rails generate engine_toolkit:install <<'EOF'
45
-
46
-
47
-
48
-
49
-
50
-
51
- EOF
52
- bundle exec engine-toolkit new_engine auth <<'EOF'
53
-
54
- EOF
59
+ test -f config/engine_toolkit.yml
60
+ printf '\n' | bundle exec engine-toolkit new_engine auth
@@ -6,17 +6,28 @@ on:
6
6
  - "v*"
7
7
 
8
8
  jobs:
9
- publish:
9
+ push:
10
10
  runs-on: ubuntu-latest
11
11
  permissions:
12
- contents: read
12
+ contents: write
13
+ id-token: write
14
+
13
15
  steps:
14
- - uses: actions/checkout@v4
15
- - uses: ruby/setup-ruby@v1
16
+ - uses: actions/checkout@v5
17
+ with:
18
+ persist-credentials: false
19
+
20
+ - name: Set up Ruby
21
+ uses: ruby/setup-ruby@v1
16
22
  with:
17
- ruby-version: "3.3"
23
+ ruby-version: "3.2"
18
24
  bundler-cache: true
19
- - run: gem build rails_engine_toolkit.gemspec
20
- - run: gem push *.gem
21
- env:
22
- RUBYGEMS_API_KEY: ${{ secrets.RUBYGEMS_API_KEY }}
25
+
26
+ - name: Run test suite
27
+ run: bundle exec rspec
28
+
29
+ - name: Run RuboCop
30
+ run: bundle exec rubocop
31
+
32
+ - name: Publish gem
33
+ uses: rubygems/release-gem@v1
data/README.md CHANGED
@@ -71,7 +71,7 @@ bundle exec rubocop
71
71
 
72
72
  ```bash
73
73
  gem build rails_engine_toolkit.gemspec
74
- gem push rails_engine_toolkit-0.6.3.gem
74
+ gem push rails_engine_toolkit-0.6.4.gem
75
75
  ```
76
76
 
77
77
  After it is published, consumers can install it with:
@@ -21,7 +21,8 @@ module RailsEngineToolkit
21
21
  'skip_active_storage' => '--skip-active-storage',
22
22
  'skip_hotwire' => '--skip-hotwire',
23
23
  'skip_jbuilder' => '--skip-jbuilder',
24
- 'skip_system_test' => '--skip-system-test'
24
+ 'skip_system_test' => '--skip-system-test',
25
+ 'skip_rubocop' => '--skip-rubocop'
25
26
  }.freeze
26
27
 
27
28
  attr_reader :data
@@ -17,6 +17,7 @@ defaults:
17
17
  skip_hotwire: true
18
18
  skip_jbuilder: true
19
19
  skip_system_test: true
20
+ skip_rubocop: true
20
21
  mount_routes: <%= mount_routes %>
21
22
  create_ddd_structure: <%= create_ddd_structure %>
22
23
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RailsEngineToolkit
4
- VERSION = '0.6.3'
4
+ VERSION = '0.6.5'
5
5
  end
@@ -5,13 +5,13 @@ require_relative 'lib/rails_engine_toolkit/version'
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = 'rails_engine_toolkit'
7
7
  spec.version = RailsEngineToolkit::VERSION
8
- spec.authors = ['Your Name']
9
- spec.email = ['you@example.com']
8
+ spec.authors = ['Juan Furattini']
9
+ spec.email = ['juan.furattini@gmail.com']
10
10
 
11
11
  spec.summary = 'Reusable CLI and generators for Rails engines'
12
12
  spec.description =
13
13
  'Creates and manages internal Rails engines with configurable conventions, safe file mutations, parser-assisted route inspection, engine-specific migration installation, and Rails install generators.'
14
- spec.homepage = 'https://github.com/your-org/rails_engine_toolkit'
14
+ spec.homepage = 'https://github.com/juanfurattini/rails_engine_toolkit'
15
15
  spec.license = 'MIT'
16
16
  spec.required_ruby_version = '>= 3.2'
17
17
 
@@ -0,0 +1,36 @@
1
+ project:
2
+ name: "Host App"
3
+ slug: "host_app"
4
+ url: "https://example.test/host_app"
5
+
6
+ author:
7
+ name: "CI"
8
+ email: "ci@example.test"
9
+
10
+ defaults:
11
+ database: "sqlite3"
12
+ api_only: true
13
+ skip_asset_pipeline: true
14
+ skip_action_mailbox: true
15
+ skip_action_text: true
16
+ skip_active_storage: true
17
+ skip_hotwire: true
18
+ skip_jbuilder: true
19
+ skip_system_test: true
20
+ skip_rubocop: true
21
+ mount_routes: true
22
+ create_ddd_structure: true
23
+
24
+ metadata:
25
+ license: "MIT"
26
+ ruby_version: ">= 3.2"
27
+ rails_version: ">= 8.1.2"
28
+
29
+ ddd:
30
+ folders:
31
+ - app/use_cases
32
+ - app/services
33
+ - app/policies
34
+ - app/serializers
35
+ - app/repositories
36
+ - app/contracts
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_engine_toolkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.3
4
+ version: 0.6.5
5
5
  platform: ruby
6
6
  authors:
7
- - Your Name
7
+ - Juan Furattini
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2026-03-13 00:00:00.000000000 Z
11
+ date: 2026-03-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: railties
@@ -42,7 +42,7 @@ description: Creates and manages internal Rails engines with configurable conven
42
42
  safe file mutations, parser-assisted route inspection, engine-specific migration
43
43
  installation, and Rails install generators.
44
44
  email:
45
- - you@example.com
45
+ - juan.furattini@gmail.com
46
46
  executables:
47
47
  - engine-toolkit
48
48
  extensions: []
@@ -108,15 +108,16 @@ files:
108
108
  - test/fixtures/host_app/Gemfile
109
109
  - test/fixtures/host_app/config/application.rb
110
110
  - test/fixtures/host_app/config/boot.rb
111
+ - test/fixtures/host_app/config/engine_toolkit.yml
111
112
  - test/fixtures/host_app/config/environment.rb
112
113
  - test/fixtures/host_app/config/routes.rb
113
- homepage: https://github.com/your-org/rails_engine_toolkit
114
+ homepage: https://github.com/juanfurattini/rails_engine_toolkit
114
115
  licenses:
115
116
  - MIT
116
117
  metadata:
117
- homepage_uri: https://github.com/your-org/rails_engine_toolkit
118
- source_code_uri: https://github.com/your-org/rails_engine_toolkit
119
- changelog_uri: https://github.com/your-org/rails_engine_toolkit/releases
118
+ homepage_uri: https://github.com/juanfurattini/rails_engine_toolkit
119
+ source_code_uri: https://github.com/juanfurattini/rails_engine_toolkit
120
+ changelog_uri: https://github.com/juanfurattini/rails_engine_toolkit/releases
120
121
  rubygems_mfa_required: 'true'
121
122
  post_install_message:
122
123
  rdoc_options: []