coaster 1.3.29 → 1.3.31
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/coaster +13 -0
- data/lib/coaster/git/repository.rb +13 -5
- data/lib/coaster/version.rb +1 -1
- metadata +7 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 43abb6513668deddc9df011fbff2c6e5e91b3d719802eea04e5747c861386b70
|
4
|
+
data.tar.gz: f71da9808d5ede1b3d9b82b730aadbe42e167aac3a5e1a25594e86eb03ec5e79
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0ff272eab32afa8c497cfa819dcc0478f2f89d2023993d19282185e9a0a338093c187333b963bf7e2b62be0059d33b0ae73056a22de57ea48a1090b8f6863cb9
|
7
|
+
data.tar.gz: 70eac0b6df3309029af7780dbb39544e0c0e72cf98e656734d3f884dc3bb457c988948ac5731a5432958998bc899f5f943123acac378818d4957d88f5bea5703
|
data/bin/coaster
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'coaster'
|
4
|
+
require 'coaster/git'
|
5
|
+
|
6
|
+
command = ARGV.shift
|
7
|
+
if command == 'git'
|
8
|
+
repo = Git::Repository.new(Dir.pwd)
|
9
|
+
subcommand = ARGV.shift
|
10
|
+
repo.send(subcommand, *ARGV)
|
11
|
+
else
|
12
|
+
puts "Unknown command: #{command}"
|
13
|
+
end
|
@@ -3,6 +3,14 @@ module Coaster
|
|
3
3
|
class Repository
|
4
4
|
class << self
|
5
5
|
def option_parser(options)
|
6
|
+
case options
|
7
|
+
when Hash then hash_option_parser(options)
|
8
|
+
when Array, Set then options.map{|o| option_parser(o)}.join(' ')
|
9
|
+
else options
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
def hash_option_parser(options)
|
6
14
|
opts = []
|
7
15
|
|
8
16
|
# multiple options can be passed by set
|
@@ -18,7 +26,7 @@ module Coaster
|
|
18
26
|
v = case v
|
19
27
|
when Hash then v.map{|vk,vv| "#{vk}=#{vv}"}.join(',')
|
20
28
|
when Array then v.join(',')
|
21
|
-
else v
|
29
|
+
else v || ''
|
22
30
|
end
|
23
31
|
v = v.strip
|
24
32
|
if k.start_with?('--')
|
@@ -32,7 +40,7 @@ module Coaster
|
|
32
40
|
end
|
33
41
|
|
34
42
|
def run_cmd(path, command)
|
35
|
-
puts "
|
43
|
+
puts "#{path}: #{command}"
|
36
44
|
stdout, stderr, status = Open3.capture3(command, chdir: path)
|
37
45
|
if status.success?
|
38
46
|
puts " ↳ success: #{stdout}"
|
@@ -60,7 +68,7 @@ module Coaster
|
|
60
68
|
self.class.run_cmd(path, command)
|
61
69
|
end
|
62
70
|
|
63
|
-
def run_git_cmd(command,
|
71
|
+
def run_git_cmd(command, *options)
|
64
72
|
cmd = "git #{self.class.option_parser(options)} #{command}"
|
65
73
|
run_cmd(cmd)
|
66
74
|
end
|
@@ -111,8 +119,8 @@ module Coaster
|
|
111
119
|
|
112
120
|
def merge(pointer)
|
113
121
|
pointers = pointers(pointer).join(',')
|
114
|
-
puts "#{path} merged deploy
|
115
|
-
run_git_cmd("merge #{pointer} --commit -m \"merged deploy
|
122
|
+
puts "#{path} merged deploy: #{pointers}"
|
123
|
+
run_git_cmd("merge #{pointer} --commit -m \"merged deploy: #{pointers}\"")
|
116
124
|
end
|
117
125
|
|
118
126
|
def submodule_sha(path, pointer: nil)
|
data/lib/coaster/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: coaster
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.31
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- buzz jung
|
@@ -180,13 +180,15 @@ dependencies:
|
|
180
180
|
version: '0'
|
181
181
|
description: Ruby Core Extensions
|
182
182
|
email: buzz@frograms.com
|
183
|
-
executables:
|
183
|
+
executables:
|
184
|
+
- coaster
|
184
185
|
extensions: []
|
185
186
|
extra_rdoc_files: []
|
186
187
|
files:
|
187
188
|
- LICENSE
|
188
189
|
- README.md
|
189
190
|
- Rakefile
|
191
|
+
- bin/coaster
|
190
192
|
- lib/coaster.rb
|
191
193
|
- lib/coaster/core_ext.rb
|
192
194
|
- lib/coaster/core_ext/array.rb
|
@@ -219,7 +221,9 @@ files:
|
|
219
221
|
homepage: http://github.com/frograms/coaster
|
220
222
|
licenses:
|
221
223
|
- MIT
|
222
|
-
metadata:
|
224
|
+
metadata:
|
225
|
+
source_code_uri: https://github.com/frograms/coaster
|
226
|
+
bug_tracker_uri: https://github.com/frograms/coaster/issues
|
223
227
|
post_install_message:
|
224
228
|
rdoc_options: []
|
225
229
|
require_paths:
|