stack_car 0.15.0 → 0.17.0

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: e6cc442f70a939d0c26964b5b37fab7c115ce5de2c1c7ad2decf317854028b4b
4
- data.tar.gz: a245e1232281276530a1b16be06a2baedf938eb39db836d39786f99cd52a2264
3
+ metadata.gz: aed65228d5800ad11558a876bec39f0a8d39e7d26ee8f8129034b96dddce254b
4
+ data.tar.gz: 34d44f3b1b014a2a47d0b9bbbd2bfd811fbc60eb1a4b3918530742e716dc4757
5
5
  SHA512:
6
- metadata.gz: 7108eaf37d7a5f0ae241eb6365a93d731329c04cbe13571002894ae4c80192893512dc29a1a32f95dfd15d3309682290682a2efa381b93dcce894c1e551072ae
7
- data.tar.gz: d23c829079977213a1877733c8f814041df4afb258269861311184e5044ded8b5dcda760b31c3ec4a9e6e5ea8f8a23d43f23ad65f385e329271db2b2d50f985b
6
+ metadata.gz: ee8538051ee7aec8475b020825baa714f3044ed470d7bb65fee76a629667a442c91b38b6fbfa3d56284822b14f4b8b5ebc9bd3add7d09320c697c187b0aca0a6
7
+ data.tar.gz: 66642618c3291966017e0f22c3b7d1e3e504d12dbeb5f37fcefac3f68fb12dcd2fb454b7550e456f32ee7f42e05fa976266b3a6005f2aad3724511198e8613ff
@@ -0,0 +1,18 @@
1
+ # Story
2
+
3
+ # Acceptance Criteria
4
+
5
+ - [ ]
6
+
7
+ # Screenshots / Video
8
+
9
+ <details>
10
+ <summary></summary>
11
+
12
+ </details>
13
+
14
+ # Testing Instructions and Sample Files
15
+
16
+ -
17
+
18
+ # Notes
@@ -0,0 +1,18 @@
1
+ # Story
2
+
3
+ Refs
4
+
5
+ - #issuenumber
6
+
7
+ # Expected Behavior Before Changes
8
+
9
+ # Expected Behavior After Changes
10
+
11
+ # Screenshots / Video
12
+
13
+ <details>
14
+ <summary></summary>
15
+
16
+ </details>
17
+
18
+ # Notes
@@ -0,0 +1,35 @@
1
+ name: Test
2
+ on:
3
+ push:
4
+ branches:
5
+ - main
6
+ pull_request:
7
+ branches:
8
+ - main
9
+ jobs:
10
+ rspec:
11
+ name: Run rspec with ruby
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - name: Checkout code
15
+ uses: actions/checkout@v3
16
+ - name: Cache
17
+ uses: actions/cache@v2.1.3
18
+ with:
19
+ path: vendor/bundle
20
+ key: '2.3'
21
+ - name: Setup Ruby
22
+ uses: ruby/setup-ruby@v1.59.1
23
+ with:
24
+ ruby-version: '2.3'
25
+ - name: Dependencies
26
+ run: |
27
+ bundle config path vendor/bundle
28
+ bundle install
29
+ - name: Rspec
30
+ run: 'bundle exec rspec'
31
+ - name: Publish Test Report
32
+ uses: mikepenz/action-junit-report@v3
33
+ if: always() # always run even if the previous step fails
34
+ with:
35
+ report_paths: '**/build/test-results/test/TEST-*.xml'
data/lib/stack_car/cli.rb CHANGED
@@ -1,8 +1,8 @@
1
1
  require 'thor'
2
2
  require 'erb'
3
- require 'dotenv/load'
3
+ require 'dotenv'
4
4
  require 'json'
5
- require 'byebug'
5
+
6
6
  module StackCar
7
7
  class HammerOfTheGods < Thor
8
8
  include Thor::Actions
@@ -166,12 +166,13 @@ module StackCar
166
166
 
167
167
  desc "release ENVIRONTMENT", "tag and push and image to the registry"
168
168
  def release(environment)
169
+ Dotenv.load(".env.#{environment}", '.env')
169
170
  setup
