mirror of
https://github.com/1Panel-dev/1Panel.git
synced 2025-03-14 01:34:47 +08:00
fix: 工作目录切换逻辑修改 (#1269)
This commit is contained in:
parent
08992f83b5
commit
633e26b1de
@ -79,20 +79,10 @@ func (u *CronjobService) handleShell(cronType, cornName, script string) ([]byte,
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
oldDir, err := os.Getwd()
|
stdout, err := cmd.ExecCronjobWithTimeOut(script, handleDir, 24*time.Hour)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
if err := os.Chdir(handleDir); err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
stdout, err := cmd.ExecCronjobWithTimeOut(script, 24*time.Hour)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
if err := os.Chdir(oldDir); err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return []byte(stdout), nil
|
return []byte(stdout), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -67,10 +67,11 @@ func ExecWithTimeOut(cmdStr string, timeout time.Duration) (string, error) {
|
|||||||
return stdout.String(), nil
|
return stdout.String(), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func ExecCronjobWithTimeOut(cmdStr string, timeout time.Duration) (string, error) {
|
func ExecCronjobWithTimeOut(cmdStr string, workdir string, timeout time.Duration) (string, error) {
|
||||||
ctx, cancel := context.WithTimeout(context.Background(), timeout)
|
ctx, cancel := context.WithTimeout(context.Background(), timeout)
|
||||||
defer cancel()
|
defer cancel()
|
||||||
cmd := exec.Command("bash", "-c", cmdStr)
|
cmd := exec.Command("bash", "-c", cmdStr)
|
||||||
|
cmd.Dir = workdir
|
||||||
var stdout, stderr bytes.Buffer
|
var stdout, stderr bytes.Buffer
|
||||||
cmd.Stdout = &stdout
|
cmd.Stdout = &stdout
|
||||||
cmd.Stderr = &stderr
|
cmd.Stderr = &stderr
|
||||||
|
@ -231,12 +231,23 @@
|
|||||||
<template #label>
|
<template #label>
|
||||||
<span class="status-label">{{ $t('cronjob.exclusionRules') }}</span>
|
<span class="status-label">{{ $t('cronjob.exclusionRules') }}</span>
|
||||||
</template>
|
</template>
|
||||||
<div v-if="dialogData.rowData!.exclusionRules">
|
<span v-if="dialogData.rowData!.exclusionRules.length <= 12" class="status-count">
|
||||||
<div v-for="item in dialogData.rowData!.exclusionRules.split(';')" :key="item">
|
{{ dialogData.rowData!.exclusionRules }}
|
||||||
<el-tag>{{ item }}</el-tag>
|
</span>
|
||||||
</div>
|
<div v-else>
|
||||||
|
<el-popover
|
||||||
|
placement="top-start"
|
||||||
|
trigger="hover"
|
||||||
|
width="250"
|
||||||
|
:content="dialogData.rowData!.exclusionRules"
|
||||||
|
>
|
||||||
|
<template #reference>
|
||||||
|
<span class="status-count">
|
||||||
|
{{ dialogData.rowData!.exclusionRules.substring(0, 12) }}...
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
</el-popover>
|
||||||
</div>
|
</div>
|
||||||
<span class="status-count" v-else>-</span>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-row type="flex" justify="center">
|
<el-row type="flex" justify="center">
|
||||||
<el-form-item class="descriptionWide">
|
<el-form-item class="descriptionWide">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user