- Fix restart_policy in Service config.
- Tweaked the upgrade process a bit. REVERTED.
- Refactor and cosmetic surgery here and there.
- Track Service config changes and allow redeploy if it changes.
This commit is contained in:
Andras Bacsai
2021-03-30 23:35:22 +02:00
committed by GitHub
parent a1cccd479e
commit 767c65ab10
16 changed files with 122 additions and 116 deletions

View File

@@ -1,8 +1,9 @@
const { uniqueNamesGenerator, adjectives, colors, animals } = require('unique-names-generator')
const cuid = require('cuid')
const { execShellAsync } = require('../common')
const crypto = require('crypto')
const { execShellAsync } = require('../common')
function getUniq () {
return uniqueNamesGenerator({ dictionaries: [adjectives, animals, colors], length: 2 })
}
@@ -15,6 +16,24 @@ function setDefaultConfiguration (configuration) {
const shaBase = JSON.stringify({ repository: configuration.repository })
const sha256 = crypto.createHash('sha256').update(shaBase).digest('hex')
const baseServiceConfiguration = {
replicas: 1,
restart_policy: {
condition: 'any',
max_attempts: 3
},
update_config: {
parallelism: 1,
delay: '10s',
order: 'start-first'
},
rollback_config: {
parallelism: 1,
delay: '10s',
order: 'start-first'
}
}
configuration.build.container.name = sha256.slice(0, 15)
configuration.general.nickname = nickname
@@ -34,6 +53,9 @@ function setDefaultConfiguration (configuration) {
if (!configuration.build.directory) configuration.build.directory = '/'
}
configuration.build.container.baseSHA = crypto.createHash('sha256').update(JSON.stringify(baseServiceConfiguration)).digest('hex')
configuration.baseServiceConfiguration = baseServiceConfiguration
return configuration
} catch (error) {
throw { error, type: 'server' }