pivotal_hub 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem 'tracker_api', '~> 0.2.0'
4
+ gem 'git'
data/Gemfile.lock ADDED
@@ -0,0 +1,48 @@
1
+ GEM
2
+ remote: https://rubygems.org/
3
+ specs:
4
+ addressable (2.4.0)
5
+ axiom-types (0.1.1)
6
+ descendants_tracker (~> 0.0.4)
7
+ ice_nine (~> 0.11.0)
8
+ thread_safe (~> 0.3, >= 0.3.1)
9
+ coercible (1.0.0)
10
+ descendants_tracker (~> 0.0.1)
11
+ declarative (0.0.5)
12
+ uber (>= 0.0.15)
13
+ descendants_tracker (0.0.4)
14
+ thread_safe (~> 0.3, >= 0.3.1)
15
+ equalizer (0.0.11)
16
+ excon (0.45.4)
17
+ faraday (0.9.2)
18
+ multipart-post (>= 1.2, < 3)
19
+ faraday_middleware (0.10.0)
20
+ faraday (>= 0.7.4, < 0.10)
21
+ ice_nine (0.11.1)
22
+ multipart-post (2.0.0)
23
+ oj (2.14.2)
24
+ representable (3.0.0)
25
+ declarative (~> 0.0.5)
26
+ uber (~> 0.0.15)
27
+ thread_safe (0.3.5)
28
+ tracker_api (0.2.11)
29
+ addressable
30
+ equalizer
31
+ excon
32
+ faraday (~> 0.9.0)
33
+ faraday_middleware
34
+ oj
35
+ representable
36
+ virtus
37
+ uber (0.0.15)
38
+ virtus (1.0.5)
39
+ axiom-types (~> 0.1)
40
+ coercible (~> 1.0)
41
+ descendants_tracker (~> 0.0, >= 0.0.3)
42
+ equalizer (~> 0.0, >= 0.0.9)
43
+
44
+ PLATFORMS
45
+ ruby
46
+
47
+ DEPENDENCIES
48
+ tracker_api (~> 0.2.0)
data/Rakefile ADDED
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
data/bin/pivotal-start ADDED
@@ -0,0 +1,28 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require_relative '../lib/Story'
4
+
5
+ story = Pivotal_Hub::Story.new
6
+
7
+ if story.nil?
8
+ puts "Enter a git directory and try again!"
9
+ end
10
+
11
+ current_branch = story.get_current_branch
12
+ result = /[aA-zZ]/ =~ current_branch
13
+ if result != nil
14
+ puts "Sorry, but you are not in a ticket branch. Lets stop procastinating and finally open a ticket? [y/n]"
15
+ option_typed = gets.chomp
16
+ if option_typed.upcase == 'S'
17
+
18
+ else
19
+ puts "Bye!"
20
+ exit
21
+ end
22
+ end
23
+
24
+ ticket_number = current_branch.sub /\_.*$/,''
25
+
26
+ sto = story.update_state(ticket_number,"started")
27
+ puts "Ticket Name: #{sto.name}"
28
+ puts "ticket started, lets code!"
data/lib/Story.rb ADDED
@@ -0,0 +1,32 @@
1
+ require 'tracker_api'
2
+ require 'git'
3
+
4
+ module Pivotal_Hub
5
+ class Story
6
+ attr_reader :client, :project, :git
7
+
8
+ def initialize
9
+ if File.exists?('.git')
10
+ @git = Git.open(Dir.pwd)
11
+ @client = TrackerApi::Client.new(token: @git.config('pivotal.api-token'))
12
+ @project = client.project(@git.config('pivotal.project-id'))
13
+ else
14
+ puts "Ops, you are not in git directory!"
15
+ exit
16
+ end
17
+ end
18
+
19
+ def update_state story_id, state
20
+ story = @project.story(story_id)
21
+ story.current_state = state
22
+ story.save
23
+ story
24
+ end
25
+
26
+ def get_current_branch
27
+ @git.current_branch
28
+ end
29
+
30
+ end
31
+ end
32
+
@@ -0,0 +1,3 @@
1
+ module Pivotal_Hub
2
+ VERSION = "0.0.1"
3
+ end
@@ -0,0 +1,24 @@
1
+ # coding: utf-8
2
+
3
+ lib = File.expand_path('../lib', __FILE__)
4
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
+ require 'pivotal_hub/version'
6
+
7
+ Gem::Specification.new do |spec|
8
+ spec.name = "pivotal_hub"
9
+ spec.version = Pivotal_Hub::VERSION
10
+ spec.authors = ["César Nobre"]
11
+ spec.email = ["cesarnobrefilho@gmail.com"]
12
+ spec.description = %q{Integration Pivotal Tracker to Git}
13
+ spec.summary = %q{to do the main functions}
14
+ spec.homepage = ""
15
+ spec.license = "MIT"
16
+
17
+ spec.files = `git ls-files`.split($/)
18
+ spec.executables = ["pivotal-start"]
19
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
20
+ spec.require_paths = ["lib"]
21
+
22
+ spec.add_development_dependency "bundler", "~> 1.3"
23
+ spec.add_development_dependency "rake"
24
+ end
Binary file
Binary file
metadata ADDED
@@ -0,0 +1,89 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: pivotal_hub
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - César Nobre
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2016-01-03 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: bundler
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '1.3'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '1.3'
30
+ - !ruby/object:Gem::Dependency
31
+ name: rake
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :development
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ description: Integration Pivotal Tracker to Git
47
+ email:
48
+ - cesarnobrefilho@gmail.com
49
+ executables:
50
+ - pivotal-start
51
+ extensions: []
52
+ extra_rdoc_files: []
53
+ files:
54
+ - Gemfile
55
+ - Gemfile.lock
56
+ - Rakefile
57
+ - bin/pivotal-start
58
+ - lib/Story.rb
59
+ - lib/pivotal_hub/version.rb
60
+ - pivotal-hub.gemspec
61
+ - pivotal_hub-0.0.1.gem
62
+ - pkg/pivotal-hub-0.0.1.gem
63
+ - pkg/pivotal_hub-0.0.1.gem
64
+ homepage: ''
65
+ licenses:
66
+ - MIT
67
+ post_install_message:
68
+ rdoc_options: []
69
+ require_paths:
70
+ - lib
71
+ required_ruby_version: !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ required_rubygems_version: !ruby/object:Gem::Requirement
78
+ none: false
79
+ requirements:
80
+ - - ! '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ requirements: []
84
+ rubyforge_project:
85
+ rubygems_version: 1.8.23
86
+ signing_key:
87
+ specification_version: 3
88
+ summary: to do the main functions
89
+ test_files: []