utter 1.0.21 → 1.0.23
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/lib/generators/auth_consumer_ext_gem_generator.rb +27 -0
- data/lib/{internals/core/auth.rb → generators/auth_provider_service_gem_generator.rb} +53 -0
- data/{bin/generators → lib/generators/utils}/tips.rb +1 -3
- data/lib/{internals/core/microservice.rb → utter/service.rb} +19 -2
- data/lib/utter/utter_helpers/service_spec_helper.rb +17 -0
- data/lib/utter.rb +20 -24
- data/utter.gemspec +1 -1
- metadata +13 -38
- data/lib/internals/core/service_discovery.rb +0 -2
- data/lib/internals/core/service_registration.rb +0 -2
- data/lib/internals/core/store.rb +0 -13
- data/lib/internals/testing/model_delete.rb +0 -12
- data/lib/internals/testing/spec.rb +0 -14
- data/samples/README.md +0 -3
- data/samples/gitlapse::v1::lapses/Dockerfile +0 -0
- data/samples/gitlapse::v1::lapses/Gemfile +0 -2
- data/samples/gitlapse::v1::lapses/Gemfile.lock +0 -53
- data/samples/gitlapse::v1::lapses/README.md +0 -1
- data/samples/gitlapse::v1::lapses/config.ru +0 -7
- data/samples/gitlapse::v1::lapses/domain/echo/README.md +0 -0
- data/samples/gitlapse::v1::lapses/domain/echo/lib/main.rb +0 -11
- data/samples/gitlapse::v1::lapses/domain/main.rb +0 -19
- data/samples/gitlapse::v1::lapses/gitlapse::v1::lapses.gemspec +0 -0
- data/samples/gitlapse::v1::lapses/log/README.md +0 -1
- data/samples/gitlapse::v1::lapses/microservice/README.md +0 -0
- data/samples/gitlapse::v1::lapses/microservice/lib/main.rb +0 -16
- data/samples/upjoystream::v1::auth/Gemfile +0 -4
- data/samples/upjoystream::v1::auth/Gemfile.lock +0 -34
- data/samples/upjoystream::v1::auth/config.ru +0 -16
- data/samples/upjoystream::v1::auth/microservice/lib/app.rb +0 -23
- data/samples/upjoystream::v1::torrents/Gemfile +0 -5
- data/samples/upjoystream::v1::torrents/Gemfile.lock +0 -57
- data/samples/upjoystream::v1::torrents/config.ru +0 -26
- data/samples/upjoystream::v1::torrents/domain/lib/echo_ext.rb +0 -11
- data/samples/upjoystream::v1::torrents/microservice/lib/app.rb +0 -17
- /data/{bin → exe}/utter +0 -0
- /data/{bin/generators/domain.rb → lib/generators/domain_gem_generator.rb} +0 -0
- /data/{bin/generators/extension.rb → lib/generators/ext_gem_generator.rb} +0 -0
- /data/{bin/generators/container.rb → lib/generators/project_container_gem_generator.rb} +0 -0
- /data/{bin/generators/microservice.rb → lib/generators/service_gem_generator.rb} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 446c4e69a4e1615b41d4907367c45d4221929159
|
4
|
+
data.tar.gz: 0c26ca4a5d5ff1fdbace002f638809a79a310bb7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bb58b36aa4f8341af06915bb2c3a87b7fbb88e0c91f2f7adf743beeb1726c4db6cf65977ac1a16710724e44439953fac8c32eb54a358eb29d5563ff6404ed218
|
7
|
+
data.tar.gz: 5f395d04600401cf093818ff0ebf1b1214cfa143f89395837c4e401c3c5fa1896fa424b1c879fe673033d197f4b1d136333585945f05b612ede5f47e5825d164
|
@@ -0,0 +1,27 @@
|
|
1
|
+
# http://johnnunemaker.com/httparty/
|
2
|
+
# https://github.com/jnunemaker/httparty
|
3
|
+
require 'httparty'
|
4
|
+
|
5
|
+
|
6
|
+
module Utter
|
7
|
+
module Auth
|
8
|
+
class Consumer
|
9
|
+
def initialize(app, opts={}, params={})
|
10
|
+
@app = app
|
11
|
+
@opts = opts
|
12
|
+
@params = params
|
13
|
+
end
|
14
|
+
|
15
|
+
def call(env)
|
16
|
+
#TODO use ssd to store the @params, before passing to the stack!
|
17
|
+
# extract the id from
|
18
|
+
#include SSD
|
19
|
+
p @params
|
20
|
+
p response = HTTParty.get('')
|
21
|
+
@app.call(env)
|
22
|
+
p @params
|
23
|
+
#TODO use ssd to store the @params, after passing to the stack!
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -1,3 +1,56 @@
|
|
1
|
+
# `utter new auth` generates a new microservice and add the gist of this into it.
|
2
|
+
require 'ssd'
|
3
|
+
require 'sinatra/base'
|
4
|
+
require 'json'
|
5
|
+
|
6
|
+
class Entity
|
7
|
+
include SSD
|
8
|
+
attr_accessor :id, :token
|
9
|
+
def initialize
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
|
14
|
+
class Provider < Sinatra::Base
|
15
|
+
|
16
|
+
#TODO should be post
|
17
|
+
get '/signup' do
|
18
|
+
p params
|
19
|
+
p id = params[:id]
|
20
|
+
token = Random.new_seed.to_s
|
21
|
+
|
22
|
+
entity = Utter::User.new
|
23
|
+
p entity.id = id
|
24
|
+
p entity.ssd = id
|
25
|
+
p entity.token = token
|
26
|
+
entity.append!
|
27
|
+
{:id=>id, :token=>token}.to_json
|
28
|
+
end
|
29
|
+
|
30
|
+
get '/login' do
|
31
|
+
if !params[:id].nil? && !params[:token].nil? then
|
32
|
+
p params
|
33
|
+
id = params[:id]
|
34
|
+
token = params[:token]
|
35
|
+
entity = Utter::User.ssd id
|
36
|
+
p "entity.id from the stored ssd"
|
37
|
+
p entity.id == id
|
38
|
+
p "entity.token from the stored ssd"
|
39
|
+
p entity.token
|
40
|
+
p token
|
41
|
+
if entity.id == id && entity.token == token then
|
42
|
+
{:message => "access granted"}.to_json
|
43
|
+
else
|
44
|
+
{:message => "access denied"}.to_json
|
45
|
+
end
|
46
|
+
else
|
47
|
+
{:message => "please supply matching id and token"}.to_json
|
48
|
+
end
|
49
|
+
end
|
50
|
+
run!
|
51
|
+
end
|
52
|
+
|
53
|
+
|
1
54
|
=begin
|
2
55
|
#TODO write RDoc
|
3
56
|
module Utter
|
@@ -4,12 +4,15 @@ require 'sinatra'
|
|
4
4
|
require "sinatra/json"
|
5
5
|
require 'securerandom'
|
6
6
|
require 'sinatra/cross_origin'
|
7
|
+
require 'json'
|
7
8
|
#require 'net/http' #TODO not needed as calling other services is done in Utter Domain Extensions, Net::HTTP.get('example.com', '/index.html') # => String
|
8
9
|
|
9
10
|
module Utter
|
10
11
|
module Internals
|
12
|
+
class Service < Sinatra::Base
|
13
|
+
|
14
|
+
run! if app_file == $0
|
11
15
|
|
12
|
-
class Microservice < Sinatra::Base
|
13
16
|
# if cross_origin is required\loaded then make register Sinatra::CrossOrigin
|
14
17
|
# And
|
15
18
|
#register Sinatra::CrossOrigin
|
@@ -23,7 +26,21 @@ module Utter
|
|
23
26
|
p response.headers.inspect
|
24
27
|
end
|
25
28
|
|
26
|
-
|
29
|
+
# Makes sure that any response Utter gives back is in JSON format
|
30
|
+
#TODO check if streaming needs a different class if this mechanism doesn't work with it
|
31
|
+
def route(verb, path, options = {}, &block)
|
32
|
+
super
|
33
|
+
signature.to_json # regular json
|
34
|
+
#json signature #NOTE we can use regular json or sinatra/json'
|
35
|
+
end
|
36
|
+
|
37
|
+
configure do
|
38
|
+
set :server, :puma #if development make it shotgun, if production make it puma
|
39
|
+
|
40
|
+
#NOTE http://www.sinatrarb.com/contrib/json.html
|
41
|
+
set :json_encoder, :to_json #uses sinatra/json
|
42
|
+
set :json_content_type, :js #uses sinatra/json
|
43
|
+
end
|
27
44
|
|
28
45
|
end
|
29
46
|
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# diff between helper and generator is generator stubs code for you but a helper is a code that you inheirt or use directly
|
2
|
+
=begin
|
3
|
+
# Utter service testing http://www.sinatrarb.com/testing.html
|
4
|
+
require 'minitest'
|
5
|
+
require 'minitest/spec'
|
6
|
+
require "minitest/autorun"
|
7
|
+
require "minitest/pride"
|
8
|
+
require 'rack/test'
|
9
|
+
|
10
|
+
module Utter
|
11
|
+
module Spec
|
12
|
+
# Utter service uses rack/test
|
13
|
+
class Service
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
=end
|
data/lib/utter.rb
CHANGED
@@ -3,9 +3,7 @@ require 'mushin'
|
|
3
3
|
require 'ssd'
|
4
4
|
#require 'json' #TODO need to make all responses json based by default if it is a hash and raise an error if it is not a hash!!
|
5
5
|
|
6
|
-
|
7
|
-
#require_relative "internals/core/auth"
|
8
|
-
require_relative "internals/core/microservice"
|
6
|
+
require_relative "utter/service"
|
9
7
|
|
10
8
|
|
11
9
|
# Utter defines its interfacing points here. Utter communicate seamlessly
|
@@ -15,10 +13,10 @@ require_relative "internals/core/microservice"
|
|
15
13
|
#NOTE According to Semantic Versioning 2.0.0 (http://semver.org/); Any changes
|
16
14
|
# to this file would require an upgrade to a new Major version.
|
17
15
|
module Utter
|
18
|
-
# MAJOR version when you make incompatible API changes
|
19
|
-
# MINOR version when you add functionality in a backwards-compatible manner
|
16
|
+
# MAJOR version when you make incompatible API changes
|
17
|
+
# MINOR version when you add functionality in a backwards-compatible manner
|
20
18
|
# PATCH version when you make backwards-compatible bug fixes.
|
21
|
-
VERSION = "1.0.
|
19
|
+
VERSION = "1.0.23"
|
22
20
|
|
23
21
|
$log = Logger.new(STDOUT)
|
24
22
|
|
@@ -32,7 +30,7 @@ module Utter
|
|
32
30
|
# Public::Microservice can be used to provide a microservice that doesn't require authentication.
|
33
31
|
#class Public::Microservice < Utter::Internals::Public::Microservice; end
|
34
32
|
# Private::Microservice can be used to provide a microservice that DOES require authentication.
|
35
|
-
class Service < Utter::Internals::
|
33
|
+
class Service < Utter::Internals::Service; end
|
36
34
|
|
37
35
|
# BASIC FEATURE
|
38
36
|
# Usage of non domain-specific stack inside a microservice would be like
|
@@ -62,25 +60,23 @@ module Utter
|
|
62
60
|
# the right tool for the job. Example SSD for somthing, and Redis for some Caching microservice, etc.
|
63
61
|
end
|
64
62
|
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
@app = app
|
69
|
-
@opts = opts
|
70
|
-
@params = params
|
63
|
+
class Context
|
64
|
+
def initialize &block
|
65
|
+
instance_eval &block if block_given?
|
71
66
|
end
|
67
|
+
end
|
72
68
|
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
69
|
+
# Makes sure that any class that inherits form "< Utter::Ext" must implement :initialize and :call
|
70
|
+
class Ext
|
71
|
+
def initialize
|
72
|
+
raise NotImplementedError, "Utter Extenstions implement :initialize"
|
73
|
+
end
|
74
|
+
def call
|
75
|
+
raise NotImplementedError, "Utter Extenstions implement :call"
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
class Auth
|
84
80
|
end
|
85
81
|
|
86
82
|
# ADVANCED FEATURE
|
data/utter.gemspec
CHANGED
@@ -23,8 +23,8 @@ Gem::Specification.new do |spec|
|
|
23
23
|
#end
|
24
24
|
|
25
25
|
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
26
|
+
spec.bindir = "exe"
|
26
27
|
spec.executables << 'utter'
|
27
|
-
#spec.bindir = "exe"
|
28
28
|
#spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
29
29
|
spec.require_paths = ["lib"]
|
30
30
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: utter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.23
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- zotherstupidguy
|
8
8
|
autorequire:
|
9
|
-
bindir:
|
9
|
+
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-10-
|
11
|
+
date: 2016-10-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: pry
|
@@ -362,43 +362,18 @@ files:
|
|
362
362
|
- README.md
|
363
363
|
- Rakefile
|
364
364
|
- bin/console
|
365
|
-
- bin/generators/container.rb
|
366
|
-
- bin/generators/domain.rb
|
367
|
-
- bin/generators/extension.rb
|
368
|
-
- bin/generators/microservice.rb
|
369
|
-
- bin/generators/tips.rb
|
370
365
|
- bin/setup
|
371
|
-
-
|
372
|
-
- lib/
|
373
|
-
- lib/
|
374
|
-
- lib/
|
375
|
-
- lib/
|
376
|
-
- lib/
|
377
|
-
- lib/
|
378
|
-
- lib/
|
366
|
+
- exe/utter
|
367
|
+
- lib/generators/auth_consumer_ext_gem_generator.rb
|
368
|
+
- lib/generators/auth_provider_service_gem_generator.rb
|
369
|
+
- lib/generators/domain_gem_generator.rb
|
370
|
+
- lib/generators/ext_gem_generator.rb
|
371
|
+
- lib/generators/project_container_gem_generator.rb
|
372
|
+
- lib/generators/service_gem_generator.rb
|
373
|
+
- lib/generators/utils/tips.rb
|
379
374
|
- lib/utter.rb
|
380
|
-
-
|
381
|
-
-
|
382
|
-
- samples/gitlapse::v1::lapses/Gemfile
|
383
|
-
- samples/gitlapse::v1::lapses/Gemfile.lock
|
384
|
-
- samples/gitlapse::v1::lapses/README.md
|
385
|
-
- samples/gitlapse::v1::lapses/config.ru
|
386
|
-
- samples/gitlapse::v1::lapses/domain/echo/README.md
|
387
|
-
- samples/gitlapse::v1::lapses/domain/echo/lib/main.rb
|
388
|
-
- samples/gitlapse::v1::lapses/domain/main.rb
|
389
|
-
- samples/gitlapse::v1::lapses/gitlapse::v1::lapses.gemspec
|
390
|
-
- samples/gitlapse::v1::lapses/log/README.md
|
391
|
-
- samples/gitlapse::v1::lapses/microservice/README.md
|
392
|
-
- samples/gitlapse::v1::lapses/microservice/lib/main.rb
|
393
|
-
- samples/upjoystream::v1::auth/Gemfile
|
394
|
-
- samples/upjoystream::v1::auth/Gemfile.lock
|
395
|
-
- samples/upjoystream::v1::auth/config.ru
|
396
|
-
- samples/upjoystream::v1::auth/microservice/lib/app.rb
|
397
|
-
- samples/upjoystream::v1::torrents/Gemfile
|
398
|
-
- samples/upjoystream::v1::torrents/Gemfile.lock
|
399
|
-
- samples/upjoystream::v1::torrents/config.ru
|
400
|
-
- samples/upjoystream::v1::torrents/domain/lib/echo_ext.rb
|
401
|
-
- samples/upjoystream::v1::torrents/microservice/lib/app.rb
|
375
|
+
- lib/utter/service.rb
|
376
|
+
- lib/utter/utter_helpers/service_spec_helper.rb
|
402
377
|
- utter.gemspec
|
403
378
|
homepage: https://utter-rb.github.io
|
404
379
|
licenses:
|
data/lib/internals/core/store.rb
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
=begin
|
2
|
-
#TODO delete as mushin domains wouldn't require utter users to use this model, they should be using a mushin middleware of some kind to store their shit
|
3
|
-
#TODO write RDoc
|
4
|
-
module Utter
|
5
|
-
class Model
|
6
|
-
include Utter::Store
|
7
|
-
#def self.inherited(model)
|
8
|
-
# model.send :include, SSD
|
9
|
-
#end
|
10
|
-
end
|
11
|
-
end
|
12
|
-
=end
|
data/samples/README.md
DELETED
File without changes
|
@@ -1,53 +0,0 @@
|
|
1
|
-
GEM
|
2
|
-
remote: https://rubygems.org/
|
3
|
-
specs:
|
4
|
-
coderay (1.1.1)
|
5
|
-
ibsciss-middleware (0.4.1)
|
6
|
-
method_source (0.8.2)
|
7
|
-
minitest (5.9.1)
|
8
|
-
multi_json (1.12.1)
|
9
|
-
mushin (0.1.0)
|
10
|
-
ibsciss-middleware (~> 0.3)
|
11
|
-
pry (0.10.4)
|
12
|
-
coderay (~> 1.1.0)
|
13
|
-
method_source (~> 0.8.1)
|
14
|
-
slop (~> 3.4)
|
15
|
-
puma (3.6.0)
|
16
|
-
rack (1.6.4)
|
17
|
-
rack-protection (1.5.3)
|
18
|
-
rack
|
19
|
-
rack-test (0.6.3)
|
20
|
-
rack (>= 1.0)
|
21
|
-
rake (11.3.0)
|
22
|
-
sinatra (1.4.7)
|
23
|
-
rack (~> 1.5)
|
24
|
-
rack-protection (~> 1.4)
|
25
|
-
tilt (>= 1.3, < 3)
|
26
|
-
sinatra-cross_origin (0.3.2)
|
27
|
-
sinatra-json (0.1.0)
|
28
|
-
multi_json (~> 1.0)
|
29
|
-
sinatra (~> 1.0)
|
30
|
-
slop (3.6.0)
|
31
|
-
thor (0.19.1)
|
32
|
-
tilt (2.0.5)
|
33
|
-
utter (1.0.14)
|
34
|
-
bundler
|
35
|
-
minitest
|
36
|
-
mushin
|
37
|
-
pry
|
38
|
-
puma
|
39
|
-
rack-test
|
40
|
-
rake
|
41
|
-
sinatra
|
42
|
-
sinatra-cross_origin
|
43
|
-
sinatra-json
|
44
|
-
thor
|
45
|
-
|
46
|
-
PLATFORMS
|
47
|
-
ruby
|
48
|
-
|
49
|
-
DEPENDENCIES
|
50
|
-
utter
|
51
|
-
|
52
|
-
BUNDLED WITH
|
53
|
-
1.12.5
|
@@ -1 +0,0 @@
|
|
1
|
-
#TODO say somthing about the microservice here
|
File without changes
|
@@ -1,19 +0,0 @@
|
|
1
|
-
# this file is named after the domain_name (later a mushin generated framework name)
|
2
|
-
# this should be a framework of some sort providing its way for inversion of control
|
3
|
-
# but for now it only acts like require_relative for config.ru
|
4
|
-
|
5
|
-
# How to use this main.rb file
|
6
|
-
# ------------------------------
|
7
|
-
# require 'gameon' #thats a mushin domain-specific framework for gamification
|
8
|
-
# require all the extenstions that you created here, configru
|
9
|
-
# write your rules (this file acts as your rulebook)
|
10
|
-
# GameOn.rules do
|
11
|
-
# #TODO here i write the rules i want for this microservice
|
12
|
-
# end
|
13
|
-
|
14
|
-
# Usage within the microservice/main.rb will be like
|
15
|
-
# GamOn::Stack.new(recivied_params_hash) do
|
16
|
-
# use ....
|
17
|
-
# use ....
|
18
|
-
# use ....
|
19
|
-
# end
|
File without changes
|
@@ -1 +0,0 @@
|
|
1
|
-
logs here uses append-only SSD to write timestamped logs
|
File without changes
|
@@ -1,16 +0,0 @@
|
|
1
|
-
module Gitlapse
|
2
|
-
module V1
|
3
|
-
class Lapses < Utter::Microservice
|
4
|
-
#$log.info("mounting #{self}")
|
5
|
-
get '/' do
|
6
|
-
"public info"
|
7
|
-
"private info (eyes only)"
|
8
|
-
x = Utter::Stack.new do
|
9
|
-
use Echo, "this is my message"
|
10
|
-
end
|
11
|
-
x.to_s
|
12
|
-
end
|
13
|
-
#run! if app_file == $0
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
@@ -1,34 +0,0 @@
|
|
1
|
-
GEM
|
2
|
-
remote: https://rubygems.org/
|
3
|
-
specs:
|
4
|
-
multi_json (1.12.1)
|
5
|
-
rack (1.6.4)
|
6
|
-
rack-protection (1.5.3)
|
7
|
-
rack
|
8
|
-
sinatra (1.4.7)
|
9
|
-
rack (~> 1.5)
|
10
|
-
rack-protection (~> 1.4)
|
11
|
-
tilt (>= 1.3, < 3)
|
12
|
-
sinatra-cross_origin (0.3.2)
|
13
|
-
sinatra-json (0.1.0)
|
14
|
-
multi_json (~> 1.0)
|
15
|
-
sinatra (~> 1.0)
|
16
|
-
ssd (0.1.4)
|
17
|
-
tilt (2.0.5)
|
18
|
-
utter (1.0.5)
|
19
|
-
sinatra
|
20
|
-
sinatra-cross_origin
|
21
|
-
sinatra-json
|
22
|
-
ssd
|
23
|
-
|
24
|
-
PLATFORMS
|
25
|
-
ruby
|
26
|
-
|
27
|
-
DEPENDENCIES
|
28
|
-
utter
|
29
|
-
|
30
|
-
RUBY VERSION
|
31
|
-
ruby 2.3.1p112
|
32
|
-
|
33
|
-
BUNDLED WITH
|
34
|
-
1.12.5
|
@@ -1,16 +0,0 @@
|
|
1
|
-
# config.ru (run with rackup)
|
2
|
-
##begin
|
3
|
-
# require 'rack/show_exceptions'
|
4
|
-
#rescue LoadError
|
5
|
-
# require 'rack/showexceptions'
|
6
|
-
#end
|
7
|
-
|
8
|
-
require './app'
|
9
|
-
|
10
|
-
map('/public') do
|
11
|
-
run API::V1::Public::Microservice
|
12
|
-
end
|
13
|
-
|
14
|
-
map('/private') do
|
15
|
-
run API::V1::Private::Microservice
|
16
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
require 'utter'
|
2
|
-
#require 'rack/show_exceptions'
|
3
|
-
|
4
|
-
module API
|
5
|
-
module V1
|
6
|
-
class PublicEndpoint < Utter::Public::Endpoint
|
7
|
-
$log.info("mounting #{self}")
|
8
|
-
get '/' do
|
9
|
-
"public info"
|
10
|
-
end
|
11
|
-
run! if app_file == $0
|
12
|
-
end
|
13
|
-
|
14
|
-
class PrivateEndpoint < Utter::Private::Endpoint
|
15
|
-
$log.info("mounting #{self}")
|
16
|
-
get '/' do
|
17
|
-
"private info (eyes only)"
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
@@ -1,57 +0,0 @@
|
|
1
|
-
GEM
|
2
|
-
remote: https://rubygems.org/
|
3
|
-
specs:
|
4
|
-
coderay (1.1.1)
|
5
|
-
ibsciss-middleware (0.4.1)
|
6
|
-
method_source (0.8.2)
|
7
|
-
minitest (5.9.1)
|
8
|
-
multi_json (1.12.1)
|
9
|
-
mushin (0.1.0)
|
10
|
-
ibsciss-middleware (~> 0.3)
|
11
|
-
pry (0.10.4)
|
12
|
-
coderay (~> 1.1.0)
|
13
|
-
method_source (~> 0.8.1)
|
14
|
-
slop (~> 3.4)
|
15
|
-
puma (3.6.0)
|
16
|
-
rack (1.6.4)
|
17
|
-
rack-protection (1.5.3)
|
18
|
-
rack
|
19
|
-
rack-test (0.6.3)
|
20
|
-
rack (>= 1.0)
|
21
|
-
rake (11.3.0)
|
22
|
-
sinatra (1.4.7)
|
23
|
-
rack (~> 1.5)
|
24
|
-
rack-protection (~> 1.4)
|
25
|
-
tilt (>= 1.3, < 3)
|
26
|
-
sinatra-cross_origin (0.3.2)
|
27
|
-
sinatra-json (0.1.0)
|
28
|
-
multi_json (~> 1.0)
|
29
|
-
sinatra (~> 1.0)
|
30
|
-
slop (3.6.0)
|
31
|
-
thor (0.19.1)
|
32
|
-
tilt (2.0.5)
|
33
|
-
utter (1.0.11)
|
34
|
-
bundler
|
35
|
-
minitest
|
36
|
-
mushin
|
37
|
-
pry
|
38
|
-
puma
|
39
|
-
rack-test
|
40
|
-
rake
|
41
|
-
sinatra
|
42
|
-
sinatra-cross_origin
|
43
|
-
sinatra-json
|
44
|
-
thor
|
45
|
-
|
46
|
-
PLATFORMS
|
47
|
-
ruby
|
48
|
-
|
49
|
-
DEPENDENCIES
|
50
|
-
rack
|
51
|
-
utter
|
52
|
-
|
53
|
-
RUBY VERSION
|
54
|
-
ruby 2.3.1p112
|
55
|
-
|
56
|
-
BUNDLED WITH
|
57
|
-
1.12.5
|
@@ -1,26 +0,0 @@
|
|
1
|
-
# config.ru (run with rackup)
|
2
|
-
#begin
|
3
|
-
# require 'rack/show_exceptions'
|
4
|
-
#rescue LoadError
|
5
|
-
# # require 'rack/showexceptions'
|
6
|
-
#end
|
7
|
-
#require 'bundler/setup'
|
8
|
-
#Bundler.require(:default)
|
9
|
-
|
10
|
-
require 'utter'
|
11
|
-
#require_relative './../../lib/utter'
|
12
|
-
#
|
13
|
-
Dir["domain/lib/**/*.rb"].each do |file|
|
14
|
-
p file
|
15
|
-
require_relative file
|
16
|
-
end
|
17
|
-
|
18
|
-
Dir["microservice/lib/**/*.rb"].each do |file|
|
19
|
-
p file
|
20
|
-
require_relative file
|
21
|
-
end
|
22
|
-
|
23
|
-
|
24
|
-
map('/') do
|
25
|
-
run Upjoystream::V1::Torrents
|
26
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
#require 'rack/show_exceptions'
|
2
|
-
|
3
|
-
module Upjoystream
|
4
|
-
module V1
|
5
|
-
class Torrents < Utter::Microservice
|
6
|
-
$log.info("mounting #{self}")
|
7
|
-
get '/' do
|
8
|
-
"public info"
|
9
|
-
"private info (eyes only)"
|
10
|
-
Utter::Stack.new do
|
11
|
-
use Echo, "this is my message"
|
12
|
-
end
|
13
|
-
end
|
14
|
-
#run! if app_file == $0
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
/data/{bin → exe}/utter
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|