Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKamil Trzcinski <ayufan@ayufan.eu>2016-09-14 23:32:11 +0300
committerKamil Trzcinski <ayufan@ayufan.eu>2016-09-19 11:07:13 +0300
commite1b3ab5af290f6d2eeb56c4b72e341324414a6d2 (patch)
treec5d5bb4e3d167ee8f82ab6bd1ba4955cc77a2d11 /lib/expand_variables.rb
parent2cc9a785dfdada5e2976b8341d3c9e6eae8fa66f (diff)
Verify expandability of variables defined as part of environment
Diffstat (limited to 'lib/expand_variables.rb')
-rw-r--r--lib/expand_variables.rb22
1 files changed, 12 insertions, 10 deletions
diff --git a/lib/expand_variables.rb b/lib/expand_variables.rb
index 40bf9483eb5..669735cc56c 100644
--- a/lib/expand_variables.rb
+++ b/lib/expand_variables.rb
@@ -1,15 +1,17 @@
-String.instance_eval
- def expand_variables(variables)
- # Convert hash array to variables
- if variables.is_a?(Array)
- variables = variables.reduce({}) do |hash, variable|
- hash[variable[:key]] = variable[:value]
- hash
+module ExpandVariables
+ class << self
+ def expand_variables(value, variables)
+ # Convert hash array to variables
+ if variables.is_a?(Array)
+ variables = variables.reduce({}) do |hash, variable|
+ hash[variable[:key]] = variable[:value]
+ hash
+ end
end
- end
- self.gsub(/\$([a-zA-Z_][a-zA-Z0-9_]*)|\${\g<1>}|%\g<1>%/) do
- variables[$1 || $2]
+ value.gsub(/\$([a-zA-Z_][a-zA-Z0-9_]*)|\${\g<1>}|%\g<1>%/) do
+ variables[$1 || $2]
+ end
end
end
end