35
35
import oracle .kubernetes .operator .logging .LoggingFactory ;
36
36
import oracle .kubernetes .operator .steps .DefaultResponseStep ;
37
37
import oracle .kubernetes .operator .wlsconfig .NetworkAccessPoint ;
38
+ import oracle .kubernetes .operator .wlsconfig .WlsServerConfig ;
38
39
import oracle .kubernetes .operator .work .NextAction ;
39
40
import oracle .kubernetes .operator .work .Packet ;
40
41
import oracle .kubernetes .operator .work .Step ;
@@ -89,12 +90,14 @@ private static class ForServerStepContext extends ServerServiceStepContext {
89
90
private final KubernetesVersion version ;
90
91
private final Integer port ;
91
92
private final Integer nodePort ;
93
+ private final WlsServerConfig scan ;
92
94
93
95
ForServerStepContext (Step conflictStep , Packet packet ) {
94
96
super (conflictStep , packet );
95
97
version = packet .getSPI (KubernetesVersion .class );
96
98
port = (Integer ) packet .get (ProcessingConstants .PORT );
97
99
nodePort = (Integer ) packet .get (ProcessingConstants .NODE_PORT );
100
+ scan = (WlsServerConfig ) packet .get (ProcessingConstants .SERVER_SCAN );
98
101
}
99
102
100
103
@ Override
@@ -106,9 +109,23 @@ protected V1ServiceSpec createServiceSpec() {
106
109
if (nodePort == null ) {
107
110
serviceSpec .clusterIP ("None" );
108
111
}
112
+ serviceSpec .ports (createServicePorts ());
109
113
return serviceSpec ;
110
114
}
111
115
116
+ protected List <V1ServicePort > createServicePorts () {
117
+ List <V1ServicePort > ports = new ArrayList <>();
118
+ for (NetworkAccessPoint nap : scan .getNetworkAccessPoints ()) {
119
+ V1ServicePort port = new V1ServicePort ()
120
+ .name (nap .getName ())
121
+ .port (nap .getListenPort ())
122
+ .protocol (nap .getProtocol ());
123
+ ports .add (port );
124
+ }
125
+ ports .add (createServicePort ());
126
+ return ports ;
127
+ }
128
+
112
129
@ Override
113
130
protected V1ServicePort createServicePort () {
114
131
V1ServicePort servicePort = new V1ServicePort ().port (port );
0 commit comments