Skip to content

Commit bb6051f

Browse files
authored
chore: bump to kubernetes 1.21 (#61)
Signed-off-by: Patrik Cyvoct <[email protected]>
1 parent 6170975 commit bb6051f

File tree

4 files changed

+113
-152
lines changed

4 files changed

+113
-152
lines changed

cmd/scaleway-cloud-controller-manager/main.go

Lines changed: 18 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,17 @@ limitations under the License.
2020
package main
2121

2222
import (
23-
goflag "flag"
24-
"fmt"
2523
"math/rand"
2624
"os"
2725
"time"
2826

2927
"github.com/spf13/pflag"
28+
"k8s.io/apimachinery/pkg/util/wait"
3029
"k8s.io/cloud-provider"
3130
"k8s.io/cloud-provider/app"
31+
"k8s.io/cloud-provider/app/config"
3232
"k8s.io/cloud-provider/options"
33-
"k8s.io/component-base/cli/flag"
33+
cliflag "k8s.io/component-base/cli/flag"
3434
"k8s.io/component-base/logs"
3535
_ "k8s.io/component-base/metrics/prometheus/clientgo" // load all the prometheus client-go plugins
3636
_ "k8s.io/component-base/metrics/prometheus/version" // for version metric registration
@@ -42,74 +42,41 @@ import (
4242
func main() {
4343
rand.Seed(time.Now().UnixNano())
4444

45-
s, err := options.NewCloudControllerManagerOptions()
45+
ccmOptions, err := options.NewCloudControllerManagerOptions()
4646
if err != nil {
4747
klog.Fatalf("unable to initialize command options: %v", err)
4848
}
4949

50-
fs := pflag.NewFlagSet("scaleway-cloud-controller-manager", pflag.ContinueOnError)
51-
klogFlags := goflag.NewFlagSet("klog", goflag.ContinueOnError)
52-
klog.InitFlags(klogFlags)
53-
fs.AddGoFlagSet(klogFlags)
54-
fs.SetNormalizeFunc(flag.WordSepNormalizeFunc)
55-
for _, f := range s.Flags([]string{"cloud-node", "cloud-node-lifecycle", "service", "route"}, app.ControllersDisabledByDefault.List()).FlagSets {
56-
fs.AddFlagSet(f)
57-
}
50+
fss := cliflag.NamedFlagSets{}
5851

59-
err = fs.Parse(os.Args[1:])
60-
if err != nil {
61-
if err != pflag.ErrHelp {
62-
klog.Errorf("could not parse arguments: %v", err)
63-
}
64-
os.Exit(1)
65-
}
52+
command := app.NewCloudControllerManagerCommand(ccmOptions, cloudInitializer, app.DefaultInitFuncConstructors, fss, wait.NeverStop)
53+
command.Use = "scaleway-cloud-controller-manager"
6654

67-
c, err := s.Config([]string{}, app.ControllersDisabledByDefault.List())
68-
if err != nil {
69-
fmt.Fprintf(os.Stderr, "%v\n", err)
55+
pflag.CommandLine.SetNormalizeFunc(cliflag.WordSepNormalizeFunc)
56+
57+
logs.InitLogs()
58+
defer logs.FlushLogs()
59+
60+
if err := command.Execute(); err != nil {
7061
os.Exit(1)
7162
}
63+
}
7264

73-
// initialize cloud provider with the cloud provider name and config file provided
65+
func cloudInitializer(config *config.CompletedConfig) cloudprovider.Interface {
7466
cloud, err := cloudprovider.InitCloudProvider(scaleway.ProviderName, "")
7567
if err != nil {
7668
klog.Fatalf("Cloud provider could not be initialized: %v", err)
7769
}
7870
if cloud == nil {
79-
klog.Fatalf("cloud provider is nil")
71+
klog.Fatalf("Cloud provider is nil")
8072
}
8173

8274
if !cloud.HasClusterID() {
83-
if c.ComponentConfig.KubeCloudShared.AllowUntaggedCloud {
75+
if config.ComponentConfig.KubeCloudShared.AllowUntaggedCloud {
8476
klog.Warning("detected a cluster without a ClusterID. A ClusterID will be required in the future. Please tag your cluster to avoid any future issues")
8577
} else {
8678
klog.Fatalf("no ClusterID found. A ClusterID is required for the cloud provider to function properly. This check can be bypassed by setting the allow-untagged-cloud option")
8779
}
8880
}
89-
90-
// Initialize the cloud provider with a reference to the clientBuilder
91-
cloud.Initialize(c.ClientBuilder, make(chan struct{}))
92-
// Set the informer on the user cloud object
93-
if informerUserCloud, ok := cloud.(cloudprovider.InformerUser); ok {
94-
informerUserCloud.SetInformers(c.SharedInformers)
95-
}
96-
97-
controllerInitializers := app.DefaultControllerInitializers(c.Complete(), cloud)
98-
command := app.NewCloudControllerManagerCommand(s, c, controllerInitializers)
99-
100-
// utilflag.InitFlags()
101-
logs.InitLogs()
102-
defer logs.FlushLogs()
103-
104-
// the flags could be set before execute
105-
command.Flags().VisitAll(func(flag *pflag.Flag) {
106-
if flag.Name == "cloud-provider" {
107-
flag.Value.Set(scaleway.ProviderName)
108-
return
109-
}
110-
})
111-
if err := command.Execute(); err != nil {
112-
fmt.Fprintf(os.Stderr, "error: %v\n", err)
113-
os.Exit(1)
114-
}
81+
return cloud
11582
}

go.mod

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ go 1.15
55
require (
66
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.7.0.20201207195254-17763ced6080
77
github.com/spf13/pflag v1.0.5
8-
k8s.io/api v0.20.0
9-
k8s.io/apimachinery v0.20.0
10-
k8s.io/client-go v0.20.0
11-
k8s.io/cloud-provider v0.20.0
12-
k8s.io/component-base v0.20.0
13-
k8s.io/klog/v2 v2.4.0
8+
k8s.io/api v0.21.0
9+
k8s.io/apimachinery v0.21.0
10+
k8s.io/client-go v0.21.0
11+
k8s.io/cloud-provider v0.21.0
12+
k8s.io/component-base v0.21.0
13+
k8s.io/klog/v2 v2.8.0
1414
)

0 commit comments

Comments
 (0)