Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
10cc9713
Commit
10cc9713
authored
Feb 26, 2018
by
Cheng Xing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Change regional PD cloud provider references to use the beta API
parent
c74c8264
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
30 additions
and
30 deletions
+30
-30
gce.go
pkg/cloudprovider/providers/gce/gce.go
+5
-5
gce_disks.go
pkg/cloudprovider/providers/gce/gce_disks.go
+22
-22
gce_disks_test.go
pkg/cloudprovider/providers/gce/gce_disks_test.go
+3
-3
No files found.
pkg/cloudprovider/providers/gce/gce.go
View file @
10cc9713
...
...
@@ -88,8 +88,8 @@ const (
// Defaults to 5 * 2 = 10 seconds before the LB will steer traffic away
gceHcUnhealthyThreshold
=
int64
(
5
)
gceComputeAPIEndpoint
=
"https://www.googleapis.com/compute/v1/"
gceComputeAPIEndpoint
Alpha
=
"https://www.googleapis.com/compute/alph
a/"
gceComputeAPIEndpoint
=
"https://www.googleapis.com/compute/v1/"
gceComputeAPIEndpoint
Beta
=
"https://www.googleapis.com/compute/bet
a/"
)
// gceObject is an abstraction of all GCE API object in go client
...
...
@@ -878,10 +878,10 @@ func (manager *gceServiceManager) getProjectsAPIEndpoint() string {
return
projectsApiEndpoint
}
func
(
manager
*
gceServiceManager
)
getProjectsAPIEndpoint
Alph
a
()
string
{
projectsApiEndpoint
:=
gceComputeAPIEndpoint
Alph
a
+
"projects/"
func
(
manager
*
gceServiceManager
)
getProjectsAPIEndpoint
Bet
a
()
string
{
projectsApiEndpoint
:=
gceComputeAPIEndpoint
Bet
a
+
"projects/"
if
manager
.
gce
.
service
!=
nil
{
projectsApiEndpoint
=
manager
.
gce
.
service
Alph
a
.
BasePath
projectsApiEndpoint
=
manager
.
gce
.
service
Bet
a
.
BasePath
}
return
projectsApiEndpoint
...
...
pkg/cloudprovider/providers/gce/gce_disks.go
View file @
10cc9713
...
...
@@ -34,7 +34,7 @@ import (
volumeutil
"k8s.io/kubernetes/pkg/volume/util"
"github.com/golang/glog"
compute
alpha
"google.golang.org/api/compute/v0.alph
a"
compute
beta
"google.golang.org/api/compute/v0.bet
a"
compute
"google.golang.org/api/compute/v1"
"google.golang.org/api/googleapi"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
...
...
@@ -123,7 +123,7 @@ func (manager *gceServiceManager) CreateDiskOnCloudProvider(
diskType
string
,
zone
string
)
(
gceObject
,
error
)
{
diskTypeURI
,
err
:=
manager
.
getDiskTypeURI
(
manager
.
gce
.
region
/* diskRegion */
,
singleZone
{
zone
},
diskType
,
false
/* use
Alph
aAPI */
)
manager
.
gce
.
region
/* diskRegion */
,
singleZone
{
zone
},
diskType
,
false
/* use
Bet
aAPI */
)
if
err
!=
nil
{
return
nil
,
err
}
...
...
@@ -147,7 +147,7 @@ func (manager *gceServiceManager) CreateRegionalDiskOnCloudProvider(
if
utilfeature
.
DefaultFeatureGate
.
Enabled
(
features
.
GCERegionalPersistentDisk
)
{
diskTypeURI
,
err
:=
manager
.
getDiskTypeURI
(
manager
.
gce
.
region
/* diskRegion */
,
multiZone
{
replicaZones
},
diskType
,
true
/* use
Alph
aAPI */
)
manager
.
gce
.
region
/* diskRegion */
,
multiZone
{
replicaZones
},
diskType
,
true
/* use
Bet
aAPI */
)
if
err
!=
nil
{
return
nil
,
err
}
...
...
@@ -157,15 +157,15 @@ func (manager *gceServiceManager) CreateRegionalDiskOnCloudProvider(
fullyQualifiedReplicaZones
,
manager
.
getReplicaZoneURI
(
replicaZone
,
true
))
}
diskToCreate
Alpha
:=
&
computealph
a
.
Disk
{
diskToCreate
Beta
:=
&
computebet
a
.
Disk
{
Name
:
name
,
SizeGb
:
sizeGb
,
Description
:
tagsStr
,
Type
:
diskTypeURI
,
ReplicaZones
:
fullyQualifiedReplicaZones
,
}
return
manager
.
gce
.
service
Alph
a
.
RegionDisks
.
Insert
(
manager
.
gce
.
projectID
,
manager
.
gce
.
region
,
diskToCreate
Alph
a
)
.
Do
()
return
manager
.
gce
.
service
Bet
a
.
RegionDisks
.
Insert
(
manager
.
gce
.
projectID
,
manager
.
gce
.
region
,
diskToCreate
Bet
a
)
.
Do
()
}
return
nil
,
fmt
.
Errorf
(
"the regional PD feature is only available with the %s Kubernetes feature gate enabled"
,
features
.
GCERegionalPersistentDisk
)
...
...
@@ -241,24 +241,24 @@ func (manager *gceServiceManager) GetRegionalDiskFromCloudProvider(
diskName
string
)
(
*
GCEDisk
,
error
)
{
if
utilfeature
.
DefaultFeatureGate
.
Enabled
(
features
.
GCERegionalPersistentDisk
)
{
disk
Alpha
,
err
:=
manager
.
gce
.
serviceAlph
a
.
RegionDisks
.
Get
(
disk
Beta
,
err
:=
manager
.
gce
.
serviceBet
a
.
RegionDisks
.
Get
(
manager
.
gce
.
projectID
,
manager
.
gce
.
region
,
diskName
)
.
Do
()
if
err
!=
nil
{
return
nil
,
err
}
zones
:=
sets
.
NewString
()
for
_
,
zoneURI
:=
range
disk
Alph
a
.
ReplicaZones
{
for
_
,
zoneURI
:=
range
disk
Bet
a
.
ReplicaZones
{
zones
.
Insert
(
lastComponent
(
zoneURI
))
}
return
&
GCEDisk
{
ZoneInfo
:
multiZone
{
zones
},
Region
:
lastComponent
(
disk
Alph
a
.
Region
),
Name
:
disk
Alph
a
.
Name
,
Kind
:
disk
Alph
a
.
Kind
,
Type
:
disk
Alph
a
.
Type
,
SizeGb
:
disk
Alph
a
.
SizeGb
,
Region
:
lastComponent
(
disk
Bet
a
.
Region
),
Name
:
disk
Bet
a
.
Name
,
Kind
:
disk
Bet
a
.
Kind
,
Type
:
disk
Bet
a
.
Type
,
SizeGb
:
disk
Bet
a
.
SizeGb
,
},
nil
}
...
...
@@ -275,7 +275,7 @@ func (manager *gceServiceManager) DeleteDiskOnCloudProvider(
func
(
manager
*
gceServiceManager
)
DeleteRegionalDiskOnCloudProvider
(
diskName
string
)
(
gceObject
,
error
)
{
if
utilfeature
.
DefaultFeatureGate
.
Enabled
(
features
.
GCERegionalPersistentDisk
)
{
return
manager
.
gce
.
service
Alph
a
.
RegionDisks
.
Delete
(
return
manager
.
gce
.
service
Bet
a
.
RegionDisks
.
Delete
(
manager
.
gce
.
projectID
,
manager
.
gce
.
region
,
diskName
)
.
Do
()
}
...
...
@@ -327,11 +327,11 @@ func (manager *gceServiceManager) getDiskSourceURI(disk *GCEDisk) (string, error
}
func
(
manager
*
gceServiceManager
)
getDiskTypeURI
(
diskRegion
string
,
diskZoneInfo
zoneType
,
diskType
string
,
use
Alph
aAPI
bool
)
(
string
,
error
)
{
diskRegion
string
,
diskZoneInfo
zoneType
,
diskType
string
,
use
Bet
aAPI
bool
)
(
string
,
error
)
{
var
getProjectsAPIEndpoint
string
if
use
Alph
aAPI
{
getProjectsAPIEndpoint
=
manager
.
getProjectsAPIEndpoint
Alph
a
()
if
use
Bet
aAPI
{
getProjectsAPIEndpoint
=
manager
.
getProjectsAPIEndpoint
Bet
a
()
}
else
{
getProjectsAPIEndpoint
=
manager
.
getProjectsAPIEndpoint
()
}
...
...
@@ -363,10 +363,10 @@ func (manager *gceServiceManager) getDiskTypeURI(
}
}
func
(
manager
*
gceServiceManager
)
getReplicaZoneURI
(
zone
string
,
use
Alph
aAPI
bool
)
string
{
func
(
manager
*
gceServiceManager
)
getReplicaZoneURI
(
zone
string
,
use
Bet
aAPI
bool
)
string
{
var
getProjectsAPIEndpoint
string
if
use
Alph
aAPI
{
getProjectsAPIEndpoint
=
manager
.
getProjectsAPIEndpoint
Alph
a
()
if
use
Bet
aAPI
{
getProjectsAPIEndpoint
=
manager
.
getProjectsAPIEndpoint
Bet
a
()
}
else
{
getProjectsAPIEndpoint
=
manager
.
getProjectsAPIEndpoint
()
}
...
...
@@ -420,10 +420,10 @@ func (manager *gceServiceManager) ResizeDiskOnCloudProvider(disk *GCEDisk, sizeG
func
(
manager
*
gceServiceManager
)
RegionalResizeDiskOnCloudProvider
(
disk
*
GCEDisk
,
sizeGb
int64
)
(
gceObject
,
error
)
{
if
utilfeature
.
DefaultFeatureGate
.
Enabled
(
features
.
GCERegionalPersistentDisk
)
{
resizeServiceRequest
:=
&
compute
alph
a
.
RegionDisksResizeRequest
{
resizeServiceRequest
:=
&
compute
bet
a
.
RegionDisksResizeRequest
{
SizeGb
:
sizeGb
,
}
return
manager
.
gce
.
service
Alph
a
.
RegionDisks
.
Resize
(
manager
.
gce
.
projectID
,
disk
.
Region
,
disk
.
Name
,
resizeServiceRequest
)
.
Do
()
return
manager
.
gce
.
service
Bet
a
.
RegionDisks
.
Resize
(
manager
.
gce
.
projectID
,
disk
.
Region
,
disk
.
Name
,
resizeServiceRequest
)
.
Do
()
}
return
nil
,
fmt
.
Errorf
(
"the regional PD feature is only available with the %s Kubernetes feature gate enabled"
,
features
.
GCERegionalPersistentDisk
)
}
...
...
pkg/cloudprovider/providers/gce/gce_disks_test.go
View file @
10cc9713
...
...
@@ -116,7 +116,7 @@ func TestCreateRegionalDisk_Basic(t *testing.T) {
tags
:=
make
(
map
[
string
]
string
)
tags
[
"test-tag"
]
=
"test-value"
expectedDiskTypeURI
:=
gceComputeAPIEndpoint
Alph
a
+
"projects/"
+
fmt
.
Sprintf
(
expectedDiskTypeURI
:=
gceComputeAPIEndpoint
Bet
a
+
"projects/"
+
fmt
.
Sprintf
(
diskTypeURITemplateRegional
,
gceProjectId
,
gceRegion
,
diskType
)
expectedDescription
:=
"{
\"
test-tag
\"
:
\"
test-value
\"
}"
...
...
@@ -753,7 +753,7 @@ func (manager *FakeServiceManager) CreateDiskOnCloudProvider(
return
manager
.
opBeta
,
nil
case
targetAlpha
:
manager
.
opAlpha
=
&
computealpha
.
Operation
{}
diskTypeURI
:=
gceComputeAPIEndpoint
Alph
a
+
"projects/"
+
fmt
.
Sprintf
(
diskTypeURITemplateSingleZone
,
manager
.
gceProjectID
,
zone
,
diskType
)
diskTypeURI
:=
gceComputeAPIEndpoint
Bet
a
+
"projects/"
+
fmt
.
Sprintf
(
diskTypeURITemplateSingleZone
,
manager
.
gceProjectID
,
zone
,
diskType
)
diskToCreateAlpha
:=
&
computealpha
.
Disk
{
Name
:
name
,
SizeGb
:
sizeGb
,
...
...
@@ -779,7 +779,7 @@ func (manager *FakeServiceManager) CreateRegionalDiskOnCloudProvider(
diskType
string
,
zones
sets
.
String
)
(
gceObject
,
error
)
{
manager
.
createDiskCalled
=
true
diskTypeURI
:=
gceComputeAPIEndpoint
Alph
a
+
"projects/"
+
fmt
.
Sprintf
(
diskTypeURITemplateRegional
,
manager
.
gceProjectID
,
manager
.
gceRegion
,
diskType
)
diskTypeURI
:=
gceComputeAPIEndpoint
Bet
a
+
"projects/"
+
fmt
.
Sprintf
(
diskTypeURITemplateRegional
,
manager
.
gceProjectID
,
manager
.
gceRegion
,
diskType
)
switch
t
:=
manager
.
targetAPI
;
t
{
case
targetStable
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment