maestrano-rails 0.2.0 → 0.3.0
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.
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
|