Provide ways to define Kubernetes services in Wing applications.
Here's a sketch based on our conversations yesterday (all is subject to change):
bring cloud;
bring k8s; // <-- cdk8s-plus behind the scenes?
class MyMicroService extends cloud.Kubernetes {
init() {
let d = new k8s.Deployment(replicas: 2);
d.addContainer(
image: "paulbouwer/hello-kubernetes:1",
portNumber: 8080
);
let s = d.exposeViaService();
let ingress = new k8s.Ingress();
ingress.addRule("/my_service", k8s.IngressBackend.fromService(s));
}
}
new MyMicroService();
When compiled to sim, this uses a local k8s cluster such as kind, MiniKube, k3s or Docker Kubernetes (do we need the user to install this or do we bundle this with wing somehow?).
When compiled to tf-aws, this creates a singleton EKS cluster (or allows the user to specify).
Use Cases
Build Kubernetes based applications: define the resources within the cluster.
Out of scope: define the cluster infrastructure itself.
Component
SDK
Community Notes
Please vote by adding a 👍 reaction to the issue to help us prioritize.
If you are interested to work on this issue, please leave a comment.
Feature Spec
Provide ways to define Kubernetes services in Wing applications.
Here's a sketch based on our conversations yesterday (all is subject to change):
sim
, this uses a local k8s cluster such as kind, MiniKube, k3s or Docker Kubernetes (do we need the user to install this or do we bundle this with wing somehow?).tf-aws
, this creates a singleton EKS cluster (or allows the user to specify).Use Cases
Build Kubernetes based applications: define the resources within the cluster.
Out of scope: define the cluster infrastructure itself.
Component
SDK
Community Notes