maestrano-rails 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
data/README.md
CHANGED
@@ -4,6 +4,21 @@
|
|
4
4
|
|
5
5
|
Maestrano Cloud Integration is currently in closed beta. Want to know more? Send us an email to <contact@maestrano.com>.
|
6
6
|
|
7
|
+
|
8
|
+
- - -
|
9
|
+
|
10
|
+
1. [Getting Setup](#getting-setup)
|
11
|
+
2. [Getting Started](#getting-started)
|
12
|
+
* [User Model](#user-model)
|
13
|
+
* [Group Model](#group-model)
|
14
|
+
* [Controller Setup](#controller-setup)
|
15
|
+
3. [API](https://github.com/maestrano/maestrano-ruby#api)
|
16
|
+
* [Bill](https://github.com/maestrano/maestrano-ruby#bill)
|
17
|
+
* [Recurring Bill](https://github.com/maestrano/maestrano-ruby#recurring-bill)
|
18
|
+
|
19
|
+
- - -
|
20
|
+
|
21
|
+
|
7
22
|
## Getting Setup
|
8
23
|
Before integrating with us you will need an API Key. Maestrano Cloud Integration being still in closed beta you will need to contact us beforehand to gain production access.
|
9
24
|
|
@@ -152,6 +167,11 @@ class Maestrano::Auth::SamlController < Maestrano::Rails::SamlBaseController
|
|
152
167
|
end
|
153
168
|
```
|
154
169
|
|
170
|
+
## API
|
171
|
+
The maestrano-rails gem also provides bindings to its REST API allowing you to access, create, update or delete various entities under your account (e.g: billing).
|
172
|
+
|
173
|
+
Your can read the API documentation directly on the [maestrano gem project page](https://github.com/maestrano/maestrano-ruby#api).
|
174
|
+
|
155
175
|
## Support
|
156
176
|
This README is still in the process of being written and improved. As such it might not cover some of the questions you might have.
|
157
177
|
|
@@ -33,11 +33,7 @@ class Maestrano::Rails::SamlBaseController < ApplicationController
|
|
33
33
|
if @saml_response.validate!
|
34
34
|
@user_auth_hash = Maestrano::SSO::BaseUser.new(@saml_response).to_hash
|
35
35
|
@group_auth_hash = Maestrano::SSO::BaseGroup.new(@saml_response).to_hash
|
36
|
-
@user_group_rel_hash =
|
37
|
-
user_uid: @user_auth_hash[:uid],
|
38
|
-
group_uid: @group_auth_hash[:uid],
|
39
|
-
role: @user_auth_hash[:extra][:group][:role]
|
40
|
-
}
|
36
|
+
@user_group_rel_hash = Maestrano::SSO::BaseMembership.new(@saml_response).to_hash
|
41
37
|
end
|
42
38
|
end
|
43
39
|
end
|
@@ -72,6 +72,7 @@ class SamlBaseControllerTest < ActionController::TestCase
|
|
72
72
|
should "set the user_group_rel_hash in scope" do
|
73
73
|
post :consume, SAMLResponse: "g45ad5v40xc4b3fd478"
|
74
74
|
expected_hash = {
|
75
|
+
provider: 'maestrano',
|
75
76
|
user_uid: @saml_attr['uid'],
|
76
77
|
group_uid: @saml_attr['group_uid'],
|
77
78
|
role: @saml_attr['group_role'],
|
data/test/dummy/log/test.log
CHANGED
@@ -3730,3 +3730,184 @@ Completed 302 Found in 0.6ms (ActiveRecord: 0.0ms)
|
|
3730
3730
|
[1m[35m (0.1ms)[0m rollback transaction
|
3731
3731
|
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3732
3732
|
[1m[35m (0.1ms)[0m rollback transaction
|
3733
|
+
Connecting to database specified by database.yml
|
3734
|
+
[1m[36m (0.6ms)[0m [1mbegin transaction[0m
|
3735
|
+
[1m[35mMnoCrew Load (0.5ms)[0m SELECT "mno_crews".* FROM "mno_crews" WHERE "mno_crews"."provider" = 'maestrano' AND "mno_crews"."uid" = 'usr-2' LIMIT 1
|
3736
|
+
[1m[36m (0.1ms)[0m [1mSAVEPOINT active_record_1[0m
|
3737
|
+
[1m[35mSQL (16.9ms)[0m INSERT INTO "mno_crews" ("created_at", "name", "provider", "uid", "updated_at") VALUES (?, ?, ?, ?, ?) [["created_at", Thu, 29 May 2014 13:29:11 UTC +00:00], ["name", "Monster Co"], ["provider", "maestrano"], ["uid", "usr-2"], ["updated_at", Thu, 29 May 2014 13:29:11 UTC +00:00]]
|
3738
|
+
[1m[36m (0.1ms)[0m [1mRELEASE SAVEPOINT active_record_1[0m
|
3739
|
+
[1m[35m (0.3ms)[0m rollback transaction
|
3740
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3741
|
+
[1m[35m (0.0ms)[0m SAVEPOINT active_record_1
|
3742
|
+
[1m[36mSQL (0.4ms)[0m [1mINSERT INTO "mno_crews" ("created_at", "name", "provider", "uid", "updated_at") VALUES (?, ?, ?, ?, ?)[0m [["created_at", Thu, 29 May 2014 13:29:11 UTC +00:00], ["name", "SomeOtherCrew"], ["provider", "someoneelse"], ["uid", "usr-1"], ["updated_at", Thu, 29 May 2014 13:29:11 UTC +00:00]]
|
3743
|
+
[1m[35m (0.0ms)[0m RELEASE SAVEPOINT active_record_1
|
3744
|
+
[1m[36mMnoCrew Load (0.1ms)[0m [1mSELECT "mno_crews".* FROM "mno_crews" WHERE "mno_crews"."provider" = 'maestrano' AND "mno_crews"."uid" = 'cld-1' LIMIT 1[0m
|
3745
|
+
[1m[35m (0.0ms)[0m SAVEPOINT active_record_1
|
3746
|
+
[1m[36mSQL (1.3ms)[0m [1mINSERT INTO "mno_crews" ("created_at", "name", "provider", "uid", "updated_at") VALUES (?, ?, ?, ?, ?)[0m [["created_at", Thu, 29 May 2014 13:29:11 UTC +00:00], ["name", "Your Group"], ["provider", "maestrano"], ["uid", "cld-1"], ["updated_at", Thu, 29 May 2014 13:29:11 UTC +00:00]]
|
3747
|
+
[1m[35m (0.0ms)[0m RELEASE SAVEPOINT active_record_1
|
3748
|
+
[1m[36m (0.5ms)[0m [1mrollback transaction[0m
|
3749
|
+
[1m[35m (0.0ms)[0m begin transaction
|
3750
|
+
[1m[36m (0.0ms)[0m [1mSAVEPOINT active_record_1[0m
|
3751
|
+
[1m[35mSQL (0.4ms)[0m INSERT INTO "mno_crews" ("created_at", "name", "provider", "uid", "updated_at") VALUES (?, ?, ?, ?, ?) [["created_at", Thu, 29 May 2014 13:29:11 UTC +00:00], ["name", "SomeCrew"], ["provider", "maestrano"], ["uid", "cld-1"], ["updated_at", Thu, 29 May 2014 13:29:11 UTC +00:00]]
|
3752
|
+
[1m[36m (0.0ms)[0m [1mRELEASE SAVEPOINT active_record_1[0m
|
3753
|
+
[1m[35mMnoCrew Load (0.2ms)[0m SELECT "mno_crews".* FROM "mno_crews" WHERE "mno_crews"."provider" = 'maestrano' AND "mno_crews"."uid" = 'cld-1' LIMIT 1
|
3754
|
+
[1m[36m (0.5ms)[0m [1mrollback transaction[0m
|
3755
|
+
[1m[35m (0.0ms)[0m begin transaction
|
3756
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
3757
|
+
[1m[35m (0.0ms)[0m begin transaction
|
3758
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
3759
|
+
[1m[35m (0.0ms)[0m begin transaction
|
3760
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
3761
|
+
[1m[35m (0.0ms)[0m begin transaction
|
3762
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
3763
|
+
[1m[35m (0.0ms)[0m begin transaction
|
3764
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
3765
|
+
[1m[35m (0.0ms)[0m begin transaction
|
3766
|
+
[1m[36mMnoMonster Load (0.5ms)[0m [1mSELECT "mno_monsters".* FROM "mno_monsters" WHERE "mno_monsters"."provider" = 'maestrano' AND "mno_monsters"."uid" = 'usr-2' LIMIT 1[0m
|
3767
|
+
[1m[35m (0.1ms)[0m SAVEPOINT active_record_1
|
3768
|
+
[1m[36mSQL (0.6ms)[0m [1mINSERT INTO "mno_monsters" ("created_at", "email", "first_name", "last_name", "provider", "uid", "updated_at") VALUES (?, ?, ?, ?, ?, ?, ?)[0m [["created_at", Thu, 29 May 2014 13:29:11 UTC +00:00], ["email", "monster@monst.com"], ["first_name", "Mon"], ["last_name", "Ster"], ["provider", "maestrano"], ["uid", "usr-2"], ["updated_at", Thu, 29 May 2014 13:29:11 UTC +00:00]]
|
3769
|
+
[1m[35m (0.0ms)[0m RELEASE SAVEPOINT active_record_1
|
3770
|
+
[1m[36m (0.5ms)[0m [1mrollback transaction[0m
|
3771
|
+
[1m[35m (0.0ms)[0m begin transaction
|
3772
|
+
[1m[36m (0.0ms)[0m [1mSAVEPOINT active_record_1[0m
|
3773
|
+
[1m[35mSQL (0.4ms)[0m INSERT INTO "mno_monsters" ("created_at", "email", "first_name", "last_name", "provider", "uid", "updated_at") VALUES (?, ?, ?, ?, ?, ?, ?) [["created_at", Thu, 29 May 2014 13:29:11 UTC +00:00], ["email", "monster@co.com"], ["first_name", "John"], ["last_name", "Jack"], ["provider", "someoneelse"], ["uid", "usr-1"], ["updated_at", Thu, 29 May 2014 13:29:11 UTC +00:00]]
|
3774
|
+
[1m[36m (0.0ms)[0m [1mRELEASE SAVEPOINT active_record_1[0m
|
3775
|
+
[1m[35mMnoMonster Load (0.1ms)[0m SELECT "mno_monsters".* FROM "mno_monsters" WHERE "mno_monsters"."provider" = 'maestrano' AND "mno_monsters"."uid" = 'usr-1' LIMIT 1
|
3776
|
+
[1m[36m (0.0ms)[0m [1mSAVEPOINT active_record_1[0m
|
3777
|
+
[1m[35mSQL (0.5ms)[0m INSERT INTO "mno_monsters" ("created_at", "email", "first_name", "last_name", "provider", "uid", "updated_at") VALUES (?, ?, ?, ?, ?, ?, ?) [["created_at", Thu, 29 May 2014 13:29:11 UTC +00:00], ["email", nil], ["first_name", nil], ["last_name", nil], ["provider", "maestrano"], ["uid", "usr-1"], ["updated_at", Thu, 29 May 2014 13:29:11 UTC +00:00]]
|
3778
|
+
[1m[36m (0.0ms)[0m [1mRELEASE SAVEPOINT active_record_1[0m
|
3779
|
+
[1m[35m (0.4ms)[0m rollback transaction
|
3780
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
3781
|
+
[1m[35m (0.0ms)[0m SAVEPOINT active_record_1
|
3782
|
+
[1m[36mSQL (0.5ms)[0m [1mINSERT INTO "mno_monsters" ("created_at", "email", "first_name", "last_name", "provider", "uid", "updated_at") VALUES (?, ?, ?, ?, ?, ?, ?)[0m [["created_at", Thu, 29 May 2014 13:29:11 UTC +00:00], ["email", "monster@co.com"], ["first_name", "John"], ["last_name", "Jack"], ["provider", "maestrano"], ["uid", "usr-1"], ["updated_at", Thu, 29 May 2014 13:29:11 UTC +00:00]]
|
3783
|
+
[1m[35m (0.0ms)[0m RELEASE SAVEPOINT active_record_1
|
3784
|
+
[1m[36mMnoMonster Load (0.1ms)[0m [1mSELECT "mno_monsters".* FROM "mno_monsters" WHERE "mno_monsters"."provider" = 'maestrano' AND "mno_monsters"."uid" = 'usr-1' LIMIT 1[0m
|
3785
|
+
[1m[35m (0.5ms)[0m rollback transaction
|
3786
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
3787
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
3788
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3789
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
3790
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
3791
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
3792
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3793
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
3794
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3795
|
+
Processing by PagesController#home as HTML
|
3796
|
+
Rendered pages/home.html.erb within layouts/application (10.9ms)
|
3797
|
+
Completed 200 OK in 47.8ms (Views: 47.2ms | ActiveRecord: 0.0ms)
|
3798
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3799
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
3800
|
+
Processing by PagesController#home as HTML
|
3801
|
+
Redirected to http://localhost::3000/maestrano/auth/saml/init
|
3802
|
+
Filter chain halted as :verify_maestrano_session rendered or redirected
|
3803
|
+
Completed 302 Found in 0.3ms (ActiveRecord: 0.0ms)
|
3804
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3805
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3806
|
+
Processing by PagesController#home as HTML
|
3807
|
+
Completed 200 OK in 1.4ms (Views: 1.3ms | ActiveRecord: 0.0ms)
|
3808
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3809
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3810
|
+
Processing by PagesController#home as HTML
|
3811
|
+
Completed 200 OK in 1.3ms (Views: 1.1ms | ActiveRecord: 0.0ms)
|
3812
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
3813
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3814
|
+
Processing by PagesController#home as HTML
|
3815
|
+
Completed 200 OK in 1.4ms (Views: 1.3ms | ActiveRecord: 0.0ms)
|
3816
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
3817
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3818
|
+
Processing by Maestrano::Auth::SamlController#consume as HTML
|
3819
|
+
Parameters: {"SAMLResponse"=>"g45ad5v40xc4b3fd478"}
|
3820
|
+
Bla
|
3821
|
+
Redirected to http://api-sandbox.maestrano.io/app_access_unauthorized?err=internal
|
3822
|
+
Completed 302 Found in 0.8ms (ActiveRecord: 0.0ms)
|
3823
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3824
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3825
|
+
Processing by Maestrano::Auth::SamlController#consume as HTML
|
3826
|
+
Parameters: {"SAMLResponse"=>"g45ad5v40xc4b3fd478"}
|
3827
|
+
Redirected to http://test.host/
|
3828
|
+
Completed 302 Found in 0.7ms (ActiveRecord: 0.0ms)
|
3829
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3830
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3831
|
+
Processing by Maestrano::Auth::SamlController#consume as HTML
|
3832
|
+
Parameters: {"SAMLResponse"=>"g45ad5v40xc4b3fd478"}
|
3833
|
+
Redirected to http://test.host/
|
3834
|
+
Completed 302 Found in 0.6ms (ActiveRecord: 0.0ms)
|
3835
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3836
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3837
|
+
Processing by Maestrano::Auth::SamlController#consume as HTML
|
3838
|
+
Parameters: {"SAMLResponse"=>"g45ad5v40xc4b3fd478"}
|
3839
|
+
Redirected to http://test.host/
|
3840
|
+
Completed 302 Found in 0.5ms (ActiveRecord: 0.0ms)
|
3841
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3842
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3843
|
+
Processing by Maestrano::Auth::SamlController#consume as HTML
|
3844
|
+
Parameters: {"SAMLResponse"=>"g45ad5v40xc4b3fd478"}
|
3845
|
+
Redirected to http://test.host/
|
3846
|
+
Completed 302 Found in 0.5ms (ActiveRecord: 0.0ms)
|
3847
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
3848
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3849
|
+
Processing by Maestrano::Auth::SamlController#consume as HTML
|
3850
|
+
Parameters: {"SAMLResponse"=>"g45ad5v40xc4b3fd478"}
|
3851
|
+
Redirected to http://test.host/
|
3852
|
+
Completed 302 Found in 0.6ms (ActiveRecord: 0.0ms)
|
3853
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3854
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3855
|
+
Processing by Maestrano::Auth::SamlController#consume as HTML
|
3856
|
+
Parameters: {"SAMLResponse"=>"g45ad5v40xc4b3fd478"}
|
3857
|
+
Redirected to http://test.host/
|
3858
|
+
Completed 302 Found in 0.5ms (ActiveRecord: 0.0ms)
|
3859
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3860
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3861
|
+
Processing by Maestrano::Auth::SamlController#init as HTML
|
3862
|
+
Parameters: {"a_param"=>"value"}
|
3863
|
+
Redirected to http://idpprovider.com?r=request
|
3864
|
+
Completed 302 Found in 0.5ms (ActiveRecord: 0.0ms)
|
3865
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
3866
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3867
|
+
Processing by Maestrano::Auth::SamlController#init as HTML
|
3868
|
+
Parameters: {"a_param"=>"value"}
|
3869
|
+
Redirected to http://idpprovider.com?r=request
|
3870
|
+
Completed 302 Found in 0.3ms (ActiveRecord: 0.0ms)
|
3871
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3872
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
3873
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3874
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3875
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3876
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3877
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3878
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3879
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3880
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3881
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3882
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
3883
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3884
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3885
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3886
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
3887
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3888
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3889
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3890
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3891
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3892
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3893
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3894
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3895
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3896
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3897
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3898
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
3899
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3900
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3901
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3902
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
3903
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3904
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3905
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3906
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3907
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3908
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3909
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3910
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
3911
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
3912
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
3913
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: maestrano-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.
|
5
|
+
version: 0.3.0
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Arnaud Lachaume
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2014-05-
|
13
|
+
date: 2014-05-29 00:00:00 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rails
|
@@ -31,7 +31,7 @@ dependencies:
|
|
31
31
|
requirements:
|
32
32
|
- - ~>
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
version: "0.
|
34
|
+
version: "0.3"
|
35
35
|
type: :runtime
|
36
36
|
version_requirements: *id002
|
37
37
|
- !ruby/object:Gem::Dependency
|