scim_rails 0.2.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +69 -0
- data/Rakefile +1 -1
- data/app/controllers/concerns/scim_rails/exception_handler.rb +8 -5
- data/app/controllers/scim_rails/application_controller.rb +20 -4
- data/app/controllers/scim_rails/scim_users_controller.rb +28 -10
- data/config/environment.rb +0 -0
- data/lib/generators/scim_rails/templates/initializer.rb +19 -3
- data/lib/scim_rails.rb +1 -0
- data/lib/scim_rails/config.rb +17 -5
- data/lib/scim_rails/encoder.rb +25 -0
- data/lib/scim_rails/version.rb +3 -1
- data/spec/controllers/scim_rails/scim_users_controller_spec.rb +144 -59
- data/spec/controllers/scim_rails/scim_users_request_spec.rb +41 -19
- data/spec/dummy/config/initializers/scim_rails_config.rb +3 -0
- data/spec/dummy/config/routes.rb +1 -1
- data/spec/dummy/db/development.sqlite3 +0 -0
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/dummy/log/test.log +5267 -56757
- data/spec/dummy/tmp/cache/assets/sprockets/v3.0/K3/K3kRdEIVqv2uHDkXatQjmCumpOCKxtnexZuiH4Ad37A.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v3.0/TH/THOPrXYljWHCQGbFjofWsaZNw7w-hfqfI3-hnxWyGas.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v3.0/TW/TW6bO0RoLe0_sbLapNXYMgZbgPTnnSFdrhh6pv917KA.cache +2 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v3.0/kW/kWKxWPvgf53JDnfwnEOVTJYtSWS971rKq3BhmUzYaXY.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v3.0/mX/mX1nlsL_SWOB4y22W5FheRX0YEONKyOY7xUeIvRiHco.cache +2 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v3.0/pR/pRHZ5T7C7u6vDXHn5oM357U3KshRFgRMbA53zz4Azcw.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v3.0/q8/q8BHffCjwsZ85QWxK1lyx5t_0jQSLlTtLGhRrwuWXGI.cache +0 -0
- data/spec/factories/company.rb +4 -1
- data/spec/lib/scim_rails/encoder_spec.rb +62 -0
- data/spec/support/scim_rails_config.rb +3 -0
- metadata +65 -15
- data/spec/dummy/log/development.log +0 -37
data/spec/dummy/tmp/cache/assets/sprockets/v3.0/K3/K3kRdEIVqv2uHDkXatQjmCumpOCKxtnexZuiH4Ad37A.cache
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
"%�aY}�)�vH`�=�T��y��-��0�@��g~�
|
data/spec/dummy/tmp/cache/assets/sprockets/v3.0/TH/THOPrXYljWHCQGbFjofWsaZNw7w-hfqfI3-hnxWyGas.cache
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
I"�app/assets/javascripts/application.js?type=application/javascript&pipeline=self&id=a9d06834a4c5a044d2334d66055c72553c283ddbc7e32583225f5d011eb3d0e0:ET
|
data/spec/dummy/tmp/cache/assets/sprockets/v3.0/kW/kWKxWPvgf53JDnfwnEOVTJYtSWS971rKq3BhmUzYaXY.cache
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
"%��B�����șo�$'�A�d��L���xR�U
|
data/spec/dummy/tmp/cache/assets/sprockets/v3.0/pR/pRHZ5T7C7u6vDXHn5oM357U3KshRFgRMbA53zz4Azcw.cache
ADDED
Binary file
|
data/spec/dummy/tmp/cache/assets/sprockets/v3.0/q8/q8BHffCjwsZ85QWxK1lyx5t_0jQSLlTtLGhRrwuWXGI.cache
ADDED
Binary file
|
data/spec/factories/company.rb
CHANGED
@@ -0,0 +1,62 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe ScimRails::Encoder do
|
4
|
+
let(:company) { Company.new(subdomain: "test") }
|
5
|
+
|
6
|
+
describe "::encode" do
|
7
|
+
context "with signing configuration" do
|
8
|
+
it "generates a signed token with the company attribute" do
|
9
|
+
token = ScimRails::Encoder.encode(company)
|
10
|
+
payload = ScimRails::Encoder.decode(token)
|
11
|
+
|
12
|
+
expect(token).to match /[a-z|A-Z|0-9.]{16,}\.[a-z|A-Z|0-9.]{16,}/
|
13
|
+
expect(payload).to contain_exactly(["iat", Integer], ["subdomain", "test"])
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
context "without signing configuration" do
|
18
|
+
before do
|
19
|
+
allow(ScimRails.config).to receive(:signing_secret).and_return(nil)
|
20
|
+
allow(ScimRails.config).to receive(:signing_algorithm).and_return(ScimRails::Config::ALGO_NONE)
|
21
|
+
end
|
22
|
+
|
23
|
+
it "generates an unsigned token with the company attribute" do
|
24
|
+
token = ScimRails::Encoder.encode(company)
|
25
|
+
payload = ScimRails::Encoder.decode(token)
|
26
|
+
|
27
|
+
expect(token).to match /[a-z|A-Z|0-9.]{16,}/
|
28
|
+
expect(payload).to contain_exactly(["iat", Integer], ["subdomain", "test"])
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
describe "::decode" do
|
34
|
+
let(:token) { ScimRails::Encoder.encode(company) }
|
35
|
+
|
36
|
+
it "raises InvalidCredentials error for an invalid token" do
|
37
|
+
token = "f487bf84bfub4f74fj4894fnh483f4h4u8f"
|
38
|
+
expect { ScimRails::Encoder.decode(token) }.to raise_error ScimRails::ExceptionHandler::InvalidCredentials
|
39
|
+
end
|
40
|
+
|
41
|
+
context "with signing configuration" do
|
42
|
+
it "decodes a signed token, returning the company attributes" do
|
43
|
+
payload = ScimRails::Encoder.decode(token)
|
44
|
+
|
45
|
+
expect(payload).to contain_exactly(["iat", Integer], ["subdomain", "test"])
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
context "without signing configuration" do
|
50
|
+
before do
|
51
|
+
allow(ScimRails.config).to receive(:signing_secret).and_return(nil)
|
52
|
+
allow(ScimRails.config).to receive(:signing_algorithm).and_return(ScimRails::Config::ALGO_NONE)
|
53
|
+
end
|
54
|
+
|
55
|
+
it "decodes an unsigned token, returning the company attributes" do
|
56
|
+
payload = ScimRails::Encoder.decode(token)
|
57
|
+
|
58
|
+
expect(payload).to contain_exactly(["iat", Integer], ["subdomain", "test"])
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
@@ -10,6 +10,9 @@ ScimRails.configure do |config|
|
|
10
10
|
config.scim_users_scope = :users
|
11
11
|
config.scim_users_list_order = :id
|
12
12
|
|
13
|
+
config.signing_algorithm = "HS256"
|
14
|
+
config.signing_secret = "2d6806dd11c2fece2e81b8ca76dcb0062f5b08e28e3264e8ba1c44bbd3578b70"
|
15
|
+
|
13
16
|
config.user_deprovision_method = :archive!
|
14
17
|
config.user_reprovision_method = :unarchive!
|
15
18
|
|
metadata
CHANGED
@@ -1,29 +1,63 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: scim_rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Spencer Alan
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-03-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '5.0'
|
20
|
+
- - "<"
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '6.2'
|
20
23
|
type: :runtime
|
21
24
|
prerelease: false
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
23
26
|
requirements:
|
24
|
-
- - "
|
27
|
+
- - ">="
|
25
28
|
- !ruby/object:Gem::Version
|
26
29
|
version: '5.0'
|
30
|
+
- - "<"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '6.2'
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: jwt
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - ">="
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '1.5'
|
40
|
+
type: :runtime
|
41
|
+
prerelease: false
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
43
|
+
requirements:
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '1.5'
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: appraisal
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :development
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
requirements:
|
58
|
+
- - ">="
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '0'
|
27
61
|
- !ruby/object:Gem::Dependency
|
28
62
|
name: bundler
|
29
63
|
requirement: !ruby/object:Gem::Requirement
|
@@ -58,28 +92,28 @@ dependencies:
|
|
58
92
|
requirements:
|
59
93
|
- - "~>"
|
60
94
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
95
|
+
version: '13.0'
|
62
96
|
type: :development
|
63
97
|
prerelease: false
|
64
98
|
version_requirements: !ruby/object:Gem::Requirement
|
65
99
|
requirements:
|
66
100
|
- - "~>"
|
67
101
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
102
|
+
version: '13.0'
|
69
103
|
- !ruby/object:Gem::Dependency
|
70
104
|
name: rspec-rails
|
71
105
|
requirement: !ruby/object:Gem::Requirement
|
72
106
|
requirements:
|
73
107
|
- - "~>"
|
74
108
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
109
|
+
version: '5.0'
|
76
110
|
type: :development
|
77
111
|
prerelease: false
|
78
112
|
version_requirements: !ruby/object:Gem::Requirement
|
79
113
|
requirements:
|
80
114
|
- - "~>"
|
81
115
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
116
|
+
version: '5.0'
|
83
117
|
- !ruby/object:Gem::Dependency
|
84
118
|
name: sqlite3
|
85
119
|
requirement: !ruby/object:Gem::Requirement
|
@@ -89,7 +123,7 @@ dependencies:
|
|
89
123
|
version: '1.3'
|
90
124
|
- - "<"
|
91
125
|
- !ruby/object:Gem::Version
|
92
|
-
version: '1.
|
126
|
+
version: '1.5'
|
93
127
|
type: :development
|
94
128
|
prerelease: false
|
95
129
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -99,7 +133,7 @@ dependencies:
|
|
99
133
|
version: '1.3'
|
100
134
|
- - "<"
|
101
135
|
- !ruby/object:Gem::Version
|
102
|
-
version: '1.
|
136
|
+
version: '1.5'
|
103
137
|
description: SCIM Adapter for Rails.
|
104
138
|
email:
|
105
139
|
- devops@lessonly.com
|
@@ -119,6 +153,7 @@ files:
|
|
119
153
|
- app/models/scim_rails/authorize_api_request.rb
|
120
154
|
- app/models/scim_rails/scim_count.rb
|
121
155
|
- app/models/scim_rails/scim_query_parser.rb
|
156
|
+
- config/environment.rb
|
122
157
|
- config/initializers/mime_types.rb
|
123
158
|
- config/routes.rb
|
124
159
|
- lib/generators/scim_rails/USAGE
|
@@ -126,6 +161,7 @@ files:
|
|
126
161
|
- lib/generators/scim_rails/templates/initializer.rb
|
127
162
|
- lib/scim_rails.rb
|
128
163
|
- lib/scim_rails/config.rb
|
164
|
+
- lib/scim_rails/encoder.rb
|
129
165
|
- lib/scim_rails/engine.rb
|
130
166
|
- lib/scim_rails/version.rb
|
131
167
|
- lib/tasks/scim_rails_tasks.rake
|
@@ -184,7 +220,6 @@ files:
|
|
184
220
|
- spec/dummy/db/schema.rb
|
185
221
|
- spec/dummy/db/seeds.rb
|
186
222
|
- spec/dummy/db/test.sqlite3
|
187
|
-
- spec/dummy/log/development.log
|
188
223
|
- spec/dummy/log/test.log
|
189
224
|
- spec/dummy/public/404.html
|
190
225
|
- spec/dummy/public/422.html
|
@@ -192,8 +227,16 @@ files:
|
|
192
227
|
- spec/dummy/public/apple-touch-icon-precomposed.png
|
193
228
|
- spec/dummy/public/apple-touch-icon.png
|
194
229
|
- spec/dummy/public/favicon.ico
|
230
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/K3/K3kRdEIVqv2uHDkXatQjmCumpOCKxtnexZuiH4Ad37A.cache
|
231
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/TH/THOPrXYljWHCQGbFjofWsaZNw7w-hfqfI3-hnxWyGas.cache
|
232
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/TW/TW6bO0RoLe0_sbLapNXYMgZbgPTnnSFdrhh6pv917KA.cache
|
233
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/kW/kWKxWPvgf53JDnfwnEOVTJYtSWS971rKq3BhmUzYaXY.cache
|
234
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/mX/mX1nlsL_SWOB4y22W5FheRX0YEONKyOY7xUeIvRiHco.cache
|
235
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/pR/pRHZ5T7C7u6vDXHn5oM357U3KshRFgRMbA53zz4Azcw.cache
|
236
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/q8/q8BHffCjwsZ85QWxK1lyx5t_0jQSLlTtLGhRrwuWXGI.cache
|
195
237
|
- spec/factories/company.rb
|
196
238
|
- spec/factories/user.rb
|
239
|
+
- spec/lib/scim_rails/encoder_spec.rb
|
197
240
|
- spec/spec_helper.rb
|
198
241
|
- spec/support/auth_helper.rb
|
199
242
|
- spec/support/factory_bot.rb
|
@@ -202,7 +245,7 @@ homepage: https://github.com/lessonly/scim_rails
|
|
202
245
|
licenses:
|
203
246
|
- MIT
|
204
247
|
metadata: {}
|
205
|
-
post_install_message:
|
248
|
+
post_install_message:
|
206
249
|
rdoc_options: []
|
207
250
|
require_paths:
|
208
251
|
- lib
|
@@ -218,7 +261,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
218
261
|
version: '0'
|
219
262
|
requirements: []
|
220
263
|
rubygems_version: 3.0.3
|
221
|
-
signing_key:
|
264
|
+
signing_key:
|
222
265
|
specification_version: 4
|
223
266
|
summary: SCIM Adapter for Rails.
|
224
267
|
test_files:
|
@@ -283,11 +326,18 @@ test_files:
|
|
283
326
|
- spec/dummy/db/migrate/20181206184313_create_companies.rb
|
284
327
|
- spec/dummy/db/development.sqlite3
|
285
328
|
- spec/dummy/log/test.log
|
286
|
-
- spec/dummy/
|
329
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/K3/K3kRdEIVqv2uHDkXatQjmCumpOCKxtnexZuiH4Ad37A.cache
|
330
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/kW/kWKxWPvgf53JDnfwnEOVTJYtSWS971rKq3BhmUzYaXY.cache
|
331
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/q8/q8BHffCjwsZ85QWxK1lyx5t_0jQSLlTtLGhRrwuWXGI.cache
|
332
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/TW/TW6bO0RoLe0_sbLapNXYMgZbgPTnnSFdrhh6pv917KA.cache
|
333
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/pR/pRHZ5T7C7u6vDXHn5oM357U3KshRFgRMbA53zz4Azcw.cache
|
334
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/mX/mX1nlsL_SWOB4y22W5FheRX0YEONKyOY7xUeIvRiHco.cache
|
335
|
+
- spec/dummy/tmp/cache/assets/sprockets/v3.0/TH/THOPrXYljWHCQGbFjofWsaZNw7w-hfqfI3-hnxWyGas.cache
|
287
336
|
- spec/support/factory_bot.rb
|
288
337
|
- spec/support/auth_helper.rb
|
289
338
|
- spec/support/scim_rails_config.rb
|
290
339
|
- spec/factories/company.rb
|
291
340
|
- spec/factories/user.rb
|
341
|
+
- spec/lib/scim_rails/encoder_spec.rb
|
292
342
|
- spec/controllers/scim_rails/scim_users_request_spec.rb
|
293
343
|
- spec/controllers/scim_rails/scim_users_controller_spec.rb
|
@@ -1,37 +0,0 @@
|
|
1
|
-
[1m[35m (1.5ms)[0m [1m[35mCREATE TABLE "companies" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar NOT NULL, "subdomain" varchar NOT NULL, "api_token" varchar NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)[0m
|
2
|
-
[1m[35m (0.9ms)[0m [1m[35mCREATE TABLE "users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar NOT NULL, "last_name" varchar NOT NULL, "email" varchar NOT NULL, "company_id" integer, "archived_at" datetime, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)[0m
|
3
|
-
[1m[35m (0.9ms)[0m [1m[35mCREATE TABLE "schema_migrations" ("version" varchar NOT NULL PRIMARY KEY)[0m
|
4
|
-
[1m[35m (0.1ms)[0m [1m[34mSELECT version FROM "schema_migrations"[0m
|
5
|
-
[1m[35m (0.7ms)[0m [1m[32mINSERT INTO "schema_migrations" (version) VALUES (20181206184313)[0m
|
6
|
-
[1m[35m (0.1ms)[0m [1m[34mselect sqlite_version(*)[0m
|
7
|
-
[1m[35m (0.7ms)[0m [1m[32mINSERT INTO "schema_migrations" (version) VALUES
|
8
|
-
(20181206184304);
|
9
|
-
|
10
|
-
[0m
|
11
|
-
[1m[35m (1.0ms)[0m [1m[35mCREATE TABLE "ar_internal_metadata" ("key" varchar NOT NULL PRIMARY KEY, "value" varchar, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)[0m
|
12
|
-
[1m[36mActiveRecord::InternalMetadata Load (0.1ms)[0m [1m[34mSELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = ? LIMIT ?[0m [["key", "environment"], ["LIMIT", 1]]
|
13
|
-
[1m[35m (0.0ms)[0m [1m[36mbegin transaction[0m
|
14
|
-
[1m[35mSQL (0.3ms)[0m [1m[32mINSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES (?, ?, ?, ?)[0m [["key", "environment"], ["value", "development"], ["created_at", "2019-04-04 18:34:57.670031"], ["updated_at", "2019-04-04 18:34:57.670031"]]
|
15
|
-
[1m[35m (0.7ms)[0m [1m[36mcommit transaction[0m
|
16
|
-
[1m[36mActiveRecord::InternalMetadata Load (0.1ms)[0m [1m[34mSELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = ? LIMIT ?[0m [["key", "environment"], ["LIMIT", 1]]
|
17
|
-
[1m[35m (0.0ms)[0m [1m[36mbegin transaction[0m
|
18
|
-
[1m[35m (0.0ms)[0m [1m[36mcommit transaction[0m
|
19
|
-
[1m[35m (0.9ms)[0m [1m[35mCREATE TABLE "companies" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar NOT NULL, "subdomain" varchar NOT NULL, "api_token" varchar NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)[0m
|
20
|
-
[1m[35m (1.0ms)[0m [1m[35mCREATE TABLE "users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar NOT NULL, "last_name" varchar NOT NULL, "email" varchar NOT NULL, "company_id" integer, "archived_at" datetime, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)[0m
|
21
|
-
[1m[35m (0.9ms)[0m [1m[35mCREATE TABLE "schema_migrations" ("version" varchar NOT NULL PRIMARY KEY)[0m
|
22
|
-
[1m[35m (0.1ms)[0m [1m[34mSELECT version FROM "schema_migrations"[0m
|
23
|
-
[1m[35m (0.8ms)[0m [1m[32mINSERT INTO "schema_migrations" (version) VALUES (20181206184313)[0m
|
24
|
-
[1m[35m (0.0ms)[0m [1m[34mselect sqlite_version(*)[0m
|
25
|
-
[1m[35m (0.8ms)[0m [1m[32mINSERT INTO "schema_migrations" (version) VALUES
|
26
|
-
(20181206184304);
|
27
|
-
|
28
|
-
[0m
|
29
|
-
[1m[35m (0.9ms)[0m [1m[35mCREATE TABLE "ar_internal_metadata" ("key" varchar NOT NULL PRIMARY KEY, "value" varchar, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)[0m
|
30
|
-
[1m[36mActiveRecord::InternalMetadata Load (0.1ms)[0m [1m[34mSELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = ? LIMIT ?[0m [["key", "environment"], ["LIMIT", 1]]
|
31
|
-
[1m[35m (0.0ms)[0m [1m[36mbegin transaction[0m
|
32
|
-
[1m[35mSQL (0.3ms)[0m [1m[32mINSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES (?, ?, ?, ?)[0m [["key", "environment"], ["value", "development"], ["created_at", "2019-04-04 18:34:57.684014"], ["updated_at", "2019-04-04 18:34:57.684014"]]
|
33
|
-
[1m[35m (0.6ms)[0m [1m[36mcommit transaction[0m
|
34
|
-
[1m[36mActiveRecord::InternalMetadata Load (0.1ms)[0m [1m[34mSELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = ? LIMIT ?[0m [["key", "environment"], ["LIMIT", 1]]
|
35
|
-
[1m[35m (0.0ms)[0m [1m[36mbegin transaction[0m
|
36
|
-
[1m[35mSQL (0.2ms)[0m [1m[33mUPDATE "ar_internal_metadata" SET "value" = ?, "updated_at" = ? WHERE "ar_internal_metadata"."key" = ?[0m [["value", "test"], ["updated_at", "2019-04-04 18:34:57.686570"], ["key", "environment"]]
|
37
|
-
[1m[35m (0.6ms)[0m [1m[36mcommit transaction[0m
|