rake_args 0.1.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.
Files changed (4) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +26 -0
  3. data/lib/rake_args.rb +14 -0
  4. metadata +73 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: bb93b3f916c9cdb2f3404dbb08d42c048acf7c7c
4
+ data.tar.gz: f729e7a851fc26e5bd2004b011d287c52936f4d0
5
+ SHA512:
6
+ metadata.gz: 319d2150792dbfaf5a4b2f1f5113f02703a4030f128c2f5131c2cd1a67e96d64054b4b40a844656ecbeea996e0946ad3e91ec9679eb775f054ac0b10bf0a4eb1
7
+ data.tar.gz: bdf2ffd74372765d64421df7d26024768aef8717d7cf384f1ede9e1ce6472044e3527c7d70a3c094a5a3840a824b2e9b2deca30e71e2174436d3cd8f4566465e
data/README.md ADDED
@@ -0,0 +1,26 @@
1
+ # RakeArguments
2
+
3
+ One of the features that Rake lacks are reasonable methods to pass arguments into a task. The most common
4
+ method for doing so is using environment variable, for example: `$ rake namespace:task VAR1=value VAR2=value`
5
+
6
+ Then, the variable can be referred to using `ENV['VAR1']`. However, this is somewhat clumsy for users. This
7
+ gem presents a more elegant solution. With this gem, can do this: `$ rake namespace:task option1 option2`
8
+
9
+ Simply do this in your Rakefile:
10
+
11
+ ```ruby
12
+ require 'rake_args'
13
+
14
+ task :hello_world do
15
+ args = task_args :hello, :world # {:hello=>"hi", :world=>"planet"}
16
+ args.each { |k,v| puts "#{k} => #{v}" }
17
+ end
18
+ ```
19
+
20
+ The result:
21
+
22
+ ```
23
+ $ rake hello_world hi planet
24
+ :hello => hi
25
+ :world => planet
26
+ ```
data/lib/rake_args.rb ADDED
@@ -0,0 +1,14 @@
1
+ module Rake::DSL
2
+ def task_args(*arg_names)
3
+ args = {}
4
+ argv = ARGV.drop 1
5
+
6
+ argv.each do |a|
7
+ arg_name = arg_names.shift
8
+ args[arg_name] = a if arg_name
9
+ task a.to_sym {}
10
+ end
11
+
12
+ args
13
+ end
14
+ end
metadata ADDED
@@ -0,0 +1,73 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rake_args
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Ryan Breen
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-10-06 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.7'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.7'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ description: A simple Rake extension to pass arguments into a Rake task.
42
+ email: ryanbreen85@gmail.com
43
+ executables: []
44
+ extensions: []
45
+ extra_rdoc_files: []
46
+ files:
47
+ - README.md
48
+ - lib/rake_args.rb
49
+ homepage: https://github.com/rufusroflpunch/rake_args
50
+ licenses:
51
+ - MIT
52
+ metadata: {}
53
+ post_install_message:
54
+ rdoc_options: []
55
+ require_paths:
56
+ - lib
57
+ required_ruby_version: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ required_rubygems_version: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: '0'
67
+ requirements: []
68
+ rubyforge_project:
69
+ rubygems_version: 2.2.3
70
+ signing_key:
71
+ specification_version: 4
72
+ summary: RakeArguments
73
+ test_files: []