Module: Legion::Extensions::Lakera::Runners::Projects
- Extended by:
- Helpers::Client
- Includes:
- Helpers::Lex
- Included in:
- Client
- Defined in:
- lib/legion/extensions/lakera/runners/projects.rb
Constant Summary
Helpers::Client::DEFAULT_HOST, Helpers::Client::REGIONS
Instance Method Summary
collapse
client, self_hosted_client
Instance Method Details
#create_project(name:, api_key:, policy_id: nil, metadata: {}) ⇒ Object
13
14
15
16
17
18
19
20
|
# File 'lib/legion/extensions/lakera/runners/projects.rb', line 13
def create_project(name:, api_key:, policy_id: nil, metadata: {}, **)
body = { name: name }
body[:policy_id] = policy_id unless policy_id.nil?
body[:metadata] = metadata unless metadata.empty?
response = client(api_key: api_key, **).post('/v2/projects', body)
Helpers::Response.handle_response(response)
end
|
#delete_project(project_id:, api_key:) ⇒ Object
37
38
39
40
|
# File 'lib/legion/extensions/lakera/runners/projects.rb', line 37
def delete_project(project_id:, api_key:, **)
response = client(api_key: api_key, **).delete("/v2/projects/#{project_id}")
Helpers::Response.handle_response(response)
end
|
#get_project(project_id:, api_key:) ⇒ Object
22
23
24
25
|
# File 'lib/legion/extensions/lakera/runners/projects.rb', line 22
def get_project(project_id:, api_key:, **)
response = client(api_key: api_key, **).get("/v2/projects/#{project_id}")
Helpers::Response.handle_response(response)
end
|
#update_project(project_id:, api_key:, name: nil, policy_id: nil, metadata: {}) ⇒ Object
27
28
29
30
31
32
33
34
35
|
# File 'lib/legion/extensions/lakera/runners/projects.rb', line 27
def update_project(project_id:, api_key:, name: nil, policy_id: nil, metadata: {}, **)
body = {}
body[:name] = name if name
body[:policy_id] = policy_id if policy_id
body[:metadata] = metadata unless metadata.empty?
response = client(api_key: api_key, **).put("/v2/projects/#{project_id}", body)
Helpers::Response.handle_response(response)
end
|