lolipop-mc-starter-rails 0.5.0 → 0.5.1

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: 5c99ebc6101e516e3543ad91275a29684ed64fe9c9bcaa3b8e0dcb74e5ead9d6
4
- data.tar.gz: c7a05b26a3591f44cfc3feab657730258c55c33f079941170887ce8a0f0ca84b
3
+ metadata.gz: 675f834abb6c044b54eece1397b2eb66dd94796ae7abc94a6db326b3409a01ef
4
+ data.tar.gz: 7aa21f40f35bfa9c658b9ca04200f7550dd3645fdc9ef828c3dbf6ae1329a07e
5
5
  SHA512:
6
- metadata.gz: df5943d1d2088c42280ce67a36d70449829bb2d2c526a8fcc38941ec66200ceea1195508feec193579b9616b9e7562ffa551e4021b6e95272e745a4ad5f44be3
7
- data.tar.gz: 4a1b0f5f3c8b797b66d6647b22e80f8b3af1f763ba0e09f70098db55a7b3a98d0bdca99ac0007aebaa04ed02c00bc9f95f071a38fd00ddbb11734cfef783cbde
6
+ metadata.gz: d823f95e7a58e196119b5a5f1cf9c269a95c87cafab1506a650f40d1a9be4526ba2257df7006bfa8d776ab8af342021b95b36ddff21d17dc9f71d41d9a9ffefa
7
+ data.tar.gz: 11a8424e1d952d260c9c2ff508b56714c4e61ad47ea450e9d630627b02c234f6ca59c8d0bb655d4a0da2a8119dddce63d6eda2eb7632bfa4df18a63637d82722
data/README.md CHANGED
@@ -27,6 +27,14 @@ Railsプロジェクトのデータベース設定に必要な環境変数 `DATA
27
27
  $ mc-rails database
28
28
  ```
29
29
 
30
+ ### `mc-rails nodebrew`
31
+
32
+ Railsプロジェクトに[nodebrew](https://github.com/hokaccha/nodebrew)を利用して、Node.jsのLTSバージョンをインストールします
33
+
34
+ ```console
35
+ $ mc-rails nodebrew
36
+ ```
37
+
30
38
  ## ライセンス
31
39
 
32
40
  the [MIT License](https://opensource.org/licenses/MIT).
@@ -3,6 +3,9 @@ require 'paint'
3
3
  require 'yaml'
4
4
  require 'tty-prompt'
5
5
  require 'open3'
6
+ require 'net/http'
7
+ require 'uri'
8
+ require 'json'
6
9
 
7
10
  require 'lolipop/mc/starter/rails/version'
8
11
  require 'lolipop/mc/starter/rails/config'
@@ -10,8 +10,8 @@ module Lolipop::Mc::Starter::Rails
10
10
  end
11
11
  install_nodebrew
12
12
  check_env_path
13
- install_node_stable
14
- use_node_stable
13
+ install_node_lts
14
+ use_node_lts
15
15
  cleanup
16
16
  rescue => e
17
17
  puts '❌ ' + Paint[e.message, :red]
@@ -43,16 +43,18 @@ module Lolipop::Mc::Starter::Rails
43
43
  raise '環境変数 `PATH` の設定が間違っている可能性があります。マネージドクラウドのプロジェクト詳細の `環境変数の設定と管理` を確認してください'
44
44
  end
45
45
 
46
- def self.install_node_stable
47
- stdout, stderr, status = Open3.capture3("#{@ssh_command} nodebrew install stable")
46
+ def self.install_node_lts
47
+ uri = URI.parse('https://nodejs.org/dist/index.json')
48
+ @version = JSON.parse(Net::HTTP.get(uri)).find { |item| item['lts'] != false }['version']
49
+ stdout, stderr, status = Open3.capture3("#{@ssh_command} nodebrew install #{@version}")
48
50
  raise "Node.jsのインストールに失敗しました: #{stdout}" unless (status == 0 || stdout.match('already installed'))
49
51
  puts stdout
50
- puts '✅ ' + Paint["Node.jsをインストールしました", :green].to_s
52
+ puts '✅ ' + Paint["Node.jsをインストールしました [#{@version}]", :green].to_s
51
53
  end
52
54
 
53
- def self.use_node_stable
54
- stdout, stderr, status = Open3.capture3("#{@ssh_command} nodebrew use stable")
55
- raise "nodebrew use stableに失敗しました: #{stderr}" unless status == 0
55
+ def self.use_node_lts
56
+ stdout, stderr, status = Open3.capture3("#{@ssh_command} nodebrew use #{@version}")
57
+ raise "nodebrew use ltsに失敗しました: #{stderr}" unless status == 0
56
58
  puts stdout
57
59
 
58
60
  stdout, stderr, status = Open3.capture3("#{@ssh_command} which nodejs")
@@ -68,7 +70,7 @@ module Lolipop::Mc::Starter::Rails
68
70
  config = @config.load
69
71
  config['nodejs'] = stdout.strip
70
72
  @config.dump(config)
71
- puts '✅ ' + Paint["nodebrew use stableを実行しました。そしてstableバージョンをnodejsコマンドで実行できるようにしました", :green].to_s
73
+ puts '✅ ' + Paint["nodebrew use #{@version}を実行しました。そしてLTSバージョンをnodejsコマンドで実行できるようにしました", :green].to_s
72
74
  end
73
75
 
74
76
  def self.cleanup
@@ -2,7 +2,7 @@ module Lolipop
2
2
  module Mc
3
3
  module Starter
4
4
  module Rails
5
- VERSION = '0.5.0'.freeze
5
+ VERSION = '0.5.1'.freeze
6
6
  end
7
7
  end
8
8
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lolipop-mc-starter-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - k1low