bard 0.49.0 → 0.50.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: 5cb419fc2b00c18d30f063e319aed724202e92a5fa90be7aedeaebbc9ffc7442
4
- data.tar.gz: 7ed9b8e370081de8066f91c0ebc0096f1fd5ee68870f3c5e6653370f6457524e
3
+ metadata.gz: b0143951321b002520b2680aa29b95c809dd2e53b6bbffffee26f2846ec77da6
4
+ data.tar.gz: 27d3e89add08daf40c0ecdfc2e689d476015faa527e7cccaa9d2ff11159d89fb
5
5
  SHA512:
6
- metadata.gz: 4363c68ed6e10896ada82d79dbe990af712465fd9ac7434194e16af61a235a315d3e9f9be8a03726f307f1449228104da894f1e1a77ba073fcce2a40d29f72a9
7
- data.tar.gz: f8a3736d63072637a27a790765ef7fbbecd4ee61cdec14aa03af390f76105cd965a118ce2f9bbad80f19c752d2b5e9373d2c62416014edd617b34e0ed5158e56
6
+ metadata.gz: 909fd33f890a8429bf6013ad0cc133ee36ee7fdea69d8c17a7fff10c5df88126d0edce954a36c434baa653c8ca47deefeeb31042099ea15cbd3b14c52eeebf38
7
+ data.tar.gz: 9d65e8741eb39854403e7929ec93a829091ad2bd6bd041790537162be0b8c62b90941bf426547b3fec999a03150caaf3079ec224d2b7304ab01a8bec98fa2e22
@@ -0,0 +1,31 @@
1
+ name: ci
2
+ on:
3
+ workflow_dispatch:
4
+ inputs:
5
+ git-ref:
6
+ description: Git Ref
7
+ default: master
8
+ required: true
9
+ jobs:
10
+ test:
11
+ runs-on: ubuntu-20.04
12
+ env:
13
+ RAILS_ENV: test
14
+ steps:
15
+ - name: Set up MySQL
16
+ run: |
17
+ sudo /etc/init.d/mysql start
18
+ sudo mysql -uroot -proot -e"ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY '';"
19
+ - name: Checkout code
20
+ uses: actions/checkout@v3
21
+ with:
22
+ ref: ${{ github.event.inputs.git-ref }}
23
+ - name: Install Ruby and gems
24
+ uses: ruby/setup-ruby@v1
25
+ with:
26
+ bundler-cache: true
27
+ - name: Setup
28
+ run: bin/setup
29
+ - name: Run tests
30
+ run: bin/ci
31
+
@@ -0,0 +1,10 @@
1
+ module AptDependencies
2
+ def self.ensure!
3
+ deps = File.readlines("Aptfile", chomp: true)
4
+ deps.map do |dep|
5
+ "apt list #{dep} | grep '\\[installed\\]' || sudo apt install -y #{dep}"
6
+ end.join(" && ")
7
+ rescue Errno::ENOENT
8
+ "true"
9
+ end
10
+ end
data/install_files/ci CHANGED
@@ -1,6 +1,4 @@
1
1
  #!/usr/bin/env ruby
2
- require_relative './specified_ruby'
3
- SpecifiedRuby.ensure!
4
2
  ENV["RAILS_ENV"] = "test"
5
3
  load "Rakefile"
6
4
  Rake::Task["ci"].invoke
data/install_files/setup CHANGED
@@ -1,15 +1,13 @@
1
1
  #!/usr/bin/env ruby
2
+ require_relative './apt_dependencies'
2
3
  require_relative './specified_ruby'
3
4
  require_relative './specified_bundler'
4
- require_relative './specified_node'
5
- require_relative './specified_yarn'
6
5
 
7
6
  Dir.chdir File.expand_path("..", __dir__) do
8
7
  exec [
8
+ AptDependencies.ensure!,
9
9
  SpecifiedRuby.ensure!,
10
10
  SpecifiedBundler.ensure!,
11
- SpecifiedNode.ensure!,
12
- SpecifiedYarn.ensure!,
13
11
  "bin/rake bootstrap",
14
12
  ].join(" && ")
15
13
  end
@@ -1,9 +1,8 @@
1
- require 'rvm'
2
-
3
1
  module SpecifiedRuby
4
2
  extend self
5
3
 
6
4
  def ensure!
5
+ return "true" if native?
7
6
  install unless installed?
8
7
  restart unless current?
9
8
  "true"
@@ -11,6 +10,19 @@ module SpecifiedRuby
11
10
 
12
11
  private
13
12
 
13
+ def native?
14
+ begin
15
+ require "rvm"
16
+ false
17
+ rescue LoadError
18
+ native_version == version
19
+ end
20
+ end
21
+
22
+ def native_version
23
+ "ruby-#{`ruby -e 'puts RUBY_VERSION'`.chomp}"
24
+ end
25
+
14
26
  def version
