devflow 0.0.1 → 0.0.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 75c44216cec882533a73aa64b7a095038c67472973a497849c8a7466944a43e6
4
- data.tar.gz: 5a279601376a3fc0718a7105058e41753b3e417227ff6105cac9bd37f1d9997b
3
+ metadata.gz: c1a93feb149924a07cbc48096e88977ce751699dfb93937c90d8ec825b5c4bf0
4
+ data.tar.gz: 8a5cbd2fcf3152a56e18d3168c448ce100ce2d1d38a0cc176afb9fde84091c80
5
5
  SHA512:
6
- metadata.gz: ae4a2247ecf38d5f7d23aec8b33238940473f94faa89c6deb25117f86380fbf9a3da9e0f524450cebf2906cc7bab7a548eee5b41355fa62fe30d56cdfccf17c1
7
- data.tar.gz: cdb0aa711ebc8dec6f7bfbb9af32a4f3746784a97c407af7d080456d3abbe54c3331693c1e24012e768538624b0928cb5537e4cbe5fa5a4f0308c296aa599b0f
6
+ metadata.gz: 4dd282932c5cab478c2aaf94045439c5ce0e8eaee322c0972b23e185561cc2fe3db80f9337c82c884194c60f36c0778046f58083eff64af7fa5135d8f21d4a63
7
+ data.tar.gz: c8c6d915a9c04f64318ae8789f703cf96bb0ce0010403794963e184e563c21074ac653955d825bf46d444f7eef9c39a557364ba928020e634babd9b90c0c3bef
data/README.md ADDED
@@ -0,0 +1,33 @@
1
+ # DevFlow
2
+ __NOTE:__ This is mainly for my fellow friends at ApoEx.
3
+
4
+ ## Why?
5
+ I'm lazy. Like, super lazy. But I also really like the workflow at my current
6
+ workplace.
7
+
8
+ We plan our sprint in TargetProcess and then we name our branches to match the
9
+ UserStory in TP:
10
+ `:tp_id-some-descriptive-title`.
11
+
12
+ My shortterm memory is really bad, so I always end up going back to TP to see
13
+ find the ID for the story that I'm working on.
14
+
15
+ This gem aims to solve that.
16
+
17
+ ## How?
18
+ 1. Install the gem.
19
+ 2. The gem reads the settings through evironment variables;
20
+ * `TP_BASE_URL`
21
+ * `TP_USER_ID`
22
+ * `TP_ACCESS_TOKEN`
23
+ 3. run `df` when starting working on a new story
24
+ 4. Profit?
25
+
26
+
27
+ ## Bonus
28
+ Install [hub](https://github.com/github/hub) and add to your .gitconfig;
29
+ ```
30
+ [alias]
31
+ p-r = "!pr_template_builder | hub -c core.commentChar=';' pull-request -oe -F -"
32
+ ```
33
+ Now you can easily create PRs from the commandline!
@@ -0,0 +1,47 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "devflow"
4
+
5
+ DevFlow::TargetProcess.check_config!
6
+
7
+ story_url_base = "#{DevFlow::TargetProcess::BASE_URI}/entity"
8
+ story_url_pattern = /#{story_url_base}\/(\d+)/
9
+ story_regex = /^(\d+)-(.*)/
10
+ fv_regex = /^fv-(.*)/
11
+ branch = `git rev-parse --abbrev-ref HEAD`
12
+ pr_templates_paths = %w[
13
+ .github/PULL_REQUEST_TEMPLATE.md
14
+ ]
15
+
16
+ def titleize(str)
17
+ str.tr("-", " ").capitalize
18
+ end
19
+
20
+ case branch
21
+ when story_regex
22
+ story_id = $1
23
+ story_url = story_url_base + "/" + story_id
24
+ title = "[#{story_id}] #{titleize($2)}"
25
+ when fv_regex
26
+ story_url = ""
27
+ title = "[FV] #{titleize($1)}"
28
+ else
29
+ story_url = ""
30
+ title = titleize(branch)
31
+ end
32
+
33
+ message = if (file = pr_templates_paths.find { |p| File.exist?(p) })
34
+ <<~MESS
35
+ #{title}
36
+
37
+ #{File.read(file).gsub(story_url_pattern, story_url)}
38
+ MESS
39
+ else
40
+ <<~MESS
41
+ #{title}
42
+
43
+ #{story_url}
44
+ MESS
45
+ end
46
+
47
+ puts message
@@ -1,3 +1,3 @@
1
1
  module DevFlow
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: devflow
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
  - Micke Lisinge
@@ -43,6 +43,7 @@ email:
43
43
  - hi@micke.me
44
44
  executables:
45
45
  - df
46
+ - pr_template_builder
46
47
  extensions: []
47
48
  extra_rdoc_files: []
48
49
  files:
@@ -50,7 +51,9 @@ files:
50
51
  - Gemfile
51
52
  - Gemfile.lock
52
53
  - LICENSE
54
+ - README.md
53
55
  - bin/df
56
+ - bin/pr_template_builder
54
57
  - devflow.gemspec
55
58
  - lib/devflow.rb
56
59
  - lib/devflow/target_process.rb