build 2.1.0 → 2.2.0
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.
- checksums.yaml +4 -4
- data/build.gemspec +1 -1
- data/lib/build/chain_node.rb +8 -10
- data/lib/build/controller.rb +3 -2
- data/lib/build/task.rb +0 -2
- data/lib/build/version.rb +1 -1
- data/spec/build/controller_spec.rb +1 -0
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1cf5613f93850130355cc50e62df0c8dddc93f4c297d71170f57a45cb37519ff
|
4
|
+
data.tar.gz: 14521dbf2a1231e8fa6e9837c22b0560284b1ce2de00d0b03c0650c1d848ac4d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c708de2260aa75d700ab9a7d55a137cd327055f6d477949d70f1f8647eade97d3be64ca3ec2cd0ebb42f34a9072105d96fbfa97dbe35211b0b23077f3233bf34
|
7
|
+
data.tar.gz: 5adfdde18fddfb66ceb987b7969a40b6a7ee0fdc144a6f61653c22c88eaa949958625528388f799e4e958e1c4da9cfc8fdb05943e1350f40e73c923affbb35dc
|
data/build.gemspec
CHANGED
@@ -17,7 +17,7 @@ Gem::Specification.new do |spec|
|
|
17
17
|
|
18
18
|
spec.required_ruby_version = '>= 2.0'
|
19
19
|
|
20
|
-
spec.add_dependency "build-graph", "~> 1.
|
20
|
+
spec.add_dependency "build-graph", "~> 1.2"
|
21
21
|
spec.add_dependency "build-environment", "~> 1.3"
|
22
22
|
spec.add_dependency "build-dependency", "~> 1.4"
|
23
23
|
spec.add_dependency "build-makefile", "~> 1.0"
|
data/lib/build/chain_node.rb
CHANGED
@@ -76,21 +76,19 @@ module Build
|
|
76
76
|
# logger.debug("Local Environment: #{local_environment}")
|
77
77
|
|
78
78
|
task_class = Rulebook.for(local_environment).with(Task, environment: local_environment)
|
79
|
-
|
80
79
|
task = task_class.new(scope.walker, self, scope.group, logger: scope.logger)
|
81
80
|
|
82
81
|
output_environment = nil
|
83
82
|
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
end
|
91
|
-
|
92
|
-
public_environments << output_environment.dup(parent: nil, name: dependency.name)
|
83
|
+
task.visit do
|
84
|
+
output_environment = Build::Environment.new(local_environment, name: dependency.name)
|
85
|
+
|
86
|
+
provisions.each do |provision|
|
87
|
+
# When executing the environment build steps, we create new build nodes. But those build nodes are not capturing the right task class.
|
88
|
+
output_environment.construct!(task, *@arguments, &provision.value)
|
93
89
|
end
|
90
|
+
|
91
|
+
public_environments << output_environment.dup(parent: nil, name: dependency.name)
|
94
92
|
end
|
95
93
|
end
|
96
94
|
|
data/lib/build/controller.rb
CHANGED
@@ -60,7 +60,8 @@ module Build
|
|
60
60
|
attr :nodes
|
61
61
|
attr :walker
|
62
62
|
|
63
|
-
private def step(walker, node,
|
63
|
+
private def step(walker, node, parent_task = nil)
|
64
|
+
task_class = parent_task&.class || Task
|
64
65
|
task = task_class.new(walker, node, @group, logger: @logger)
|
65
66
|
|
66
67
|
task.visit do
|
@@ -81,7 +82,7 @@ module Build
|
|
81
82
|
@nodes.each do |node|
|
82
83
|
# We wait for all processes to complete within each node. The result is that we don't execute top level nodes concurrently, but we do execute within each node concurrently where possible. Ideally, some node could be executed concurrently, but right now expressing non-file dependencies between nodes is not possible.
|
83
84
|
@group.wait do
|
84
|
-
@walker.call(node
|
85
|
+
@walker.call(node)
|
85
86
|
end
|
86
87
|
end
|
87
88
|
end
|
data/lib/build/task.rb
CHANGED
data/lib/build/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: build
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Samuel Williams
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-03-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: build-graph
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '1.
|
19
|
+
version: '1.2'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '1.
|
26
|
+
version: '1.2'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: build-environment
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|