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 +4 -4
- data/README.md +8 -0
- data/lib/lolipop/mc/starter/rails.rb +3 -0
- data/lib/lolipop/mc/starter/rails/nodebrew.rb +11 -9
- data/lib/lolipop/mc/starter/rails/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 675f834abb6c044b54eece1397b2eb66dd94796ae7abc94a6db326b3409a01ef
|
4
|
+
data.tar.gz: 7aa21f40f35bfa9c658b9ca04200f7550dd3645fdc9ef828c3dbf6ae1329a07e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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).
|
@@ -10,8 +10,8 @@ module Lolipop::Mc::Starter::Rails
|
|
10
10
|
end
|
11
11
|
install_nodebrew
|
12
12
|
check_env_path
|
13
|
-
|
14
|
-
|
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.
|
47
|
-
|
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.
|
54
|
-
stdout, stderr, status = Open3.capture3("#{@ssh_command} nodebrew use
|
55
|
-
raise "nodebrew use
|
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
|
73
|
+
puts '✅ ' + Paint["nodebrew use #{@version}を実行しました。そしてLTSバージョンをnodejsコマンドで実行できるようにしました", :green].to_s
|
72
74
|
end
|
73
75
|
|
74
76
|
def self.cleanup
|