fix: Fix issue with .NET environment creation failure (#7980)

This commit is contained in:
zhengkunwang 2025-02-24 18:17:52 +08:00 committed by GitHub
parent 68146ec70b
commit efa2fa9eac
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
14 changed files with 89 additions and 12 deletions

View file

@ -804,6 +804,9 @@ func (u *ContainerService) StreamLogs(ctx *gin.Context, params dto.StreamLog) {
select {
case msg, ok := <-messageChan:
if !ok {
if msg == "" {
return true
}
return false
}
_, err := fmt.Fprintf(w, "data: %v\n\n", msg)
@ -812,8 +815,10 @@ func (u *ContainerService) StreamLogs(ctx *gin.Context, params dto.StreamLog) {
}
return true
case err := <-errorChan:
_, _ = fmt.Fprintf(w, "event: error\ndata: %v\n\n", err.Error())
return false
if err != nil {
_, _ = fmt.Fprintf(w, "event: error\ndata: %v\n\n", err.Error())
}
return true
case <-ctx.Request.Context().Done():
return false
}

View file

@ -187,7 +187,7 @@ func SyncRuntimesStatus(runtimes []model.Runtime) error {
}
}
for _, index := range runtimeContainer {
if runtimes[index].Status != constant.StatusBuilding {
if runtimes[index].Status != constant.StatusBuilding && runtimes[index].Status != constant.StatusCreating {
runtimes[index].Status = constant.StatusStopped
}
}
@ -499,7 +499,7 @@ func handleCompose(env gotenv.Env, composeContent []byte, create request.Runtime
var volumes []interface{}
defaultVolumes := make(map[string]string)
switch create.Type {
case constant.RuntimeNode, constant.RuntimeJava, constant.RuntimePython:
case constant.RuntimeNode, constant.RuntimeJava, constant.RuntimePython, constant.RuntimeDotNet:
defaultVolumes = constant.RuntimeDefaultVolumes
case constant.RuntimeGo:
defaultVolumes = constant.GoDefaultVolumes

View file

@ -76,6 +76,16 @@ const message = {
down: 'Stop',
up: 'Start',
},
operate: {
start: 'Start',
stop: 'Stop',
restart: 'Restart',
reload: 'Reload',
rebuild: 'Rebuild',
sync: 'Sync',
up: 'Up',
down: 'Down',
},
search: {
timeStart: 'Time start',
timeEnd: 'Time end',

View file

@ -73,6 +73,16 @@ const message = {
down: '停止',
up: '起動',
},
operate: {
start: '開始',
stop: '停止',
restart: '再起動',
reload: '再読み込み',
rebuild: '再構築',
sync: '同期',
up: '起動',
down: '停止',
},
search: {
timeStart: '時間開始',
timeEnd: 'タイムエンド',

View file

@ -73,6 +73,16 @@ const message = {
down: '중지',
up: '시작',
},
operate: {
start: '시작',
stop: '중지',
restart: '재시작',
reload: '다시 로드',
rebuild: '재구축',
sync: '동기화',
up: '실행',
down: '중지',
},
search: {
timeStart: '시작 시간',
timeEnd: '종료 시간',

View file

@ -73,6 +73,16 @@ const message = {
down: 'Hentikan',
up: 'Mulakan',
},
operate: {
start: 'Mula',
stop: 'Hentikan',
restart: 'Mulai Semula',
reload: 'Muat Semula',
rebuild: 'Bangun Semula',
sync: 'Segerakkan',
up: 'Naik',
down: 'Turun',
},
search: {
timeStart: 'Masa mula',
timeEnd: 'Masa tamat',

View file

@ -73,6 +73,16 @@ const message = {
down: 'Parar',
up: 'Iniciar',
},
operate: {
start: 'Iniciar',
stop: 'Parar',
restart: 'Reiniciar',
reload: 'Recarregar',
rebuild: 'Reconstruir',
sync: 'Sincronizar',
up: 'Iniciar',
down: 'Parar',
},
search: {
timeStart: 'Hora inicial',
timeEnd: 'Hora final',

View file

@ -73,6 +73,16 @@ const message = {
down: 'Остановить',
up: 'Запустить',
},
operate: {
start: 'Запустить',
stop: 'Остановить',
restart: 'Перезапустить',
reload: 'Перезагрузить',
rebuild: 'Перестроить',
sync: 'Синхронизировать',
up: 'Запустить',
down: 'Остановить',
},
search: {
timeStart: 'Время начала',
timeEnd: 'Время окончания',

View file

@ -76,6 +76,16 @@ const message = {
down: '停止',
up: '啟動',
},
operate: {
start: '啟動',
stop: '停止',
restart: '重新啟動',
reload: '重新載入',
rebuild: '重建',
sync: '同步',
up: '啟動',
down: '停止',
},
search: {
timeStart: '開始時間',
timeEnd: '結束時間',

View file

@ -83,6 +83,8 @@ const message = {
reload: '重载',
rebuild: '重建',
sync: '同步',
up: '启动',
down: '停止',
},
search: {
timeStart: '开始时间',

View file

@ -226,7 +226,7 @@ const goInstall = (key: string, type: string) => {
case 'java':
case 'go':
case 'python':
case 'donet':
case 'dotnet':
router.push({ path: '/websites/runtimes/' + type });
break;
default:

View file

@ -133,7 +133,7 @@ const req = reactive<Runtime.RuntimeReq>({
name: '',
page: 1,
pageSize: 40,
type: 'donet',
type: 'dotnet',
});
const buttons = [
{
@ -199,7 +199,7 @@ const sync = () => {
};
const openCreate = () => {
operateRef.value.acceptParams({ type: 'donet', mode: 'create' });
operateRef.value.acceptParams({ type: 'dotnet', mode: 'create' });
};
const openDetail = (row: Runtime.Runtime) => {
@ -228,8 +228,8 @@ const goDashboard = async (port: any, protocol: string) => {
const operateRuntime = async (operate: string, ID: number) => {
try {
const action = await ElMessageBox.confirm(
i18n.global.t('runtime.operatorHelper', [i18n.global.t('ommons.operate.' + operate)]),
i18n.global.t('ommons.operate.' + operate),
i18n.global.t('runtime.operatorHelper', [i18n.global.t('commons.operate.' + operate)]),
i18n.global.t('commons.operate.' + operate),
{
confirmButtonText: i18n.global.t('commons.button.confirm'),
cancelButtonText: i18n.global.t('commons.button.cancel'),

View file

@ -80,7 +80,7 @@ const initData = (type: string) => ({
environments: [],
volumes: [],
});
let runtime = reactive<Runtime.RuntimeCreate>(initData('donet'));
let runtime = reactive<Runtime.RuntimeCreate>(initData('dotnet'));
const rules = ref<any>({
name: [Rules.requiredInput, Rules.appName],
appID: [Rules.requiredSelect],

View file

@ -222,8 +222,8 @@ const goDashboard = async (port: any, protocol: string) => {
const operateRuntime = async (operate: string, ID: number) => {
try {
const action = await ElMessageBox.confirm(
i18n.global.t('runtime.operatorHelper', [i18n.global.t('ommons.operate.' + operate)]),
i18n.global.t('ommons.operate.' + operate),
i18n.global.t('runtime.operatorHelper', [i18n.global.t('commons.operate.' + operate)]),
i18n.global.t('commons.operate.' + operate),
{
confirmButtonText: i18n.global.t('commons.button.confirm'),
cancelButtonText: i18n.global.t('commons.button.cancel'),