permit-sdk 0.0.3 → 0.0.4
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/api/api.rb +4 -1
- data/lib/api/elements.rb +13 -0
- data/lib/api/resources.rb +2 -2
- data/lib/api/tenants.rb +1 -0
- data/lib/permit.rb +3 -2
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bdf1ab70789ef163e2ff19405f5d5cddc76444cc373852b7c2b621aed1e9fe98
|
4
|
+
data.tar.gz: 0d9b7709d13d9d10dd11c5886e09762a46a725ed5b1930f799678111f0dd713b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3419465498ff507eb2de256a919eb7320099a143ea5a5af6d70f548320c239f730f0989d86dc7faa3bcac303e6a24b00c1db15ef8038f0df71d7e46a0060da13
|
7
|
+
data.tar.gz: eedd785a5b77fdc2dd3efba2ce3762f9557b5da7f0cb79148b31cb168802476dd6ba9618689cc96b9fbd1889edfb04a5d05d56616e31c83ca0bc6ed96645d05d
|
data/lib/api/api.rb
CHANGED
@@ -3,6 +3,7 @@ require_relative 'users'
|
|
3
3
|
require_relative 'resources'
|
4
4
|
require_relative 'utils'
|
5
5
|
require_relative 'tenants'
|
6
|
+
require_relative 'elements'
|
6
7
|
|
7
8
|
class PermitApiClient
|
8
9
|
attr_accessor :config, :logger, :client, :tenants, :resources, :roles, :users, :elements
|
@@ -13,6 +14,8 @@ class PermitApiClient
|
|
13
14
|
openapi_config.scheme = Utils.get_schema_from_url(config.api_url)
|
14
15
|
openapi_config.host = Utils.get_host_from_url(config.api_url)
|
15
16
|
openapi_config.access_token = config.token
|
17
|
+
openapi_config.server_operation_index = {}
|
18
|
+
openapi_config.server_index = nil
|
16
19
|
end
|
17
20
|
@config = config
|
18
21
|
@logger = logger
|
@@ -20,6 +23,6 @@ class PermitApiClient
|
|
20
23
|
@tenants = TenantsApi.new(OpenapiClient::TenantsApi.new, config, logger)
|
21
24
|
@resources = ResourcesApi.new(OpenapiClient::ResourcesApi.new, config, logger)
|
22
25
|
# @roles = RolesApi.new(OpenapiClient::RolesApi.new, config, logger)
|
23
|
-
|
26
|
+
@elements = ElementsApi.new(OpenapiClient::AuthenticationApi.new, config, logger)
|
24
27
|
end
|
25
28
|
end
|
data/lib/api/elements.rb
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
require_relative 'base'
|
2
|
+
require_relative '../openapi_client/api/authentication_api'
|
3
|
+
class ElementsApi < PermitBaseApi
|
4
|
+
def initialize(client, config, logger)
|
5
|
+
super
|
6
|
+
end
|
7
|
+
|
8
|
+
def login_as(user_id, tenant_id)
|
9
|
+
login_input = OpenapiClient::UserLoginRequestInput.new({:user_id => user_id, :tenant_id => tenant_id})
|
10
|
+
data = @client.elements_login_as(login_input)
|
11
|
+
data
|
12
|
+
end
|
13
|
+
end
|
data/lib/api/resources.rb
CHANGED
@@ -6,8 +6,8 @@ class ResourcesApi < PermitBaseApi
|
|
6
6
|
end
|
7
7
|
|
8
8
|
def get(resource_key)
|
9
|
-
|
10
|
-
data = @client.
|
9
|
+
lazy_load_context
|
10
|
+
data = @client.get_resource(config.context.project, config.context.project, resource_key)
|
11
11
|
data
|
12
12
|
end
|
13
13
|
end
|
data/lib/api/tenants.rb
CHANGED
data/lib/permit.rb
CHANGED
@@ -9,10 +9,10 @@ class Permit
|
|
9
9
|
DEFAULT_PDP_URL = 'http://localhost:7766'.freeze
|
10
10
|
DEFAULT_TENANT = "default"
|
11
11
|
|
12
|
-
def initialize(token,
|
12
|
+
def initialize(token, pdp_url = DEFAULT_PDP_URL, api_url = DEFAULT_API_URL, debug = false, logger = Logger.new(STDOUT))
|
13
13
|
@config = PermitConfig.new(token, api_url, pdp_url, nil, debug, logger)
|
14
14
|
@api = PermitApiClient.new(@config, logger)
|
15
|
-
|
15
|
+
@elements = @api.elements
|
16
16
|
# @enforcement = PermitEnforcer.new
|
17
17
|
end
|
18
18
|
|
@@ -43,6 +43,7 @@ class Permit
|
|
43
43
|
http.request(req)
|
44
44
|
end
|
45
45
|
|
46
|
+
|
46
47
|
if res.code != '200'
|
47
48
|
raise "Permit SDK got unexpected status code: #{res.code}, please check your Permit SDK class init and PDP container are configured correctly. \nRead more about setting up the PDP at https://docs.permit.io/reference/SDKs/Ruby/quickstart_ruby"
|
48
49
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: permit-sdk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Permit.io
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-02-
|
11
|
+
date: 2023-02-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -33,6 +33,7 @@ extra_rdoc_files: []
|
|
33
33
|
files:
|
34
34
|
- lib/api/api.rb
|
35
35
|
- lib/api/base.rb
|
36
|
+
- lib/api/elements.rb
|
36
37
|
- lib/api/resources.rb
|
37
38
|
- lib/api/tenants.rb
|
38
39
|
- lib/api/users.rb
|