170
171
  timestamp = Time.now.strftime("%Y%m%d%I%M%S")
171
172
  sha = `git rev-parse HEAD`[0..8]
172
173
  registry = "#{ENV['REGISTRY_HOST']}#{ENV['REGISTRY_URI']}"
173
174
  tag = ENV["TAG"] || 'latest'
174
- unless File.exists?("#{ENV['HOME']}/.docker/config.json") && File.readlines("#{ENV['HOME']}/.docker/config.json").grep(/#{ENV['REGISTRY_HOST']}/).size > 0
175
+ unless File.exist?("#{ENV['HOME']}/.docker/config.json") && File.readlines("#{ENV['HOME']}/.docker/config.json").grep(/#{ENV['REGISTRY_HOST']}/).size > 0
175
176
  run_with_exit("#{dotenv(environment)} docker login #{ENV['REGISTRY_HOST']}")
176
177
  end
177
178
  run_with_exit("#{dotenv(environment)} docker tag #{registry}:#{tag} #{registry}:#{environment}-#{timestamp}")
@@ -193,6 +194,7 @@ module StackCar
193
194
 
194
195
  desc "ssh ENVIRONMENT", "log in to a running instance - requires PRODUCTION_SSH to be set"
195
196
  def ssh(environment)
197
+ Dotenv.load(".env.#{environment}", '.env')
196
198
  setup
197
199
  target = ENV["#{environment.upcase}_SSH"]
198
200
  if target
@@ -281,8 +283,8 @@ module StackCar
281
283
  template("solrcloud-upload-configset.sh", "bin/solrcloud-upload-configset.sh")
282
284
  template("solrcloud-assign-configset.sh", "bin/solrcloud-assign-configset.sh")
283
285
  end
284
-
285
- if File.exists?('README.md')
286
+
287
+ if File.exist?('README.md')
286
288
  prepend_to_file "README.md" do
287
289
  File.read("#{self.class.source_root}/README.md")
288
290
  end
@@ -383,7 +385,7 @@ module StackCar
383
385
 
384
386
  def find_config(dir)
385
387
  path = File.join(dir, '.stackcar_rc')
386
- if File.exists?(path)
388
+ if File.exist?(path)
387
389
  return path
388
390
  elsif dir == "/"
389
391
  return nil
@@ -393,7 +395,7 @@ module StackCar
393
395
  end
394
396
 
395
397
  def ensure_development_env
396
- if !File.exists?('.env.development')
398
+ if !File.exist?('.env.development')
397
399
  template(".env.development.erb", ".env.development")
398
400
  end
399
401
  end
@@ -403,7 +405,7 @@ module StackCar
403
405
  end
404
406
 
405
407
  def setup
406
- if File.exists?('stack_car')
408
+ if File.exist?('stack_car')
407
409
  @sc_dir = true
408
410
  Dir.chdir('stack_car')
409
411
  self.destination_root += "/stack_car"
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module StackCar
4
- VERSION = '0.15.0'
4
+ VERSION = '0.17.0'
5
5
  end
data/lib/stack_car.rb CHANGED
@@ -2,6 +2,16 @@ require "stack_car/version"
2
2
  require "stack_car/cli"
3
3
  require "stack_car/dot_rc"
4
4
 
5
+ ##
6
+ # Ruby 3.x removed {File.exists?} in favor of {File.exist?}. This shim ensures that we can run
7
+ # stack_car in both Ruby 2.7 and Ruby 3.x land.
8
+ unless File.respond_to?(:exists?)
9
+ # We're aliasing the class method exist?, hence the `class << File` antics.
10
+ class << File
11
+ alias exists? exist?
12
+ end
13
+ end
14
+
5
15
  module StackCar
6
16
  # Your code goes here...
7
17
  end
data/stack_car.gemspec CHANGED
@@ -19,14 +19,13 @@ Gem::Specification.new do |spec|
19
19
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
20
  spec.require_paths = ["lib"]
21
21
 
22
- spec.add_development_dependency "bundler", "~> 1.13"
23
- spec.add_development_dependency "byebug"
24
- spec.add_development_dependency "rake", "~> 10.0"
22
+ spec.add_development_dependency "bundler"
23
+ spec.add_development_dependency "rake"
25
24
  spec.add_development_dependency "rspec", "~> 3.0"
26
25
  spec.add_development_dependency "yard"
27
26
  spec.add_development_dependency "yard-thor"
28
27
  spec.add_development_dependency "pry"
29
- spec.add_runtime_dependency "dotenv", "~> 2.2"
28
+ spec.add_runtime_dependency "dotenv"
30
29
  spec.add_runtime_dependency "json", "~> 2.3"
31
30
  spec.add_runtime_dependency "thor", "~> 0.19"
32
31
  end
@@ -13,7 +13,7 @@ Dir.chdir(File.join(parent_dir))
13
13
  ].each do |files|
14
14
  Dir.glob(files).each do |file|
15
15
  if file.match(/enc/)
16
- next unless File.exists?(file)
16
+ next unless File.exist?(file)
17
17
  cmd = "sops --decrypt #{file} > #{file.gsub(/.enc$/, '')}"
18
18
  puts cmd
19
19
  `#{cmd}`
metadata CHANGED
@@ -1,31 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stack_car
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.0
4
+ version: 0.17.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rob Kaufman
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-03-28 00:00:00.000000000 Z
11
+ date: 2024-12-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '1.13'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '1.13'
27
- - !ruby/object:Gem::Dependency
28
- name: byebug
29
15
  requirement: !ruby/object:Gem::Requirement
30
16
  requirements:
31
17
  - - ">="
@@ -42,16 +28,16 @@ dependencies:
42
28
  name: rake
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
- - - "~>"
31
+ - - ">="
46
32
  - !ruby/object:Gem::Version
47
- version: '10.0'
33
+ version: '0'
48
34
  type: :development
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
52
- - - "~>"
38
+ - - ">="
53
39
  - !ruby/object:Gem::Version
54
- version: '10.0'
40
+ version: '0'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: rspec
57
43
  requirement: !ruby/object:Gem::Requirement
@@ -112,16 +98,16 @@ dependencies:
112
98
  name: dotenv
113
99
  requirement: !ruby/object:Gem::Requirement
114
100
  requirements:
115
- - - "~>"
101
+ - - ">="
116
102
  - !ruby/object:Gem::Version
117
- version: '2.2'
103
+ version: '0'
118
104
  type: :runtime
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
107
  requirements:
122
- - - "~>"
108
+ - - ">="
123
109
  - !ruby/object:Gem::Version
124
- version: '2.2'
110
+ version: '0'
125
111
  - !ruby/object:Gem::Dependency
126
112
  name: json
127
113
  requirement: !ruby/object:Gem::Requirement
@@ -150,7 +136,7 @@ dependencies:
150
136
  - - "~>"
151
137
  - !ruby/object:Gem::Version
152
138
  version: '0.19'
153
- description:
139
+ description:
154
140
  email:
155
141
  - rob@notch8.com
156
142
  executables:
@@ -159,6 +145,9 @@ executables:
159
145
  extensions: []
160
146
  extra_rdoc_files: []
161
147
  files:
148
+ - ".github/ISSUE_TEMPLATE.md"
149
+ - ".github/PULL_REQUEST_TEMPLATE.md"
150
+ - ".github/workflows/rspec-action.yaml"
162
151
  - ".gitignore"
163
152
  - ".gitlab-ci.yml"
164
153
  - ".rspec"
@@ -251,7 +240,7 @@ files:
251
240
  homepage: https://gitlab.com/notch8/stack_car
252
241
  licenses: []
253
242
  metadata: {}
254
- post_install_message:
243
+ post_install_message:
255
244
  rdoc_options: []
256
245
  require_paths:
257
246
  - lib
@@ -266,8 +255,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
266
255
  - !ruby/object:Gem::Version
267
256
  version: '0'
268
257
  requirements: []
269
- rubygems_version: 3.1.4
270
- signing_key:
258
+ rubygems_version: 3.4.19
259
+ signing_key:
271
260
  specification_version: 4
272
261
  summary: A tool to make rails + docker easy
273
262
  test_files: []