Skip to content
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion examples/14-windows-nodes.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# An example of ClusterConfig containing Windows and Linux node groups to support Windows workloads
# This example should be run with `eksctl create cluster -f 14-windows-nodes.yaml --install-vpc-controllers`
# This example should be run with `eksctl create cluster -f 14-windows-nodes.yaml`
---
apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig
Expand All @@ -13,6 +13,8 @@ nodeGroups:
amiFamily: WindowsServer2019FullContainer
minSize: 2
maxSize: 3

managedNodeGroups:
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:D

- name: linux-ng
instanceType: t2.large
minSize: 2
Expand Down
1 change: 0 additions & 1 deletion integration/tests/windows/windows_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,6 @@ var _ = Describe("(Integration) [Windows Nodegroups]", func() {
"--config-file", "-",
"--verbose", "4",
"--kubeconfig", params.KubeconfigPath,
"--install-vpc-controllers",
).
WithoutArg("--region", params.Region).
WithStdin(bytes.NewReader(data))
Expand Down
9 changes: 9 additions & 0 deletions pkg/actions/nodegroup/create.go
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,15 @@ func (m *Manager) nodeCreationTasks(options CreateOpts, nodegroupFilter filter.N
taskTree.Append(m.stackManager.NewClusterCompatTask())
}

if m.cfg.HasWindowsNodeGroup() {
taskTree.Append(&eks.WindowsIPAMTask{
Info: "enable Windows IPAM",
ClientsetFunc: func() (kubernetes.Interface, error) {
return m.ctl.NewStdClientSet(m.cfg)
},
})
Comment thread
aclevername marked this conversation as resolved.
}

Comment thread
aclevername marked this conversation as resolved.
awsNodeUsesIRSA, err := init.DoesAWSNodeUseIRSA(m.ctl.Provider, m.clientSet)
if err != nil {
return errors.Wrap(err, "couldn't check aws-node for annotation")
Expand Down
143 changes: 14 additions & 129 deletions pkg/addons/assets.go

Large diffs are not rendered by default.

20 changes: 0 additions & 20 deletions pkg/addons/assets/vpc-admission-webhook-config.yaml

This file was deleted.

11 changes: 0 additions & 11 deletions pkg/addons/assets/vpc-admission-webhook-csr.yaml

This file was deleted.

61 changes: 0 additions & 61 deletions pkg/addons/assets/vpc-admission-webhook-dep.yaml

This file was deleted.

14 changes: 0 additions & 14 deletions pkg/addons/assets/vpc-admission-webhook.yaml

This file was deleted.

52 changes: 52 additions & 0 deletions pkg/addons/assets/vpc-controller-metadata.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
apiVersion: v1
kind: Service
metadata:
name: vpc-admission-webhook
namespace: kube-system

---
apiVersion: admissionregistration.k8s.io/v1beta1
kind: MutatingWebhookConfiguration
metadata:
name: vpc-admission-webhook-cfg
namespace: kube-system

---
apiVersion: certificates.k8s.io/v1beta1
kind: CertificateSigningRequest
metadata:
name: vpc-admission-webhook.kube-system

---
apiVersion: apps/v1
kind: Deployment
metadata:
name: vpc-admission-webhook
namespace: kube-system

---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: vpc-resource-controller

---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: vpc-resource-controller

---
apiVersion: apps/v1
kind: Deployment
metadata:
name: vpc-resource-controller
namespace: kube-system

---
apiVersion: v1
kind: Secret
metadata:
name: vpc-admission-webhook-certs
namespace: kube-system
64 changes: 0 additions & 64 deletions pkg/addons/assets/vpc-resource-controller-dep.yaml

This file was deleted.

33 changes: 0 additions & 33 deletions pkg/addons/assets/vpc-resource-controller.yaml

This file was deleted.

9 changes: 9 additions & 0 deletions pkg/addons/device_plugin.go
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,15 @@ type DevicePlugin interface {
Deploy() error
}

type typeAssertionError struct {
expected interface{}
got interface{}
}

func (t *typeAssertionError) Error() string {
return fmt.Sprintf("expected type to be %T; got %T", t.expected, t.got)
}

func applyDevicePlugin(dp DevicePlugin) error {
list, err := kubernetes.NewList(dp.Manifest())
if err != nil {
Expand Down
Loading