dev_tasks 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/dev_tasks.rb +74 -0
  3. metadata +73 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3c13b1cc287f8ffd889ff1c922903c382cbdb15a
4
- data.tar.gz: 02a610547bf24ab63c8216bdd667ebaf88827eb4
3
+ metadata.gz: 351a076877fc9debf151f411b13f50730789b7ce
4
+ data.tar.gz: 0491e4b93f9d5325c72a595039b806c156eee1a7
5
5
  SHA512:
6
- metadata.gz: 00902f5d6a007896a7519db9d1cff8fa198329379e3514833180ce693a412b8fd8eec323b56bcc4d417dd9d4896c081ff1dd2633a814baa5abc79492f6417eb5
7
- data.tar.gz: 8ec9ffb12d2eb816d56bc1f6e2baaf3cff14599fb93d17448331c883c35f477890ac6653f2f9df82ce6f6be2a1d4e10d8953a7a9b4e1ad0eefd06ab9187ec6bf
6
+ metadata.gz: 247810a27b2cadfc2be17dcb0e86f2f35ff57ed2401c5a2188251b840f24afbd0763fe18735a08a79be0e1083e9ccde5662af4d8c75b90779e006744405ac967
7
+ data.tar.gz: 8ddb5a5422629f557951e894a107b28ea86d23a155af2f3fb5c53831ef2d4ff04a4fd91a06e478ef17b4b46403c3dbca327db8fe12b7722befb450f822393577
@@ -0,0 +1,74 @@
1
+ require 'semver'
2
+ require 'rake'
3
+ require 'awesome_print'
4
+ include Rake::DSL
5
+
6
+ require_relative './commands.rb'
7
+ require_relative './console.rb'
8
+
9
+ class DevTasks
10
+
11
+ attr_accessor :version, :commands
12
+
13
+ def initialize
14
+ v=SemVer.find
15
+ @version="#{v.major}.#{v.minor}.#{v.patch}"
16
+ about
17
+ @commands=Commands.new
18
+ update_tasks
19
+ end
20
+
21
+ def about
22
+ puts Color.green + "dev_tasks " + version + Color.clear
23
+ end
24
+
25
+ def execute_task task
26
+ start_time=Time.now
27
+ Console.announce_task_start task
28
+ if(!@commands.has_key?(task))
29
+ puts "no commands discovered for task " + task
30
+ else
31
+ @commands[task].each {|c| @commands.execute_command(c) }
32
+ end
33
+ end_time=Time.now
34
+ elapsed=end_time-start_time
35
+ elapsed_str="[" + "%.0f" %(elapsed) + "s]"
36
+ Console.announce_task_end task, elapsed_str
37
+ end
38
+
39
+ def define_task task_name
40
+ if(!Rake::Task.task_defined?(task_name))
41
+ ruby="desc '#{task_name} task';task :#{task_name} do;DEV_TASKS.execute_task '#{task_name}';end"
42
+ eval(ruby)
43
+ end
44
+ end
45
+
46
+ def update_tasks
47
+ dev_task_defaults=Array.new
48
+ ["build","test","add","commit","push"].each{|task|
49
+ if @commands.has_key? task
50
+ define_task(task)
51
+ dev_task_defaults << task
52
+ end
53
+ }
54
+
55
+ if(!Rake::Task.task_defined?('dev_tasks_default'))
56
+ tasklist=""
57
+ dev_task_defaults.each{|t|
58
+ tasklist = tasklist + "," if tasklist.length > 0
59
+ tasklist = tasklist + ":" + t
60
+ }
61
+ ruby="desc 'dev_tasks_default task';task :dev_tasks_default => [#{tasklist}] do;end"
62
+ eval(ruby)
63
+ end
64
+ end
65
+
66
+ end
67
+
68
+ DEV_TASKS=DevTasks.new
69
+
70
+ desc 'displays dev_task commands'
71
+ task :show_commands do
72
+ puts "DEV_TASKS.commands"
73
+ ap DEV_TASKS.commands
74
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dev_tasks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lou Parslow
@@ -9,7 +9,77 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2014-10-11 00:00:00.000000000 Z
12
- dependencies: []
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: term/ansicolor
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: term/semver
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: term/rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: awesome_print
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
13
83
  description: A simple hello world gem
14
84
  email: lou.parslow@gmail.com
15
85
  executables: []
@@ -37,9 +107,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
37
107
  version: '0'
38
108
  requirements: []
39
109
  rubyforge_project:
40
- rubygems_version: 2.0.3
110
+ rubygems_version: 2.0.14
41
111
  signing_key:
42
112
  specification_version: 4
43
113
  summary: development rake tasks
44
114
  test_files: []
45
- has_rdoc: