phoebus 0.0.6 → 0.0.7
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 +4 -4
- data/README.md +63 -38
- data/docs/METHODOLOGY.md +72 -0
- data/docs/METHODOLOGY.pdf +0 -0
- data/lib/phoebus/version.rb +1 -1
- data/lib/phoebus.rb +4 -0
- data/phoebus.gemspec +0 -1
- data/test/phoebus_test.rb +1 -1
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7b4130794ca4226dc3391c5453b2b3310e618d31
|
4
|
+
data.tar.gz: 921350e36bedbde9dca7eae97f3b0522238d02d2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 108d0f147b4e83e3e205ae0720f59b599d77a8c80a85a6f5842cb322459f92b07bc6c2dc9d5c2d38c33b730d64f112f98d026476bec46048fa1081150dec4254
|
7
|
+
data.tar.gz: b8c19f706df4b23449fb9bba987c398c9e2888d7435c35ddd2f5fd309ee5cf4e3fe0d86f8cb715fd81c88e0dc3a5059e91534183c6cf4c883beb9cbe1c1d43a4
|
data/README.md
CHANGED
@@ -19,9 +19,50 @@ Started out as [Phoebe](https://en.wikipedia.org/wiki/Phoebe_(mythology)), Titan
|
|
19
19
|
|
20
20
|
So had to create a new project or modify the existing project and substituting 'hoebus' for 'hoebe' was easiest. Turns out that "Phoebus" (bright or brilliant) is the epithet of [Apollo](https://en.wikipedia.org/wiki/Apollo), Coeus' grandson through his daughter [Leto](https://en.wikipedia.org/wiki/Leto).
|
21
21
|
|
22
|
+
- - - - - - - - - - - - - - - - - - - -
|
23
|
+
## WORKFLOW ##
|
24
|
+
- - - - - - - - - - - - - - - - - - - -
|
25
|
+
|
26
|
+
http://bundler.io/v1.12/bundler_workflow.html
|
27
|
+
|
28
|
+
_gem build OR rake_
|
29
|
+
gem build phoebus.gemspec
|
30
|
+
gem push phoebus-0.0.2.gem
|
31
|
+
|
32
|
+
_rake_
|
33
|
+
rake -T
|
34
|
+
rake build
|
35
|
+
rake install
|
36
|
+
|
37
|
+
_git_
|
38
|
+
git add -A
|
39
|
+
git commit -a -m "Update 0.0.2"
|
40
|
+
git push origin master
|
41
|
+
|
42
|
+
_test_
|
43
|
+
irb -Ilib -rphoebus
|
44
|
+
Phoebus.ipsum
|
45
|
+
|
46
|
+
_release_
|
47
|
+
rake build
|
48
|
+
rake install
|
49
|
+
rake release
|
50
|
+
|
51
|
+
- - - - - - - - - - - - - - - - - - - -
|
52
|
+
## DEPENDENCIES ##
|
53
|
+
- - - - - - - - - - - - - - - - - - - -
|
54
|
+
|
55
|
+
RVM
|
56
|
+
Git
|
57
|
+
Bundler
|
58
|
+
Gem
|
59
|
+
Rake
|
60
|
+
Minitest, Tilt, Redcarpet
|
61
|
+
gPRC
|
62
|
+
Coeus
|
22
63
|
|
23
64
|
- - - - - - - - - - - - - - - - - - - -
|
24
|
-
##
|
65
|
+
## SETUP ##
|
25
66
|
- - - - - - - - - - - - - - - - - - - -
|
26
67
|
|
27
68
|
Initializing the environment for creating a gem using rvm, gem, bundler and rake.
|
@@ -34,7 +75,7 @@ rvm use ruby-2.3.3@phoebus --ruby-version --create
|
|
34
75
|
|
35
76
|
gem install bundler
|
36
77
|
|
37
|
-
|
78
|
+
###_BUNDLER_###
|
38
79
|
|
39
80
|
_bundler - setup_
|
40
81
|
cd ~/Sites
|
@@ -43,11 +84,24 @@ cd phoebus
|
|
43
84
|
bundle install
|
44
85
|
bundle update
|
45
86
|
|
46
|
-
##
|
87
|
+
## FILES AND DIRECTORIES ###
|
47
88
|
|
48
89
|
|
49
90
|
_phoebus.gemspec_
|
50
91
|
|
92
|
+
lib = File.expand_path("../lib", __FILE__)
|
93
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
94
|
+
require "phoebus/version"
|
95
|
+
|
96
|
+
Gem::Specification.new do |spec|
|
97
|
+
...
|
98
|
+
spec.add_development_dependency "bundler", "~> 1.15"
|
99
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
100
|
+
spec.add_development_dependency "minitest"
|
101
|
+
spec.add_development_dependency 'tilt'
|
102
|
+
spec.add_development_dependency 'redcarpet'
|
103
|
+
end
|
104
|
+
|
51
105
|
_Gemfile_
|
52
106
|
|
53
107
|
source "https://rubygems.org" do
|
@@ -58,8 +112,8 @@ end
|
|
58
112
|
_Rakefile_
|
59
113
|
|
60
114
|
require 'bundler'
|
115
|
+
require "bundler/gem_tasks"
|
61
116
|
require 'rake/testtask'
|
62
|
-
Bundler::GemHelper.install_tasks
|
63
117
|
|
64
118
|
Rake::TestTask.new do |t|
|
65
119
|
t.libs << 'test'
|
@@ -87,44 +141,16 @@ module Phoebus
|
|
87
141
|
VERSION = "0.0.1"
|
88
142
|
end
|
89
143
|
|
90
|
-
mkdir test
|
91
|
-
|
92
144
|
_test/test_helper.rb_
|
93
145
|
|
94
146
|
require 'phoebus'
|
95
|
-
require 'minitest
|
147
|
+
require 'minitest'
|
96
148
|
require 'minitest/autorun'
|
149
|
+
require 'minitest/unit'
|
97
150
|
require 'minitest/pride'
|
151
|
+
require 'minitest/spec'
|
98
152
|
|
99
153
|
|
100
|
-
## Workflow ##
|
101
|
-
|
102
|
-
http://bundler.io/v1.12/bundler_workflow.html
|
103
|
-
|
104
|
-
_gem build OR rake_
|
105
|
-
gem build phoebus.gemspec
|
106
|
-
gem push phoebus-0.0.2.gem
|
107
|
-
|
108
|
-
_rake_
|
109
|
-
rake -T
|
110
|
-
rake build
|
111
|
-
rake install
|
112
|
-
|
113
|
-
_git_
|
114
|
-
git add -A
|
115
|
-
git commit -a -m "Update 0.0.2"
|
116
|
-
git push origin master
|
117
|
-
|
118
|
-
_test_
|
119
|
-
irb -Ilib -rphoebus
|
120
|
-
Phoebus.ipsum
|
121
|
-
|
122
|
-
rake release
|
123
|
-
|
124
|
-
_upon Gemfile change_
|
125
|
-
|
126
|
-
bundle install
|
127
|
-
|
128
154
|
## GIT ##
|
129
155
|
|
130
156
|
_login to [bitbucket](http://bitbucket.org) and create repository manually instead of this_
|
@@ -172,13 +198,10 @@ coeus_services_pb.rb
|
|
172
198
|
## GEM ##
|
173
199
|
- - - - - - - - - - - - - - - - - - - -
|
174
200
|
|
175
|
-
|
176
201
|
_edit_
|
177
202
|
Gemfile
|
178
203
|
bundle update
|
179
204
|
|
180
|
-
us.rb", "lib/phoebus/coeus.rb", "lib/phoebus/coeus_pb.rb", "lib/phoebus/coeus_services_pb.rb"]
|
181
|
-
|
182
205
|
_gem OR rake_
|
183
206
|
gem build phoebus.gemspec
|
184
207
|
gem install phoebus-0.0.2.gem
|
@@ -231,7 +254,9 @@ gem push phoebus-0.0.1.gem
|
|
231
254
|
# END
|
232
255
|
- - - - - - - - - - - - - - - - - - - -
|
233
256
|
|
257
|
+
## Documentation
|
234
258
|
|
259
|
+
pandoc -o METHODOLOGY.pdf METHODOLOGY.md
|
235
260
|
|
236
261
|
## Installation
|
237
262
|
|
data/docs/METHODOLOGY.md
ADDED
@@ -0,0 +1,72 @@
|
|
1
|
+
# METHODOLOGY #
|
2
|
+
|
3
|
+
We start with [Behavior-Driven Development](https://semaphoreci.com/community/tutorials/behavior-driven-development)
|
4
|
+
|
5
|
+
We adhere to the [Twelve-Factor App](https://12factor.net/config) for building Software-as-a-Service (SAAS) apps. We've added one more factor, Tools, for overall development
|
6
|
+
|
7
|
+
0. _Tools_ - On Mac we use standard development tools: Brew, Ruby, RVM, Gem, Bundler, Rake, and Docker.
|
8
|
+
|
9
|
+
1. _Codebase_ - One codebase tracked in revision control, many deploys: GIT, GitHub, and Bitbucket
|
10
|
+
|
11
|
+
2. _Dependencies_ - Explicitly declare and isolate dependencies: RubyGems
|
12
|
+
|
13
|
+
3. _Config_ - Store config in the environment: dotenv
|
14
|
+
|
15
|
+
4. _Backing_ - Treat backing services as attached resources: Google datastore, Postgresql, Redis and Elasticsearch
|
16
|
+
|
17
|
+
5. _Workflow_ - Strictly separate build and run stages. Rake, minitest
|
18
|
+
|
19
|
+
6. _Processes_ - Execute the app as one or more stateless processes: Rails (asset pipeline), NGINX (web server), Puma (rails server)
|
20
|
+
|
21
|
+
7. _Binding_ - Export services via port binding: HTTP Ports, Unix Sockets
|
22
|
+
|
23
|
+
8. _Concurrency_ - Scale out via the process model: Upstart
|
24
|
+
|
25
|
+
9. _Disposability_ - Maximize robustness with fast startup and graceful shutdown: SIGTERM
|
26
|
+
|
27
|
+
10. _Parity_ - Keep development, staging, and production as similar as possible: Docker (Containers)
|
28
|
+
|
29
|
+
11. _Logs_ - Treat logs as event streams: DEBUG, INFO
|
30
|
+
|
31
|
+
12. _Admin_ - Run admin/management tasks as one-off processes: Rake, IRB
|
32
|
+
|
33
|
+
In summary, we use Brew, Ruby, RVM, Gem, and Bundler, Rake, irb, GIT, RubyGems, dotenv, Google datastore, Postgresql, Redis, Elasticsearch, NGINX, Puma, Ports, Sockets, Upstart, and Docker.
|
34
|
+
|
35
|
+
## DOCUMENTATION ##
|
36
|
+
|
37
|
+
We try to document in-place, enabling automated generation of document in different formats for different purposes starting with:
|
38
|
+
|
39
|
+
[Markdown](https://en.wikipedia.org/wiki/Markdown), specifically following [Daring Fireball](https://daringfireball.net/projects/markdown/syntax).
|
40
|
+
|
41
|
+
this allows us to use [pandoc](http://pandoc.org) to generate PDFs, for example.
|
42
|
+
|
43
|
+
We also are considering using [Web Sequence Diagrams](https://www.websequencediagrams.com) for design and testing.
|
44
|
+
|
45
|
+
pandoc -o METHODOLOGY.pdf METHODOLOGY.md
|
46
|
+
|
47
|
+
## CODICIL ##
|
48
|
+
|
49
|
+
GIF is pronounced with a hard "G". The only correct answer is Emacs.
|
50
|
+
|
51
|
+
## TODO ##
|
52
|
+
|
53
|
+
Versions
|
54
|
+
|
55
|
+
## END ##
|
56
|
+
|
57
|
+
|
58
|
+
|
59
|
+
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
|
71
|
+
|
72
|
+
|
Binary file
|
data/lib/phoebus/version.rb
CHANGED
data/lib/phoebus.rb
CHANGED
@@ -49,8 +49,12 @@ module Phoebus
|
|
49
49
|
# puts "key: #{key}"
|
50
50
|
# puts "crt: #{crt}"
|
51
51
|
#
|
52
|
+
|
53
|
+
puts "Creds"
|
52
54
|
creds = GRPC::Core::ChannelCredentials.new(ca, key, crt)
|
55
|
+
puts "COEUS"
|
53
56
|
$coeus = Coeus::CoeusService::Stub.new(coeus_server, creds)
|
57
|
+
puts "JWT"
|
54
58
|
|
55
59
|
jwt = $coeus.auth(Coeus::Account.new(email: 'bauer@brilliantarc.com', password: 'brilliant!'))
|
56
60
|
puts
|
data/phoebus.gemspec
CHANGED
@@ -25,7 +25,6 @@ Gem::Specification.new do |spec|
|
|
25
25
|
spec.add_development_dependency "bundler", "~> 1.15"
|
26
26
|
spec.add_development_dependency "rake", "~> 10.0"
|
27
27
|
spec.add_development_dependency "minitest"
|
28
|
-
# spec.add_development_dependency "minitest-reporters"
|
29
28
|
spec.add_development_dependency 'tilt'
|
30
29
|
spec.add_development_dependency 'redcarpet'
|
31
30
|
|
data/test/phoebus_test.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: phoebus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Bauer
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-06-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -99,6 +99,8 @@ files:
|
|
99
99
|
- certs/coeus/client.crt
|
100
100
|
- certs/coeus/client.key
|
101
101
|
- config/config.yaml
|
102
|
+
- docs/METHODOLOGY.md
|
103
|
+
- docs/METHODOLOGY.pdf
|
102
104
|
- lib/phoebus.rb
|
103
105
|
- lib/phoebus/coeus.rb
|
104
106
|
- lib/phoebus/coeus_pb.rb
|
@@ -126,7 +128,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
126
128
|
version: '0'
|
127
129
|
requirements: []
|
128
130
|
rubyforge_project:
|
129
|
-
rubygems_version: 2.
|
131
|
+
rubygems_version: 2.2.2
|
130
132
|
signing_key:
|
131
133
|
specification_version: 4
|
132
134
|
summary: Phoebus
|