8000 Exercise Nr. 5 · SimoRec/javaoperator@9ee6fb5 · GitHub
[go: up one dir, main page]

Skip to content

Commit 9ee6fb5

Browse files
author
simone
committed
Exercise Nr. 5
1 parent 63d9940 commit 9ee6fb5

File tree

2 files changed

+29
-0
lines changed

2 files changed

+29
-0
lines changed

kubernetes-charts/operator-role.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ rules:
88
resources:
99
- events
1010
- pods
11+
- configmaps
1112
- services
1213
verbs:
1314
- get

src/main/java/intre/it/javaoperator/controller/WebSiteReconciler.java

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,18 @@ public WebSiteReconciler() {
2222

2323
@Override
2424
public UpdateControl<WebSite> reconcile(WebSite WebSite, Context<WebSite> context) throws Exception {
25+
Map<String, String> html = new HashMap<>();
26+
html.put("index.html", "<html><body>" + WebSite.getSpec().getShortDescription() + "</body></html>");
27+
28+
ConfigMap configMap = new ConfigMapBuilder()
29+
.withNewMetadata()
30+
.withName(WebSite.getSpec().getWebSiteName()+"-cm")
31+
.addToLabels("app", WebSite.getSpec().getWebSiteName())
32+
.endMetadata()
33+
.withData(html)
34+
.build();
35+
client.configMaps().resource(configMap).create();
36+
2537
Deployment deployment = new DeploymentBuilder()
2638
.withNewMetadata()
2739
.withName(WebSite.getSpec().getWebSiteName()+"-deployment")
@@ -43,7 +55,22 @@ public UpdateControl<WebSite> reconcile(WebSite WebSite, Context<WebSite> contex
4355
.addNewPort()
4456
.withContainerPort(80)
4557
.endPort()
58+
.addNewVolumeMount()
59+
.withName("nginx-conf")
60+
.withSubPath("index.html")
61+
.withMountPath("/usr/share/nginx/html/index.html")
62+
.endVolumeMount()
4663
.endContainer()
64+
.addNewVolume()
65+
.withName("nginx-conf")
66+
.withNewConfigMap()
67+
.withName(WebSite.getSpec().getWebSiteName()+"-cm")
68+
.addNewItem()
69+
.withKey("index.html")
70+
.withPath("index.html")
71+
.endItem()
72+
.endConfigMap()
73+
.endVolume()
4774
.endSpec()
4875
.endTemplate()
4976
.endSpec()
@@ -79,6 +106,7 @@ public UpdateControl<WebSite> reconcile(WebSite WebSite, Context<WebSite> contex
79106
public DeleteControl cleanup(WebSite webSite, Context<WebSite> context) {
80107
client.apps().deployments().withName(webSite.getSpec().getWebSiteName()+"-deployment").delete(); // cancello il deployment
81108
client.services().withName(webSite.getSpec().getWebSiteName()+"-service").delete(); //Cancello il service
109+
client.configMaps().withName(webSite.getSpec().getWebSiteName()+"-cm").delete(); //Cancello la config map
82110
return DeleteControl.defaultDelete();
83111
}
84112
}

0 commit comments

Comments
 (0)
0