build-tool 0.5.1 → 0.5.2
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.
- data.tar.gz.sig +0 -0
- data/History.txt +7 -0
- data/lib/build-tool.rb +1 -1
- data/lib/build-tool/cfg/lexer.rex +3 -0
- data/lib/build-tool/cfg/node.rb +1 -1
- data/lib/build-tool/cfg/parser.y +8 -5
- data/lib/build-tool/cfg/visitor.rb +20 -2
- data/lib/build-tool/commands/modules/info.rb +1 -0
- data/lib/build-tool/vcs/archive.rb +34 -1
- data/lib/build-tool/vcs/git-svn.rb +5 -3
- data/lib/mj/tools/subprocess.rb +8 -2
- metadata +3 -3
- metadata.gz.sig +1 -3
data.tar.gz.sig
CHANGED
Binary file
|
data/History.txt
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
== 0.5.2
|
2
|
+
- Bugfix
|
3
|
+
- Be less verbose about adding ssh-key to the agent. One time is enough.
|
4
|
+
- If a environment variable is empty in the recipe remove it from the environment instead of
|
5
|
+
setting it to "".
|
6
|
+
- Bring back the archive build-system. It was temporarily unavailable since 0.5.0
|
7
|
+
|
1
8
|
== 0.5.1
|
2
9
|
- Bugfix
|
3
10
|
- Add missing files.
|
data/lib/build-tool.rb
CHANGED
@@ -79,6 +79,9 @@ rule
|
|
79
79
|
### ARCHIVE
|
80
80
|
#
|
81
81
|
:ARCHIVE end\b { @state = @states.pop; [ :END, text ]; }
|
82
|
+
:ARCHIVE repository\b { @states.push @state; @state = :REPOSITORY; [:REPOSITORY, text]; }
|
83
|
+
:ARCHIVE remote-path\b { [:REMOTE_PATH, text]; }
|
84
|
+
:ARCHIVE use\b { @states.push @state; @state = :USE; [:USE, text]; }
|
82
85
|
# COMMON
|
83
86
|
:ARCHIVE {STRING} { [:STRING, @ss[1]]; }
|
84
87
|
:ARCHIVE {TOKEN} { [:TOKEN, text]; }
|
data/lib/build-tool/cfg/node.rb
CHANGED
data/lib/build-tool/cfg/parser.y
CHANGED
@@ -116,11 +116,14 @@ rule
|
|
116
116
|
|
117
117
|
archive_statements
|
118
118
|
: /* empty */
|
119
|
-
|
119
|
+
| archive_statement archive_statements { result = val.flatten; }
|
120
120
|
;
|
121
121
|
|
122
|
-
|
123
|
-
|
122
|
+
archive_statement
|
123
|
+
: USE REPOSITORY identifier { result = UseRepositoryNode.new( val[2] ); }
|
124
|
+
| REMOTE_PATH STRING { result = RemotePathNode.new( val[1] ); }
|
125
|
+
| repository_declaration { result = val[0]; }
|
126
|
+
;
|
124
127
|
|
125
128
|
#
|
126
129
|
### BUILD SYSTEM DECLARATION
|
@@ -226,7 +229,7 @@ rule
|
|
226
229
|
: git_statement { result = val[0]; }
|
227
230
|
| USE REPOSITORY identifier { result = UseRepositoryNode.new( val[2] ); }
|
228
231
|
| EXTERNAL STRING { result = GitSvnExternalNode.new( val[1] ); }
|
229
|
-
| REMOTE_PATH STRING { result =
|
232
|
+
| REMOTE_PATH STRING { result = RemotePathNode.new( val[1] ); }
|
230
233
|
| repository_declaration { result = val[0]; }
|
231
234
|
;
|
232
235
|
|
@@ -338,7 +341,7 @@ rule
|
|
338
341
|
svn_statement
|
339
342
|
: ONLY STRING { result = SvnCheckoutOnlyNode.new(val[1]); }
|
340
343
|
| USE REPOSITORY identifier { result = UseRepositoryNode.new( val[2] ); }
|
341
|
-
| REMOTE_PATH STRING { result =
|
344
|
+
| REMOTE_PATH STRING { result = RemotePathNode.new( val[1] ); }
|
342
345
|
| repository_declaration { result = val[0]; }
|
343
346
|
;
|
344
347
|
|
@@ -191,6 +191,24 @@ def visit_ArchiveDeclarationNode( node )
|
|
191
191
|
return @vcs
|
192
192
|
end
|
193
193
|
|
194
|
+
def visit_RepositoryDeclarationNode( node )
|
195
|
+
visitor = RepositoryDeclarationNodeVisitor.new( configuration )
|
196
|
+
@vcs.repository = node.accept( visitor )
|
197
|
+
end
|
198
|
+
|
199
|
+
def visit_UseRepositoryNode( node )
|
200
|
+
repo = configuration.repository( node.value )
|
201
|
+
if repo.nil?
|
202
|
+
raise ConfigurationError, "Unknown repository #{node.value}!"
|
203
|
+
end
|
204
|
+
@vcs.repository = repo
|
205
|
+
end
|
206
|
+
|
207
|
+
def visit_RemotePathNode( node )
|
208
|
+
@vcs.remote_path = node.value
|
209
|
+
end
|
210
|
+
|
211
|
+
|
194
212
|
end # class ArchiveDeclarationNodeVisitor
|
195
213
|
|
196
214
|
|
@@ -399,7 +417,7 @@ def visit_UseRepositoryNode( node )
|
|
399
417
|
@vcs.repository = repo
|
400
418
|
end
|
401
419
|
|
402
|
-
def
|
420
|
+
def visit_RemotePathNode( node )
|
403
421
|
@vcs.remote_path = node.value
|
404
422
|
end
|
405
423
|
|
@@ -734,7 +752,7 @@ def visit_UseRepositoryNode( node )
|
|
734
752
|
@vcs.repository = repo
|
735
753
|
end
|
736
754
|
|
737
|
-
def
|
755
|
+
def visit_RemotePathNode( node )
|
738
756
|
@vcs.remote_path = node.value
|
739
757
|
end
|
740
758
|
|
@@ -55,6 +55,7 @@ def do_execute_module( mod )
|
|
55
55
|
when 'svn'
|
56
56
|
say " Repository: %s/%s" % [ mod.vcs_configuration.repository.url, mod.vcs_configuration.remote_path ]
|
57
57
|
when 'archive'
|
58
|
+
say " URL: %s" % [ mod.vcs.archive_url ]
|
58
59
|
when 'git'
|
59
60
|
mod.vcs_configuration.remote.each do |key, val|
|
60
61
|
if val.push_url
|
@@ -12,6 +12,12 @@ def name
|
|
12
12
|
"archive"
|
13
13
|
end
|
14
14
|
|
15
|
+
def initialize
|
16
|
+
super
|
17
|
+
@repository = nil
|
18
|
+
@remote_path = nil
|
19
|
+
end
|
20
|
+
|
15
21
|
def vcs( mod )
|
16
22
|
raise StandardError if @module and ! mod.equal?( @module )
|
17
23
|
@module = mod
|
@@ -22,6 +28,22 @@ def copy_configuration( other )
|
|
22
28
|
super
|
23
29
|
end
|
24
30
|
|
31
|
+
attr_writer :repository
|
32
|
+
def repository
|
33
|
+
if @repository.nil?
|
34
|
+
raise ConfigurationError, "No repository configured for module #{mod.name}."
|
35
|
+
end
|
36
|
+
@repository
|
37
|
+
end
|
38
|
+
|
39
|
+
attr_writer :remote_path
|
40
|
+
def remote_path
|
41
|
+
if @remote_path.nil?
|
42
|
+
return @module.name
|
43
|
+
end
|
44
|
+
@remote_path
|
45
|
+
end
|
46
|
+
|
25
47
|
end # class ArchiveConfiguration
|
26
48
|
|
27
49
|
class Archive < Base
|
@@ -57,7 +79,7 @@ def archive_name
|
|
57
79
|
end
|
58
80
|
|
59
81
|
def archive_url
|
60
|
-
"#{repository.url}/#{remote_path}"
|
82
|
+
"#{config.repository.url}/#{config.remote_path}"
|
61
83
|
end
|
62
84
|
|
63
85
|
#
|
@@ -168,6 +190,17 @@ def rebase
|
|
168
190
|
0
|
169
191
|
end
|
170
192
|
|
193
|
+
def prepare_for_access
|
194
|
+
# If our server has an associated ssh-key, add it to the ssh-agent.
|
195
|
+
if config.repository.sshkey
|
196
|
+
key = config.repository.sshkey
|
197
|
+
logger.info ""
|
198
|
+
logger.info "#### Adding required ssh-key #{key.file} to ssh-agent."
|
199
|
+
MJ::Tools::SSH::add_key key.file
|
200
|
+
end
|
201
|
+
true
|
202
|
+
end
|
203
|
+
|
171
204
|
end # class Archive
|
172
205
|
|
173
206
|
end; end
|
@@ -146,9 +146,11 @@ def prepare_for_access
|
|
146
146
|
# If our server has an associated ssh-key, add it to the ssh-agent.
|
147
147
|
if config.repository.sshkey
|
148
148
|
key = config.repository.sshkey
|
149
|
-
|
150
|
-
|
151
|
-
|
149
|
+
if ! MJ::Tools::SSH::has_key? key.file
|
150
|
+
logger.info ""
|
151
|
+
logger.info "#### Adding required ssh-key #{key.file} to ssh-agent."
|
152
|
+
MJ::Tools::SSH::add_key key.file
|
153
|
+
end
|
152
154
|
end
|
153
155
|
true
|
154
156
|
end
|
data/lib/mj/tools/subprocess.rb
CHANGED
@@ -63,8 +63,14 @@ def adjust_environment( wd=nil, env=nil, lang="C" )
|
|
63
63
|
if env
|
64
64
|
env.each do |var, value|
|
65
65
|
oldenv[var] = ENV[var]
|
66
|
-
|
67
|
-
|
66
|
+
if value.nil? or value == ""
|
67
|
+
next if ENV.has_key?( value )
|
68
|
+
ENV[var] = nil
|
69
|
+
logger.verbose "Removing #{var} from environment"
|
70
|
+
else
|
71
|
+
logger.verbose "#{var} = #{value}"
|
72
|
+
ENV[var] = value
|
73
|
+
end
|
68
74
|
end
|
69
75
|
end
|
70
76
|
# Save old LANG setting and switch to 'C'
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: build-tool
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.5.
|
5
|
+
version: 0.5.2
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Michael Jansen
|
@@ -31,7 +31,7 @@ cert_chain:
|
|
31
31
|
M3zOaQdtTmiQPBqNIsE=
|
32
32
|
-----END CERTIFICATE-----
|
33
33
|
|
34
|
-
date: 2011-02-
|
34
|
+
date: 2011-02-12 00:00:00 +01:00
|
35
35
|
default_executable:
|
36
36
|
dependencies:
|
37
37
|
- !ruby/object:Gem::Dependency
|
@@ -152,7 +152,7 @@ dependencies:
|
|
152
152
|
requirements:
|
153
153
|
- - ">="
|
154
154
|
- !ruby/object:Gem::Version
|
155
|
-
version: 2.9.
|
155
|
+
version: 2.9.1
|
156
156
|
type: :development
|
157
157
|
version_requirements: *id011
|
158
158
|
description: |-
|
metadata.gz.sig
CHANGED
@@ -1,3 +1 @@
|
|
1
|
-
��
|
2
|
-
�H��^�7kc����(4ob$0A�8 0i@���TL�����
|
3
|
-
��7�|DR/7뽴X~
|
1
|
+
��zі����V*�����T�s��w�q��!�� ��P:����4�-Fl;'�u7Zo� ڎ#iCx)!b�!KN�Y)����ɍ���`2�ȱ���N�_��(A�N�9����@ d&+Z����s �T�K�s�E2���Qy$�O���>�`�!�W�BIِ/�I�0��Q��KW����bx�{��y��@�k&s钟2����49��Q_b�4#�.˴˴�%Aed�DQ��t]��Ul�
|