onboard 0.2.1 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/onboard/cli.rb +6 -16
- data/lib/onboard/project.rb +54 -5
- data/lib/onboard/repo.rb +0 -23
- data/lib/onboard/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZTYzNmVlZDFjMDRmZWViZGVmYzllMTM3MjAzMGZkNjU4NjYwNjc5OA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
YTQwZTBhYmRlZDc2MzRlYmVlZjliY2JiMzI0ZDY3NDY5MTM1M2RmOA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
MTlhMDY5YTc4YTc2MjJmMTJlYzAzMTkwOGVmZTFlOWM0NTEwM2JiN2ViM2E5
|
10
|
+
NzhkMzMwYjcyZWYwOGU4ZjRjM2IyZGFjZjFmMDkwYmZmMGVhNTc5MzJkNjg4
|
11
|
+
ODllNTVlNjI5ODkyMzk2MDcxNjFiZGU3ZDdkODY1MzQ3ZGQzYzQ=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
YTllNDkwOTE1ZjJkZmExYzc0NGQyYWIxYWQ0MjM4MThlYTFjMGQ2MTFhZjBj
|
14
|
+
Y2MwMzYwY2EwM2I5MzAyNzNlZmU0ZGZlOTRjMjc2ZWMwM2Q2NjIzM2VmNzM2
|
15
|
+
NjUyNjI4MjVmZmJjMDUzZTE2NDViMmQ4YWNiM2Y5NTUwODYwOWI=
|
data/lib/onboard/cli.rb
CHANGED
@@ -47,7 +47,7 @@ module Onboard
|
|
47
47
|
say("Projects exist at the following locations:", :yellow)
|
48
48
|
found.each do |x, y|
|
49
49
|
puts " " + x
|
50
|
-
projects[File.basename(x)] = y
|
50
|
+
projects[File.basename(x)] = y[0]
|
51
51
|
end
|
52
52
|
puts ""
|
53
53
|
end
|
@@ -71,24 +71,14 @@ module Onboard
|
|
71
71
|
exit
|
72
72
|
end
|
73
73
|
prj = {}
|
74
|
+
branch = options[:branch].nil? ? '' : options[:branch]
|
75
|
+
prj['branch'] = branch
|
74
76
|
prj['codebase'] = codebase
|
75
|
-
prj['path'] = "#{codebase}/#{path}"
|
76
|
-
prj['projects'] = projects
|
77
77
|
prj['core'] = core
|
78
|
+
prj['path'] = path
|
79
|
+
prj['projects'] = projects
|
80
|
+
prj['vc'] = options[:vc]
|
78
81
|
Project.new(prj).dl
|
79
|
-
if options[:vc] == true
|
80
|
-
branch = options[:branch].nil? ? '' : options[:branch]
|
81
|
-
repo = {}
|
82
|
-
repo['branch'] = branch
|
83
|
-
repo['codebase'] = codebase
|
84
|
-
repo['projects'] = projects
|
85
|
-
repo['path'] = path
|
86
|
-
Repo.new(repo).update
|
87
|
-
else
|
88
|
-
projects.each do |x, y|
|
89
|
-
say("#{x} added to codebase but changes are not yet tracked in version control.", :yellow)
|
90
|
-
end
|
91
|
-
end
|
92
82
|
else
|
93
83
|
say("All projects already in codebase.", :yellow)
|
94
84
|
end
|
data/lib/onboard/project.rb
CHANGED
@@ -9,6 +9,7 @@ require 'zlib'
|
|
9
9
|
|
10
10
|
require_relative 'confirm'
|
11
11
|
require_relative 'download'
|
12
|
+
require_relative 'msg'
|
12
13
|
require_relative 'repo'
|
13
14
|
|
14
15
|
module Onboard
|
@@ -18,14 +19,17 @@ module Onboard
|
|
18
19
|
DRUPAL_DL_LINK = "http://ftp.drupal.org/files/projects/"
|
19
20
|
|
20
21
|
class Project < Thor
|
21
|
-
attr_reader :core, :path, :projects, :
|
22
|
+
attr_reader :branch, :codebase, :core, :path, :projects, :vc
|
22
23
|
|
23
24
|
no_tasks do
|
24
25
|
def initialize(args = {})
|
26
|
+
@branch = args['branch']
|
27
|
+
@codebase = args['codebase']
|
25
28
|
@core = args['core']
|
26
|
-
@path = args['path']
|
29
|
+
@path = "#{args['codebase']}/#{args['path']}"
|
27
30
|
@projects = args['projects']
|
28
|
-
@
|
31
|
+
@vc = args['vc']
|
32
|
+
@vc_path = args['path']
|
29
33
|
end
|
30
34
|
|
31
35
|
def feed(project)
|
@@ -46,14 +50,59 @@ module Onboard
|
|
46
50
|
end
|
47
51
|
|
48
52
|
def dl
|
53
|
+
changes = []
|
49
54
|
projects.each do |x, y|
|
50
|
-
self.hacked?(x, y
|
55
|
+
self.hacked?(x, y) if y.empty? == false
|
51
56
|
self.clean("#{path}/#{x}")
|
57
|
+
# TODO: check existing version against release version - abort if same.
|
52
58
|
md5, link = self.release(x)
|
53
59
|
Download.new.fetch(link)
|
54
|
-
self.extract(Download.new.path(link)) if self.verify(x, link)
|
55
60
|
# TODO: retry download after failed download verification
|
61
|
+
self.extract(Download.new.path(link)) if self.verify(x, link)
|
62
|
+
if vc == true
|
63
|
+
repo = self.build_vc(x)
|
64
|
+
changes += self.vc_up(repo)
|
65
|
+
else
|
66
|
+
say("#{x} added to codebase but changes are not yet under version control.", :yellow)
|
67
|
+
end
|
68
|
+
end
|
69
|
+
if changes.empty? == false
|
70
|
+
repo = self.build_vc()
|
71
|
+
self.vc_push(repo)
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
def build_vc(x = '')
|
76
|
+
repo = {}
|
77
|
+
repo['codebase'] = codebase
|
78
|
+
repo['path'] = @vc_path
|
79
|
+
repo['branch'] = branch
|
80
|
+
repo['project'] = x
|
81
|
+
return repo
|
82
|
+
end
|
83
|
+
|
84
|
+
def vc_up(args)
|
85
|
+
g = Repo.new(args)
|
86
|
+
info = g.info
|
87
|
+
changes = []
|
88
|
+
msg = "Committing #{args['project']} on #{info['current_branch']} branch..."
|
89
|
+
Msg.new(msg).format
|
90
|
+
changes = g.commit("#{args['path']}/#{args['project']}")
|
91
|
+
if changes.empty? == false
|
92
|
+
say(" [done]", :green)
|
93
|
+
else
|
94
|
+
puts "\nNo changes to commit for #{args['project']}"
|
56
95
|
end
|
96
|
+
return changes
|
97
|
+
end
|
98
|
+
|
99
|
+
def vc_push(args)
|
100
|
+
g = Repo.new(args)
|
101
|
+
info = g.info
|
102
|
+
msg = "Pushing all changes to #{info['remotes'][0]}..."
|
103
|
+
Msg.new(msg).format
|
104
|
+
g.push
|
105
|
+
say(" [done]", :green)
|
57
106
|
end
|
58
107
|
|
59
108
|
def verify(x, file, version='')
|
data/lib/onboard/repo.rb
CHANGED
@@ -4,8 +4,6 @@ require 'git'
|
|
4
4
|
require 'pathname'
|
5
5
|
require 'thor'
|
6
6
|
|
7
|
-
require_relative 'msg'
|
8
|
-
|
9
7
|
module Onboard
|
10
8
|
class Repo < Thor
|
11
9
|
attr_reader :g, :path, :branch, :codebase, :projects
|
@@ -63,27 +61,6 @@ module Onboard
|
|
63
61
|
Git.open((Pathname.new(args['codebase'])).to_s)
|
64
62
|
end
|
65
63
|
|
66
|
-
def update
|
67
|
-
info = self.info
|
68
|
-
changes = []
|
69
|
-
projects.each do |x, y|
|
70
|
-
msg = "Committing #{x} on #{info['current_branch']} branch..."
|
71
|
-
Msg.new(msg).format
|
72
|
-
changes = self.commit("#{path}/#{x}")
|
73
|
-
if changes.empty? == false
|
74
|
-
say(" [done]", :green)
|
75
|
-
else
|
76
|
-
puts "\nNo changes to commit for #{x}"
|
77
|
-
end
|
78
|
-
end
|
79
|
-
if changes.empty? == false
|
80
|
-
msg = "Pushing all changes to #{info['remotes'][0]}..."
|
81
|
-
Msg.new(msg).format
|
82
|
-
self.push
|
83
|
-
say(" [done]", :green)
|
84
|
-
end
|
85
|
-
end
|
86
|
-
|
87
64
|
def commit(path)
|
88
65
|
project = File.basename(path)
|
89
66
|
|
data/lib/onboard/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: onboard
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nathaniel Hoag
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-09-
|
11
|
+
date: 2014-09-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|