mirror of
https://github.com/caprover/caprover
synced 2026-09-28 09:35:40 +00:00
Improved queued build
This commit is contained in:
@@ -1,11 +1,7 @@
|
||||
import express = require('express')
|
||||
import BaseApi = require('../../../../api/BaseApi')
|
||||
import ApiStatusCodes = require('../../../../api/ApiStatusCodes')
|
||||
import Logger = require('../../../../utils/Logger')
|
||||
import multer = require('multer')
|
||||
import fs = require('fs-extra')
|
||||
import DataStore = require('../../../../datastore/DataStore')
|
||||
import ServiceManager = require('../../../../user/ServiceManager')
|
||||
import InjectionExtractor = require('../../../../injection/InjectionExtractor')
|
||||
|
||||
const TEMP_UPLOAD = 'temp_upload/'
|
||||
|
||||
@@ -397,6 +397,9 @@ class ServiceManager {
|
||||
const dataStore = this.dataStore
|
||||
|
||||
return Promise.resolve()
|
||||
.then(function() {
|
||||
return self.ensureNotBuilding(appName)
|
||||
})
|
||||
.then(function() {
|
||||
Logger.d('Check if service is running: ' + serviceName)
|
||||
return dockerApi.isServiceRunningByName(serviceName)
|
||||
@@ -579,6 +582,14 @@ class ServiceManager {
|
||||
return requireFromString(preDeployFunction)
|
||||
}
|
||||
|
||||
ensureNotBuilding(appName: string) {
|
||||
if (this.activeBuilds[appName])
|
||||
throw ApiStatusCodes.createError(
|
||||
ApiStatusCodes.STATUS_ERROR_GENERIC,
|
||||
`Build in-progress for ${appName}. Please wait`
|
||||
)
|
||||
}
|
||||
|
||||
updateAppDefinition(
|
||||
appName: string,
|
||||
description: string,
|
||||
@@ -619,6 +630,9 @@ class ServiceManager {
|
||||
}
|
||||
|
||||
return Promise.resolve()
|
||||
.then(function() {
|
||||
return self.ensureNotBuilding(appName)
|
||||
})
|
||||
.then(function() {
|
||||
return dataStore.getAppsDataStore().getAppDefinition(appName)
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user