@oondemand/oon-core-back 0.7.27 → 0.7.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oondemand/oon-core-back",
3
- "version": "0.7.27",
3
+ "version": "0.7.28",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/oondemand/oon-platform.git",
@@ -55,12 +55,16 @@ function memoryMi(value) {
55
55
 
56
56
  /**
57
57
  * Cota do namespace calculada pelas réplicas e pelo perfil de recursos, com
58
- * espaço para o pod extra do rolling update (maxSurge 1). Nunca fica abaixo
59
- * do piso anterior, então Apps de 1 réplica mantêm a cota de sempre.
58
+ * espaço para o pior momento do rolling update: as réplicas antigas ainda em
59
+ * encerramento (preStop + encerramento gracioso, até 40 s; Pod em
60
+ * encerramento continua contando na cota), as novas e o pod extra (maxSurge 1)
61
+ * = 2 × réplicas + 1. Com só réplicas + 1, a criação da réplica nova era
62
+ * recusada (exceeded quota) até a antiga sair. A cota é um teto, não reserva
63
+ * CPU nem memória no cluster. Nunca fica abaixo do piso anterior.
60
64
  */
61
65
  function namespaceQuota({ replicas = 1, profile = "small" } = {}) {
62
66
  const resources = RESOURCE_PROFILES[profile] || RESOURCE_PROFILES.small;
63
- const pods = replicas + 1;
67
+ const pods = 2 * replicas + 1;
64
68
  return {
65
69
  requestsCpu: `${Math.max(QUOTA_FLOOR.requestsCpuMilli, pods * cpuMilli(resources.cpuRequest))}m`,
66
70
  requestsMemory: `${Math.max(QUOTA_FLOOR.requestsMemoryMi, pods * memoryMi(resources.memoryRequest))}Mi`,