Add Google Cloud client project list

This commit is contained in:
Matija Čupić 2017-12-15 19:39:15 +01:00
parent 497a0cd62c
commit 596ea9e368
No known key found for this signature in database
GPG Key ID: 4BAF84FFACD2E5DE
2 changed files with 22 additions and 0 deletions

View File

@ -1,4 +1,5 @@
require 'google/apis/container_v1'
require 'google/apis/cloudresourcemanager_v1'
module GoogleApi
module CloudPlatform
@ -40,6 +41,15 @@ module GoogleApi
true
end
def projects_list
service = Google::Apis::CloudresourcemanagerV1::CloudResourceManagerService.new
service.authorization = access_token
service.fetch_all(items: :projects) do |token|
service.list_projects(page_token: token)
end
end
def projects_zones_clusters_get(project_id, zone, cluster_id)
service = Google::Apis::ContainerV1::ContainerService.new
service.authorization = access_token

View File

@ -50,6 +50,18 @@ describe GoogleApi::CloudPlatform::Client do
end
end
describe '#projects_list' do
subject { client.projects_list }
let(:projects) { double }
before do
allow_any_instance_of(Google::Apis::CloudresourcemanagerV1::CloudResourceManagerService)
.to receive(:fetch_all).and_return(projects)
end
it { is_expected.to eq(projects) }
end
describe '#projects_zones_clusters_get' do
subject { client.projects_zones_clusters_get(spy, spy, spy) }
let(:gke_cluster) { double }