func newDSWorkerPod()

in controllers/worker_reconcile.go [58:108]


func newDSWorkerPod(cr *dsv1alpha1.DSWorker) *corev1.Pod {
	var podName = cr.Name + "-pod" + dsv1alpha1.RandStr(6)
	return &corev1.Pod{
		ObjectMeta: metav1.ObjectMeta{
			Name:      podName,
			Namespace: cr.Namespace,
			Labels: map[string]string{dsv1alpha1.DsAppName: dsv1alpha1.DsWorkerLabel,
				dsv1alpha1.DsVersionLabel: cr.Spec.Version,
				dsv1alpha1.DsServiceLabel: dsv1alpha1.DsServiceLabelValue,
			},
		},
		Spec: corev1.PodSpec{
			Hostname:           podName,
			Subdomain:          dsv1alpha1.DsServiceLabelValue,
			ServiceAccountName: dsv1alpha1.DsServiceAccount,
			Containers: []corev1.Container{
				{
					Name:            cr.Name,
					Image:           ImageName(cr.Spec.Repository, cr.Spec.Version),
					ImagePullPolicy: corev1.PullIfNotPresent,
					Env: []corev1.EnvVar{{
						Name:  dsv1alpha1.EnvZookeeper,
						Value: cr.Spec.ZookeeperConnect,
					}, {
						Name:  dsv1alpha1.DataSourceDriveName,
						Value: cr.Spec.Datasource.DriveName,
					},
						{
							Name:  dsv1alpha1.DataSourceUrl,
							Value: cr.Spec.Datasource.Url,
						},
						{
							Name:  dsv1alpha1.DataSourceUserName,
							Value: cr.Spec.Datasource.UserName,
						},
						{
							Name:  dsv1alpha1.DataSourcePassWord,
							Value: cr.Spec.Datasource.Password,
						},
					},
					Command: []string{
						"/bin/sh", "-c",
					},
					Args: []string{"sed -i 's/alert-listen-host: localhost/alert-listen-host: $(DS_ALERT_SERVICE_SERVICE_HOST)/g' conf/application.yaml ;" +
						" sed -i 's/50052/$(DS_ALERT_SERVICE_SERVICE_PORT)/g' conf/application.yaml ; " +
						"./bin/start.sh"},
				},
			},
		},
	}
}