15
27
  File.read(".ruby-version").chomp
16
28
  end
@@ -29,6 +41,7 @@ module SpecifiedRuby
29
41
  end
30
42
 
31
43
  def current?
44
+ require "rvm"
32
45
  RVM.use_from_path!(".")
33
46
  RVM.current.environment_name == [version, gemset].join("@")
34
47
  rescue RVM::IncompatibleRubyError
@@ -36,7 +49,7 @@ module SpecifiedRuby
36
49
  end
37
50
 
38
51
  def restart
39
- exec "rvm-exec #{$0} && rvm-exec $SHELL"
52
+ exec "rvm-exec #{$0} #{"&& rvm-exec $SHELL" if ENV["RAILS_ENV"] == "development"}"
40
53
  end
41
54
  end
42
55
 
data/lib/bard/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  module Bard
2
- VERSION = "0.49.0"
2
+ VERSION = "0.50.0"
3
3
  end
4
4
 
data/lib/bard.rb CHANGED
@@ -161,7 +161,7 @@ class Bard::CLI < Thor
161
161
  desc "install", "copies bin/setup and bin/ci scripts into current project."
162
162
  def install
163
163
  install_files_path = File.expand_path(File.join(__dir__, "../install_files/*"))
164
- system "cp #{install_files_path} bin/"
164
+ system "cp -R #{install_files_path} bin/"
165
165
  end
166
166
 
167
167
  desc "ping [SERVER=production]", "hits the server over http to verify that its up."
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bard
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.49.0
4
+ version: 0.50.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Micah Geisel
@@ -138,13 +138,12 @@ files:
138
138
  - features/support/env.rb
139
139
  - features/support/grit_ext.rb
140
140
  - features/support/io.rb
141
+ - install_files/.github/workflows/ci.yml
142
+ - install_files/apt_dependencies.rb
141
143
  - install_files/ci
142
144
  - install_files/setup
143
145
  - install_files/specified_bundler.rb
144
- - install_files/specified_node.rb
145
146
  - install_files/specified_ruby.rb
146
- - install_files/specified_yarn.rb
147
- - install_files/yarn
148
147
  - lib/bard.rb
149
148
  - lib/bard/base.rb
150
149
  - lib/bard/ci.rb
@@ -1,31 +0,0 @@
1
- module SpecifiedNode
2
- extend self
3
-
4
- NODE_VERSION = "v12.16.1"
5
- NODE_PATH = "tmp/node-#{NODE_VERSION}-linux-x64/bin/node"
6
-
7
- def ensure!
8
- install_node unless node_installed?
9
- install_binstub
10
- "bin/node --version"
11
- end
12
-
13
- private
14
-
15
- def install_node
16
- system("wget -cO- https://nodejs.org/dist/#{NODE_VERSION}/node-#{NODE_VERSION}-linux-x64.tar.xz | tar xJ -C tmp/")
17
- end
18
-
19
- def install_binstub
20
- system("cd bin && ln -fs ../#{NODE_PATH}")
21
- end
22
-
23
- def node_installed?
24
- File.exist?(NODE_PATH) && `#{NODE_PATH} --version`.chomp == NODE_VERSION
25
- end
26
-
27
- def binstub_installed?
28
- File.exist?("bin/node")
29
- end
30
- end
31
-
@@ -1,31 +0,0 @@
1
- module SpecifiedYarn
2
- extend self
3
-
4
- YARN_VERSION = "v1.22.0"
5
- YARN_PATH = "tmp/yarn-#{YARN_VERSION}/bin/yarn.js"
6
-
7
- def ensure!
8
- install_yarn unless yarn_installed?
9
- install_binstub
10
- "bin/yarn install"
11
- end
12
-
13
- private
14
-
15
- def install_yarn
16
- system("wget -cO- https://github.com/yarnpkg/yarn/releases/download/#{YARN_VERSION}/yarn-#{YARN_VERSION}.tar.gz | tar -xz -C tmp/")
17
- end
18
-
19
- def install_binstub
20
- system("cd bin && ln -fs ../#{YARN_PATH}")
21
- end
22
-
23
- def yarn_installed?
24
- File.exist?(YARN_PATH) && `bin/node #{YARN_PATH} --version`.chomp == YARN_VERSION[1..-1]
25
- end
26
-
27
- def binstub_installed?
28
- File.exist?("bin/yarn")
29
- end
30
- end
31
-
data/install_files/yarn DELETED
@@ -1,5 +0,0 @@
1
- #!/bin/sh
2
- argv0=$(echo "$0" | sed -e 's,\\,/,g')
3
- basedir=$(dirname "$(readlink -f "$0" || echo "$argv0")")
4
- exec "$basedir/node" "$basedir/yarn.js" "$@"
5
-