4 appsv1 "k8s.io/api/apps/v1"
\r
5 corev1 "k8s.io/api/core/v1"
\r
6 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
\r
7 "k8s.io/apimachinery/pkg/util/intstr"
\r
10 func int32Ptr(val int) *int32 {
\r
16 func GetDeployment() []*appsv1.Deployment {
\r
18 deployment1 := &appsv1.Deployment{
\r
19 ObjectMeta: metav1.ObjectMeta{
\r
20 Labels: map[string]string{
\r
22 "release": "release-name",
\r
23 "app": "ricplt-a1mediator",
\r
24 "chart": "a1mediator-3.0.0",
\r
26 Name: "deployment-ricplt-a1mediator",
\r
27 Namespace: "ricplt",
\r
29 Spec: appsv1.DeploymentSpec{
\r
31 Replicas: int32Ptr(1),
\r
32 Selector: &metav1.LabelSelector{
\r
33 MatchLabels: map[string]string{
\r
34 "app": "ricplt-a1mediator",
\r
35 "release": "release-name",
\r
38 Template: corev1.PodTemplateSpec{
\r
39 ObjectMeta: metav1.ObjectMeta{
\r
40 Labels: map[string]string{
\r
41 "release": "release-name",
\r
42 "app": "ricplt-a1mediator",
\r
45 Spec: corev1.PodSpec{
\r
47 Hostname: "a1mediator",
\r
48 ImagePullSecrets: []corev1.LocalObjectReference{
\r
50 corev1.LocalObjectReference{
\r
51 Name: "secret-nexus3-o-ran-sc-org-10002-o-ran-sc",
\r
54 Volumes: []corev1.Volume{
\r
58 VolumeSource: corev1.VolumeSource{
\r
59 ConfigMap: &corev1.ConfigMapVolumeSource{
\r
60 LocalObjectReference: corev1.LocalObjectReference{
\r
61 Name: "configmap-ricplt-a1mediator-a1conf",
\r
67 Containers: []corev1.Container{
\r
70 ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),
\r
71 LivenessProbe: &corev1.Probe{
\r
72 ProbeHandler: corev1.ProbeHandler{
\r
73 HTTPGet: &corev1.HTTPGetAction{
\r
74 Path: "/a1-p/healthcheck",
\r
75 Port: intstr.IntOrString{
\r
77 Type: intstr.Type(1),
\r
82 Name: "container-ricplt-a1mediator",
\r
83 Ports: []corev1.ContainerPort{
\r
85 corev1.ContainerPort{
\r
86 ContainerPort: 10000,
\r
88 Protocol: corev1.Protocol("TCP"),
\r
90 corev1.ContainerPort{
\r
91 ContainerPort: 4561,
\r
93 Protocol: corev1.Protocol("TCP"),
\r
95 corev1.ContainerPort{
\r
96 ContainerPort: 4562,
\r
98 Protocol: corev1.Protocol("TCP"),
\r
104 EnvFrom: []corev1.EnvFromSource{
\r
106 corev1.EnvFromSource{
\r
107 ConfigMapRef: &corev1.ConfigMapEnvSource{
\r
108 LocalObjectReference: corev1.LocalObjectReference{
\r
109 Name: "configmap-ricplt-a1mediator-env",
\r
113 corev1.EnvFromSource{
\r
114 ConfigMapRef: &corev1.ConfigMapEnvSource{
\r
115 LocalObjectReference: corev1.LocalObjectReference{
\r
116 Name: "configmap-ricplt-dbaas-appconfig",
\r
121 Image: "nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-a1:2.5.0",
\r
122 ReadinessProbe: &corev1.Probe{
\r
123 ProbeHandler: corev1.ProbeHandler{
\r
124 HTTPGet: &corev1.HTTPGetAction{
\r
125 Path: "/a1-p/healthcheck",
\r
126 Port: intstr.IntOrString{
\r
128 Type: intstr.Type(1),
\r
133 VolumeMounts: []corev1.VolumeMount{
\r
135 corev1.VolumeMount{
\r
136 MountPath: "/opt/route",
\r
144 HostNetwork: false,
\r
148 TypeMeta: metav1.TypeMeta{
\r
149 APIVersion: "apps/v1",
\r
150 Kind: "Deployment",
\r
154 return []*appsv1.Deployment{deployment1}
\r