lib/aikido/client.rb in aikido-ruby-client-0.0.2 vs lib/aikido/client.rb in aikido-ruby-client-0.0.3

- old
+ new

@@ -28,14 +28,21 @@ PaginatedResponse.new do |page| get('/public/v1/clouds', params: { page: page }).json end end - def issues(params: {}) - get('/public/v1/issues/export', params: params).json + def connect_aws_cloud(role_arn:, name:, environment:) + handle_response!(authed_http.post('/public/v1/clouds/aws', + json: { role_arn: role_arn, + name: name, + environment: environment })).json end + def issues(options = {}) + get('/public/v1/issues/export', params: options).json + end + def issue(id) get("/public/v1/issues/#{id.to_i}").json end def issue_groups @@ -53,13 +60,31 @@ get('/public/v1/repositories/code', params: { page: page }).json end end def code_repository_sbom(id, format: 'csv') - get("repositories/code/#{id.to_i}/licenses/export", params: { format: format }).body + get("/public/v1/repositories/code/#{id.to_i}/licenses/export", params: { format: format }).read end + def teams + PaginatedResponse.new do |page| + get('/public/v1/teams', params: { page: page }).json + end + end + + def create_team(name:) + handle_response!(authed_http.post('/public/v1/teams', json: { name: name })).json + end + + def update_team(id) + raise NotImplementedError + end + + def containers + get('/public/v1/containers').json + end + private def get(path, params: {}) handle_response!(authed_http.get(path, params: params)) end @@ -90,9 +115,11 @@ end end def raise_response_error!(response) case response.status + when 400 + raise Errors::BadRequestError, response when 401 raise Errors::UnauthorizedError, response else raise Errors::ApiError, response end