@@ -115,10 +115,43 @@ func (s *jobSyncer) ensurePodSpec(in corev1.PodSpec) corev1.PodSpec {
115115 in .RestartPolicy = corev1 .RestartPolicyNever
116116 sctName := fmt .Sprintf ("%s-secret" , s .backup .Spec .ClusterName )
117117 in .Containers [0 ].Name = utils .ContainerBackupName
118+
118119 in .Containers [0 ].Image = fmt .Sprintf ("%s%s" , mysqlcluster .GetPrefixFromEnv (), s .backup .Spec .Image )
119- in .Containers [0 ].Args = []string {
120- "request_a_backup" ,
121- s .backup .GetBackupURL (s .backup .Spec .ClusterName , s .backup .Spec .HostName ),
120+
121+ if len (s .backup .Spec .BackupToNFS ) != 0 {
122+ // add volumn about pvc
123+ in .Volumes = []corev1.Volume {
124+ {
125+ Name : utils .XtrabackupPV ,
126+ VolumeSource : corev1.VolumeSource {
127+ NFS : & corev1.NFSVolumeSource {
128+ Server : s .backup .Spec .BackupToNFS ,
129+ Path : "/" ,
130+ },
131+ },
132+ },
133+ }
134+ //"rm -rf /backup/*;curl --user sys_backups:sys_backups sample-mysql-0.sample-mysql.default:8082/download|xbstream -x -C /backup"
135+ in .Containers [0 ].Command = []string {
136+ "/bin/bash" , "-c" , "--" ,
137+ }
138+ var backupToDir string = utils .BuildBackupName ()
139+ in .Containers [0 ].Args = []string {
140+ fmt .Sprintf ("mkdir -p /backup/%s;curl --user $BACKUP_USER:$BACKUP_PASSWORD %s/download|xbstream -x -C /backup/%s; exit ${PIPESTATUS[0]}" ,
141+ backupToDir , s .backup .GetBackupURL (s .backup .Spec .ClusterName , s .backup .Spec .HostName ), backupToDir ),
142+ }
143+ in .Containers [0 ].VolumeMounts = []corev1.VolumeMount {
144+ {
145+ Name : utils .XtrabackupPV ,
146+ MountPath : utils .XtrabckupLocal ,
147+ },
148+ }
149+ } else {
150+ // in.Containers[0].ImagePullPolicy = s.opt.ImagePullPolicy
151+ in .Containers [0 ].Args = []string {
152+ "request_a_backup" ,
153+ s .backup .GetBackupURL (s .backup .Spec .ClusterName , s .backup .Spec .HostName ),
154+ }
122155 }
123156 var optTrue bool = true
124157 in .Containers [0 ].Env = []corev1.EnvVar {
0 commit comments