Skip to content

Commit 0bc69f0

Browse files
authored
Merge pull request #294 from rawmind0/fix
Fix bootstrap
2 parents d183bd7 + 116066c commit 0bc69f0

730 files changed

Lines changed: 255789 additions & 18 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CHANGELOG.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,17 @@
1-
## 1.9.0 (Unreleased)
1+
## 1.8.1 (Unreleased)
2+
3+
FEATURES:
4+
5+
6+
7+
ENHANCEMENTS:
8+
9+
10+
11+
BUG FIXES:
12+
13+
* Fix init provider if api_url is dependent of infra that is not yet deployed
14+
215
## 1.8.0 (March 31, 2020)
316

417
FEATURES:

go.mod

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ require (
1010
github.com/hashicorp/go-version v1.2.0
1111
github.com/hashicorp/terraform-plugin-sdk v1.7.0
1212
github.com/rancher/norman v0.0.0-20200321231028-b5f2e33b54fa
13+
github.com/rancher/rke v1.1.0
1314
github.com/rancher/types v0.0.0-20200326224903-b4612bd96d9b
1415
golang.org/x/crypto v0.0.0-20191112222119-e1110fd1c708
1516
gopkg.in/yaml.v2 v2.2.5

go.sum

Lines changed: 51 additions & 0 deletions
Large diffs are not rendered by default.

rancher2/config.go

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,11 @@ func (c *Config) ManagementClient() (*managementClient.Client, error) {
132132
return c.Client.Management, nil
133133
}
134134

135+
err := c.isRancherReady()
136+
if err != nil {
137+
return nil, err
138+
}
139+
135140
// Setup the management client
136141
options := c.CreateClientOpts()
137142
mClient, err := managementClient.NewClient(options)
@@ -162,6 +167,11 @@ func (c *Config) ClusterClient(id string) (*clusterClient.Client, error) {
162167
return c.Client.Cluster, nil
163168
}
164169

170+
err := c.isRancherReady()
171+
if err != nil {
172+
return nil, err
173+
}
174+
165175
// Setup the cluster client
166176
options := c.CreateClientOpts()
167177
options.URL = options.URL + "/clusters/" + id
@@ -188,6 +198,11 @@ func (c *Config) ProjectClient(id string) (*projectClient.Client, error) {
188198
return c.Client.Project, nil
189199
}
190200

201+
err := c.isRancherReady()
202+
if err != nil {
203+
return nil, err
204+
}
205+
191206
// Setup the project client
192207
options := c.CreateClientOpts()
193208
options.URL = options.URL + "/projects/" + id

rancher2/provider.go

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@ const (
1313
)
1414

1515
var (
16-
descriptions map[string]string
17-
rancher2ClusterRKEK8SDefaultVersion string
16+
descriptions map[string]string
1817
)
1918

2019
// CLIConfig used to store data from file.
@@ -227,16 +226,6 @@ func providerValidateConfig(config *Config) (*Config, error) {
227226
if config.TokenKey == providerDefaultEmptyString {
228227
return &Config{}, fmt.Errorf("[ERROR] No token_key nor access_key and secret_key are provided")
229228
}
230-
k8sVer, err := config.getK8SVersion()
231-
if err != nil {
232-
return &Config{}, fmt.Errorf("[ERROR] Getting default RKE K8S version: %v", err)
233-
}
234-
rancher2ClusterRKEK8SDefaultVersion = k8sVer
235-
}
236-
237-
err := config.isRancherReady()
238-
if err != nil {
239-
return &Config{}, err
240229
}
241230

242231
return config, nil

rancher2/schema_cluster_rke_config.go

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,13 @@
11
package rancher2
22

33
import (
4+
"context"
5+
"sort"
6+
7+
"github.com/hashicorp/go-version"
48
"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
9+
"github.com/hashicorp/terraform-plugin-sdk/helper/validation"
10+
"github.com/rancher/rke/metadata"
511
)
612

713
const (
@@ -102,6 +108,24 @@ func clusterRKEConfigFields() map[string]*schema.Schema {
102108
Optional: true,
103109
Computed: true,
104110
Description: "Optional kubernetes version to deploy",
111+
ValidateFunc: validation.StringInSlice(func() []string {
112+
metadata.InitMetadata(context.Background())
113+
versions := make([]*version.Version, 0, len(metadata.K8sVersionToRKESystemImages))
114+
for k := range metadata.K8sVersionToRKESystemImages {
115+
v, _ := version.NewVersion(k)
116+
versions = append(versions, v)
117+
}
118+
sort.Sort(sort.Reverse(version.Collection(versions)))
119+
keys := make([]string, len(versions))
120+
for i := range versions {
121+
keys[i] = "v" + versions[i].String()
122+
}
123+
return keys
124+
}(), false),
125+
DefaultFunc: func() (interface{}, error) {
126+
metadata.InitMetadata(context.Background())
127+
return metadata.DefaultK8sVersion, nil
128+
},
105129
},
106130
"monitoring": {
107131
Type: schema.TypeList,

rancher2/structure_cluster_rke_config.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -236,7 +236,6 @@ func expandClusterRKEConfig(p []interface{}, name string) (*managementClient.Ran
236236
obj.Ingress = ingress
237237
}
238238

239-
obj.Version = rancher2ClusterRKEK8SDefaultVersion
240239
if v, ok := in["kubernetes_version"].(string); ok && len(v) > 0 {
241240
obj.Version = v
242241
}

vendor/github.com/beorn7/perks/LICENSE

Lines changed: 20 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)