mirror of
https://github.com/1Panel-dev/1Panel.git
synced 2025-10-09 23:17:21 +08:00
fix: Fix the failure to back up file names containing Spaces for scheduled jobs (#8263)
This commit is contained in:
parent
d4213daa58
commit
d09a3d82b9
12 changed files with 14 additions and 6 deletions
|
@ -83,8 +83,8 @@ func (u *CronjobService) handleWebsite(cronjob model.Cronjob, startTime time.Tim
|
||||||
record.Name = web.Alias
|
record.Name = web.Alias
|
||||||
record.DetailName = web.Alias
|
record.DetailName = web.Alias
|
||||||
record.DownloadAccountID, record.SourceAccountIDs = cronjob.DownloadAccountID, cronjob.SourceAccountIDs
|
record.DownloadAccountID, record.SourceAccountIDs = cronjob.DownloadAccountID, cronjob.SourceAccountIDs
|
||||||
backupDir := path.Join(global.Dir.TmpDir, fmt.Sprintf("website/%s", web.PrimaryDomain))
|
backupDir := path.Join(global.Dir.TmpDir, fmt.Sprintf("website/%s", web.Alias))
|
||||||
record.FileName = fmt.Sprintf("website_%s_%s.tar.gz", web.PrimaryDomain, startTime.Format(constant.DateTimeSlimLayout)+common.RandStrAndNum(5))
|
record.FileName = fmt.Sprintf("website_%s_%s.tar.gz", web.Alias, startTime.Format(constant.DateTimeSlimLayout)+common.RandStrAndNum(5))
|
||||||
if err := handleWebsiteBackup(&web, backupDir, record.FileName, cronjob.ExclusionRules, cronjob.Secret, taskID); err != nil {
|
if err := handleWebsiteBackup(&web, backupDir, record.FileName, cronjob.ExclusionRules, cronjob.Secret, taskID); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
|
@ -768,7 +768,7 @@ func (f FileOp) TarGzFilesWithCompressPro(list []string, dst, secret string) err
|
||||||
|
|
||||||
var filelist []string
|
var filelist []string
|
||||||
for _, item := range list {
|
for _, item := range list {
|
||||||
filelist = append(filelist, "-C "+path.Dir(item)+" "+path.Base(item))
|
filelist = append(filelist, "-C '"+path.Dir(item)+"' '"+path.Base(item)+"' ")
|
||||||
}
|
}
|
||||||
commands := ""
|
commands := ""
|
||||||
if len(secret) != 0 {
|
if len(secret) != 0 {
|
||||||
|
|
|
@ -1291,6 +1291,7 @@ const message = {
|
||||||
settings: 'Setting',
|
settings: 'Setting',
|
||||||
cronjobs: 'Cronjob',
|
cronjobs: 'Cronjob',
|
||||||
databases: 'Database',
|
databases: 'Database',
|
||||||
|
waf: 'WAF',
|
||||||
licenses: 'License',
|
licenses: 'License',
|
||||||
nodes: 'Node',
|
nodes: 'Node',
|
||||||
commands: 'Quick Commands',
|
commands: 'Quick Commands',
|
||||||
|
|
|
@ -1228,6 +1228,7 @@ const message = {
|
||||||
settings: 'パネル設定',
|
settings: 'パネル設定',
|
||||||
cronjobs: 'スケジュールされたタスク',
|
cronjobs: 'スケジュールされたタスク',
|
||||||
databases: 'データベース',
|
databases: 'データベース',
|
||||||
|
waf: 'WAF',
|
||||||
licenses: 'ライセンス',
|
licenses: 'ライセンス',
|
||||||
nodes: 'ノード',
|
nodes: 'ノード',
|
||||||
commands: 'クイックコマンド',
|
commands: 'クイックコマンド',
|
||||||
|
|
|
@ -1215,6 +1215,7 @@ const message = {
|
||||||
logs: '로그 감사',
|
logs: '로그 감사',
|
||||||
settings: '패널 설정',
|
settings: '패널 설정',
|
||||||
cronjobs: '예약 작업',
|
cronjobs: '예약 작업',
|
||||||
|
waf: 'WAF',
|
||||||
databases: '데이터베이스',
|
databases: '데이터베이스',
|
||||||
licenses: '라이선스',
|
licenses: '라이선스',
|
||||||
nodes: '노드',
|
nodes: '노드',
|
||||||
|
|
|
@ -1270,6 +1270,7 @@ const message = {
|
||||||
logs: 'Audit Log',
|
logs: 'Audit Log',
|
||||||
settings: 'Tetapan Panel',
|
settings: 'Tetapan Panel',
|
||||||
cronjobs: 'Tugas Terjadual',
|
cronjobs: 'Tugas Terjadual',
|
||||||
|
waf: 'WAF',
|
||||||
databases: 'Pangkalan',
|
databases: 'Pangkalan',
|
||||||
licenses: 'lesen',
|
licenses: 'lesen',
|
||||||
nodes: 'nod',
|
nodes: 'nod',
|
||||||
|
|
|
@ -1253,6 +1253,7 @@ const message = {
|
||||||
logs: 'Auditoria de Logs',
|
logs: 'Auditoria de Logs',
|
||||||
settings: 'Configurações do Painel',
|
settings: 'Configurações do Painel',
|
||||||
cronjobs: 'Tarefas Agendadas',
|
cronjobs: 'Tarefas Agendadas',
|
||||||
|
waf: 'WAF',
|
||||||
databases: 'Bancos de Dados',
|
databases: 'Bancos de Dados',
|
||||||
licenses: 'licenças',
|
licenses: 'licenças',
|
||||||
nodes: 'nós',
|
nodes: 'nós',
|
||||||
|
|
|
@ -1261,6 +1261,7 @@ const message = {
|
||||||
logs: 'Аудит журналов',
|
logs: 'Аудит журналов',
|
||||||
settings: 'Настройки панели',
|
settings: 'Настройки панели',
|
||||||
cronjobs: 'Запланированные задачи',
|
cronjobs: 'Запланированные задачи',
|
||||||
|
waf: 'WAF',
|
||||||
databases: 'Базы данных',
|
databases: 'Базы данных',
|
||||||
licenses: 'лицензии',
|
licenses: 'лицензии',
|
||||||
nodes: 'ноды',
|
nodes: 'ноды',
|
||||||
|
|
|
@ -1220,6 +1220,7 @@ const message = {
|
||||||
logs: '日誌審計',
|
logs: '日誌審計',
|
||||||
settings: '面板設定',
|
settings: '面板設定',
|
||||||
cronjobs: '計畫任務',
|
cronjobs: '計畫任務',
|
||||||
|
waf: 'WAF',
|
||||||
databases: '資料庫',
|
databases: '資料庫',
|
||||||
licenses: '許可證',
|
licenses: '許可證',
|
||||||
nodes: '節點',
|
nodes: '節點',
|
||||||
|
|
|
@ -1219,6 +1219,7 @@ const message = {
|
||||||
settings: '面板设置',
|
settings: '面板设置',
|
||||||
cronjobs: '计划任务',
|
cronjobs: '计划任务',
|
||||||
databases: '数据库',
|
databases: '数据库',
|
||||||
|
waf: 'WAF',
|
||||||
licenses: '许可证',
|
licenses: '许可证',
|
||||||
nodes: '节点',
|
nodes: '节点',
|
||||||
commands: '快速命令',
|
commands: '快速命令',
|
||||||
|
|
|
@ -43,8 +43,8 @@ import { onMounted, ref } from 'vue';
|
||||||
|
|
||||||
defineOptions({ name: 'OpDialog' });
|
defineOptions({ name: 'OpDialog' });
|
||||||
|
|
||||||
const checkAll = ref(false);
|
const checkAll = ref();
|
||||||
const isIndeterminate = ref(true);
|
const isIndeterminate = ref(false);
|
||||||
const checkedItems = ref([]);
|
const checkedItems = ref([]);
|
||||||
const list = ref([]);
|
const list = ref([]);
|
||||||
|
|
||||||
|
@ -58,7 +58,6 @@ const acceptParams = (props: DialogProps): void => {
|
||||||
checkAll.value = false;
|
checkAll.value = false;
|
||||||
checkedItems.value = [];
|
checkedItems.value = [];
|
||||||
list.value = props.list;
|
list.value = props.list;
|
||||||
checkAll.value = true;
|
|
||||||
open.value = true;
|
open.value = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,7 @@
|
||||||
<el-option :label="$t('logs.detail.cronjobs')" value="cronjobs" />
|
<el-option :label="$t('logs.detail.cronjobs')" value="cronjobs" />
|
||||||
<el-option :label="$t('logs.detail.toolbox')" value="toolbox" />
|
<el-option :label="$t('logs.detail.toolbox')" value="toolbox" />
|
||||||
<el-option :label="$t('logs.detail.process')" value="process" />
|
<el-option :label="$t('logs.detail.process')" value="process" />
|
||||||
|
<el-option label="WAF" value="waf" />
|
||||||
<el-option :label="$t('logs.detail.nodes')" value="nodes" />
|
<el-option :label="$t('logs.detail.nodes')" value="nodes" />
|
||||||
<el-option :label="$t('logs.detail.tampers')" value="tampers" />
|
<el-option :label="$t('logs.detail.tampers')" value="tampers" />
|
||||||
<el-option :label="$t('logs.detail.xsetting')" value="xsetting" />
|
<el-option :label="$t('logs.detail.xsetting')" value="xsetting" />
|
||||||
|
|
Loading…
Add table
Reference in a new issue