@drunk-pulumi/azure 0.0.19 → 0.0.21

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.
Files changed (162) hide show
  1. package/Aks/Helper.d.ts +0 -18
  2. package/Aks/Helper.js +50 -32
  3. package/Common/AutoTags.js +2 -1
  4. package/package.json +3 -6
  5. package/KubeX/AcrSecret.d.ts +0 -15
  6. package/KubeX/AcrSecret.js +0 -31
  7. package/KubeX/Apps/AstroPage.d.ts +0 -12
  8. package/KubeX/Apps/AstroPage.js +0 -33
  9. package/KubeX/Apps/KafKa.d.ts +0 -6
  10. package/KubeX/Apps/KafKa.js +0 -13
  11. package/KubeX/Apps/Nobelium.d.ts +0 -13
  12. package/KubeX/Apps/Nobelium.js +0 -37
  13. package/KubeX/Apps/Wikijs.d.ts +0 -30
  14. package/KubeX/Apps/Wikijs.js +0 -54
  15. package/KubeX/Apps/WordPress.d.ts +0 -24
  16. package/KubeX/Apps/WordPress.js +0 -55
  17. package/KubeX/Apps/YarpProxy/index.d.ts +0 -17
  18. package/KubeX/Apps/YarpProxy/index.js +0 -107
  19. package/KubeX/Apps/YarpProxy/type.d.ts +0 -55
  20. package/KubeX/Apps/YarpProxy/type.js +0 -3
  21. package/KubeX/CertHelper.d.ts +0 -1
  22. package/KubeX/CertHelper.js +0 -9
  23. package/KubeX/CertImports.d.ts +0 -19
  24. package/KubeX/CertImports.js +0 -70
  25. package/KubeX/CloudFlare/CertCreator.d.ts +0 -19
  26. package/KubeX/CloudFlare/CertCreator.js +0 -90
  27. package/KubeX/CloudFlare/CertImports.d.ts +0 -17
  28. package/KubeX/CloudFlare/CertImports.js +0 -34
  29. package/KubeX/CloudFlare/DynamicDns.d.ts +0 -21
  30. package/KubeX/CloudFlare/DynamicDns.js +0 -39
  31. package/KubeX/CloudFlare/Tunnel-Helm.d.ts +0 -17
  32. package/KubeX/CloudFlare/Tunnel-Helm.js +0 -12
  33. package/KubeX/CloudFlare/Tunnel.d.ts +0 -23
  34. package/KubeX/CloudFlare/Tunnel.js +0 -54
  35. package/KubeX/CloudFlare/index.d.ts +0 -13
  36. package/KubeX/CloudFlare/index.js +0 -36
  37. package/KubeX/Clusters/K3s/AutoUpgradeController/index.d.ts +0 -6
  38. package/KubeX/Clusters/K3s/AutoUpgradeController/index.js +0 -60
  39. package/KubeX/ConfigSecret.d.ts +0 -24
  40. package/KubeX/ConfigSecret.js +0 -38
  41. package/KubeX/Core/CertManager/index.d.ts +0 -24
  42. package/KubeX/Core/CertManager/index.js +0 -96
  43. package/KubeX/Core/KsCertSecret.d.ts +0 -12
  44. package/KubeX/Core/KsCertSecret.js +0 -22
  45. package/KubeX/Core/KsSecret.d.ts +0 -9
  46. package/KubeX/Core/KsSecret.js +0 -12
  47. package/KubeX/Core/LoadBalancer/MetalLB.d.ts +0 -7
  48. package/KubeX/Core/LoadBalancer/MetalLB.js +0 -21
  49. package/KubeX/Core/Monitoring/index.d.ts +0 -22
  50. package/KubeX/Core/Monitoring/index.js +0 -322
  51. package/KubeX/Core/Namespace.d.ts +0 -12
  52. package/KubeX/Core/Namespace.js +0 -41
  53. package/KubeX/Core/Nginx/index.d.ts +0 -60
  54. package/KubeX/Core/Nginx/index.js +0 -109
  55. package/KubeX/Core/OAuthProxy/index.d.ts +0 -0
  56. package/KubeX/Core/OAuthProxy/index.js +0 -3
  57. package/KubeX/Core/ResourceQuota.d.ts +0 -12
  58. package/KubeX/Core/ResourceQuota.js +0 -13
  59. package/KubeX/Core/SecurityRules.d.ts +0 -34
  60. package/KubeX/Core/SecurityRules.js +0 -93
  61. package/KubeX/Core/StorageClass/azureBlob.d.ts +0 -20
  62. package/KubeX/Core/StorageClass/azureBlob.js +0 -77
  63. package/KubeX/Core/StorageClass/azureFile.d.ts +0 -17
  64. package/KubeX/Core/StorageClass/azureFile.js +0 -45
  65. package/KubeX/Core/StorageClass/index.d.ts +0 -13
  66. package/KubeX/Core/StorageClass/index.js +0 -25
  67. package/KubeX/Core/index.d.ts +0 -57
  68. package/KubeX/Core/index.js +0 -94
  69. package/KubeX/Databases/MariaDb.d.ts +0 -11
  70. package/KubeX/Databases/MariaDb.js +0 -39
  71. package/KubeX/Databases/MySql.V2.d.ts +0 -11
  72. package/KubeX/Databases/MySql.V2.js +0 -40
  73. package/KubeX/Databases/MySql.d.ts +0 -13
  74. package/KubeX/Databases/MySql.js +0 -55
  75. package/KubeX/Databases/PostgreSql/PostgreSQL-HA.d.ts +0 -10
  76. package/KubeX/Databases/PostgreSql/PostgreSQL-HA.js +0 -47
  77. package/KubeX/Databases/PostgreSql/PostgreSQL.d.ts +0 -10
  78. package/KubeX/Databases/PostgreSql/PostgreSQL.js +0 -51
  79. package/KubeX/Databases/PostgreSql/PostgreSql.v1.d.ts +0 -13
  80. package/KubeX/Databases/PostgreSql/PostgreSql.v1.js +0 -56
  81. package/KubeX/Databases/PostgreSql/index.d.ts +0 -17
  82. package/KubeX/Databases/PostgreSql/index.js +0 -6
  83. package/KubeX/Databases/RedisCache.d.ts +0 -14
  84. package/KubeX/Databases/RedisCache.js +0 -65
  85. package/KubeX/Databases/SqlServer.d.ts +0 -15
  86. package/KubeX/Databases/SqlServer.js +0 -77
  87. package/KubeX/Deployment/PodAutoscaler.d.ts +0 -14
  88. package/KubeX/Deployment/PodAutoscaler.js +0 -51
  89. package/KubeX/Deployment/index.d.ts +0 -136
  90. package/KubeX/Deployment/index.js +0 -306
  91. package/KubeX/Helpers.d.ts +0 -4
  92. package/KubeX/Helpers.js +0 -17
  93. package/KubeX/Ingress/AppGatewayIngress.d.ts +0 -2
  94. package/KubeX/Ingress/AppGatewayIngress.js +0 -4
  95. package/KubeX/Ingress/Conts.d.ts +0 -13
  96. package/KubeX/Ingress/Conts.js +0 -18
  97. package/KubeX/Ingress/NginxIngress.d.ts +0 -3
  98. package/KubeX/Ingress/NginxIngress.js +0 -186
  99. package/KubeX/Ingress/NginxProxy.d.ts +0 -21
  100. package/KubeX/Ingress/NginxProxy.js +0 -43
  101. package/KubeX/Ingress/TraefikIngress/CustomHeader.d.ts +0 -15
  102. package/KubeX/Ingress/TraefikIngress/CustomHeader.js +0 -15
  103. package/KubeX/Ingress/TraefikIngress/index.d.ts +0 -11
  104. package/KubeX/Ingress/TraefikIngress/index.js +0 -95
  105. package/KubeX/Ingress/index.d.ts +0 -5
  106. package/KubeX/Ingress/index.js +0 -12
  107. package/KubeX/Ingress/type.d.ts +0 -82
  108. package/KubeX/Ingress/type.js +0 -3
  109. package/KubeX/Providers/index.d.ts +0 -8
  110. package/KubeX/Providers/index.js +0 -15
  111. package/KubeX/Storage/Longhorn/index.d.ts +0 -15
  112. package/KubeX/Storage/Longhorn/index.js +0 -54
  113. package/KubeX/Storage/index.d.ts +0 -25
  114. package/KubeX/Storage/index.js +0 -79
  115. package/KubeX/Tools/AWS/LocalStack.d.ts +0 -7
  116. package/KubeX/Tools/AWS/LocalStack.js +0 -29
  117. package/KubeX/Tools/AWS/S3.d.ts +0 -6
  118. package/KubeX/Tools/AWS/S3.js +0 -44
  119. package/KubeX/Tools/AWS/index.d.ts +0 -7
  120. package/KubeX/Tools/AWS/index.js +0 -14
  121. package/KubeX/Tools/AppHealthzMonitor.d.ts +0 -18
  122. package/KubeX/Tools/AppHealthzMonitor.js +0 -52
  123. package/KubeX/Tools/ArgoCD/index.d.ts +0 -17
  124. package/KubeX/Tools/ArgoCD/index.js +0 -131
  125. package/KubeX/Tools/Dapr/Storage.d.ts +0 -66
  126. package/KubeX/Tools/Dapr/Storage.js +0 -70
  127. package/KubeX/Tools/Dapr/index.d.ts +0 -10
  128. package/KubeX/Tools/Dapr/index.js +0 -31
  129. package/KubeX/Tools/Echo-App.d.ts +0 -3
  130. package/KubeX/Tools/Echo-App.js +0 -21
  131. package/KubeX/Tools/Gitea/GiteaRepo.d.ts +0 -72
  132. package/KubeX/Tools/Gitea/GiteaRepo.js +0 -184
  133. package/KubeX/Tools/Gitea/GiteaRunner.d.ts +0 -11
  134. package/KubeX/Tools/Gitea/GiteaRunner.js +0 -37
  135. package/KubeX/Tools/Gitea/GiteaRunner.v1.d.ts +0 -11
  136. package/KubeX/Tools/Gitea/GiteaRunner.v1.js +0 -123
  137. package/KubeX/Tools/HarborRepo.d.ts +0 -29
  138. package/KubeX/Tools/HarborRepo.js +0 -78
  139. package/KubeX/Tools/HelloWorld.d.ts +0 -3
  140. package/KubeX/Tools/HelloWorld.js +0 -21
  141. package/KubeX/Tools/KubeCleanup.d.ts +0 -9
  142. package/KubeX/Tools/KubeCleanup.js +0 -34
  143. package/KubeX/Tools/NoIp.d.ts +0 -13
  144. package/KubeX/Tools/NoIp.js +0 -24
  145. package/KubeX/Tools/OpenLDAP/index.d.ts +0 -12
  146. package/KubeX/Tools/OpenLDAP/index.js +0 -56
  147. package/KubeX/Tools/OutlineVpn/index.d.ts +0 -25
  148. package/KubeX/Tools/OutlineVpn/index.js +0 -256
  149. package/KubeX/Tools/SqlPad.d.ts +0 -29
  150. package/KubeX/Tools/SqlPad.js +0 -133
  151. package/KubeX/Tools/ToolPod.d.ts +0 -10
  152. package/KubeX/Tools/ToolPod.js +0 -40
  153. package/KubeX/Tools/UptimeKuma.d.ts +0 -6
  154. package/KubeX/Tools/UptimeKuma.js +0 -38
  155. package/KubeX/Tools/index.d.ts +0 -27
  156. package/KubeX/Tools/index.js +0 -35
  157. package/KubeX/VairableResolvers/index.d.ts +0 -15
  158. package/KubeX/VairableResolvers/index.js +0 -49
  159. package/KubeX/kx/index.d.ts +0 -114
  160. package/KubeX/kx/index.js +0 -423
  161. package/KubeX/types.d.ts +0 -49
  162. package/KubeX/types.js +0 -3
@@ -1,10 +0,0 @@
1
- import * as k8s from '@pulumi/kubernetes';
2
- import { PostgreSqlProps } from '../../types';
3
- declare const _default: ({ name, namespace, vaultInfo, auth, storageClassName, provider, }: PostgreSqlProps) => Promise<{
4
- postgre: k8s.helm.v3.Chart;
5
- host: import("@pulumi/pulumi").Output<string>;
6
- port: number;
7
- username: string;
8
- password: import("@pulumi/pulumi").Input<string>;
9
- }>;
10
- export default _default;
@@ -1,47 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const Random_1 = require("../../../Core/Random");
4
- const k8s = require("@pulumi/kubernetes");
5
- const pulumi_1 = require("@pulumi/pulumi");
6
- exports.default = async ({ name = 'postgre-sql', namespace, vaultInfo, auth, storageClassName, provider, }) => {
7
- const password = auth?.rootPass
8
- ? auth.rootPass
9
- : (0, Random_1.randomPassword)({
10
- name,
11
- length: 25,
12
- options: { special: false },
13
- policy: false,
14
- vaultInfo,
15
- }).result;
16
- const postgre = new k8s.helm.v3.Chart(name, {
17
- namespace,
18
- chart: 'postgresql-ha',
19
- fetchOpts: { repo: 'https://charts.bitnami.com/bitnami' },
20
- skipAwait: true,
21
- values: {
22
- global: {
23
- storageClass: storageClassName,
24
- //architecture: 'standalone'
25
- pgpool: {
26
- //adminUsername: login.userName,
27
- adminPassword: password,
28
- },
29
- postgresql: {
30
- //username: login.userName,
31
- password: password,
32
- //postgresPassword: login.password,
33
- //repmgrUsername: 'repmgr',
34
- repmgrPassword: password,
35
- },
36
- },
37
- },
38
- }, { provider });
39
- return {
40
- postgre,
41
- host: (0, pulumi_1.interpolate) `${name}.${namespace}.svc.cluster.local`,
42
- port: 5432,
43
- username: 'postgres',
44
- password,
45
- };
46
- };
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9zdGdyZVNRTC1IQS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9LdWJlWC9EYXRhYmFzZXMvUG9zdGdyZVNxbC9Qb3N0Z3JlU1FMLUhBLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaURBQXNEO0FBQ3RELDBDQUEwQztBQUMxQywyQ0FBNkM7QUFHN0Msa0JBQWUsS0FBSyxFQUFFLEVBQ3BCLElBQUksR0FBRyxhQUFhLEVBQ3BCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsSUFBSSxFQUNKLGdCQUFnQixFQUNoQixRQUFRLEdBQ1EsRUFBRSxFQUFFO0lBQ3BCLE1BQU0sUUFBUSxHQUFHLElBQUksRUFBRSxRQUFRO1FBQzdCLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUTtRQUNmLENBQUMsQ0FBQyxJQUFBLHVCQUFjLEVBQUM7WUFDYixJQUFJO1lBQ0osTUFBTSxFQUFFLEVBQUU7WUFDVixPQUFPLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFO1lBQzNCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsU0FBUztTQUNWLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFFZCxNQUFNLE9BQU8sR0FBRyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FDbkMsSUFBSSxFQUNKO1FBQ0UsU0FBUztRQUNULEtBQUssRUFBRSxlQUFlO1FBQ3RCLFNBQVMsRUFBRSxFQUFFLElBQUksRUFBRSxvQ0FBb0MsRUFBRTtRQUN6RCxTQUFTLEVBQUUsSUFBSTtRQUNmLE1BQU0sRUFBRTtZQUNOLE1BQU0sRUFBRTtnQkFDTixZQUFZLEVBQUUsZ0JBQWdCO2dCQUM5Qiw0QkFBNEI7Z0JBQzVCLE1BQU0sRUFBRTtvQkFDTixnQ0FBZ0M7b0JBQ2hDLGFBQWEsRUFBRSxRQUFRO2lCQUN4QjtnQkFDRCxVQUFVLEVBQUU7b0JBQ1YsMkJBQTJCO29CQUMzQixRQUFRLEVBQUUsUUFBUTtvQkFDbEIsbUNBQW1DO29CQUNuQywyQkFBMkI7b0JBQzNCLGNBQWMsRUFBRSxRQUFRO2lCQUN6QjthQUNGO1NBQ0Y7S0FDRixFQUNELEVBQUUsUUFBUSxFQUFFLENBQ2IsQ0FBQztJQUVGLE9BQU87UUFDTCxPQUFPO1FBQ1AsSUFBSSxFQUFFLElBQUEsb0JBQVcsRUFBQSxHQUFHLElBQUksSUFBSSxTQUFTLG9CQUFvQjtRQUN6RCxJQUFJLEVBQUUsSUFBSTtRQUNWLFFBQVEsRUFBRSxVQUFVO1FBQ3BCLFFBQVE7S0FDVCxDQUFDO0FBQ0osQ0FBQyxDQUFDIn0=
@@ -1,10 +0,0 @@
1
- import * as k8s from '@pulumi/kubernetes';
2
- import { PostgreSqlProps } from '../../types';
3
- declare const _default: ({ name, namespace, vaultInfo, auth, storageClassName, provider, }: PostgreSqlProps) => {
4
- postgre: k8s.helm.v3.Chart;
5
- host: import("@pulumi/pulumi").Output<string>;
6
- port: number;
7
- username: string;
8
- password: import("@pulumi/pulumi").Input<string>;
9
- };
10
- export default _default;
@@ -1,51 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const Random_1 = require("../../../Core/Random");
4
- const k8s = require("@pulumi/kubernetes");
5
- const pulumi_1 = require("@pulumi/pulumi");
6
- exports.default = ({ name = 'postgre-sql', namespace, vaultInfo, auth, storageClassName, provider, }) => {
7
- const password = auth?.rootPass
8
- ? auth.rootPass
9
- : (0, Random_1.randomPassword)({
10
- name,
11
- length: 25,
12
- options: { special: false },
13
- policy: false,
14
- vaultInfo,
15
- }).result;
16
- const postgre = new k8s.helm.v3.Chart(name, {
17
- namespace,
18
- chart: 'postgresql',
19
- fetchOpts: { repo: 'https://charts.bitnami.com/bitnami' },
20
- skipAwait: true,
21
- values: {
22
- global: {
23
- storageClass: storageClassName,
24
- //architecture: 'standalone'
25
- // postgresql: {
26
- // auth: {
27
- // username: 'postgres',
28
- // database: 'postgres',
29
- // password: password,
30
- // postgresPassword: password,
31
- // },
32
- // },
33
- },
34
- auth: {
35
- enablePostgresUser: true,
36
- postgresPassword: password,
37
- username: 'postgres',
38
- password: password,
39
- database: 'postgres',
40
- },
41
- },
42
- }, { provider });
43
- return {
44
- postgre,
45
- host: (0, pulumi_1.interpolate) `${name}.${namespace}.svc.cluster.local`,
46
- port: 5432,
47
- username: 'postgres',
48
- password,
49
- };
50
- };
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9zdGdyZVNRTC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9LdWJlWC9EYXRhYmFzZXMvUG9zdGdyZVNxbC9Qb3N0Z3JlU1FMLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaURBQXNEO0FBQ3RELDBDQUEwQztBQUMxQywyQ0FBNkM7QUFHN0Msa0JBQWUsQ0FBQyxFQUNkLElBQUksR0FBRyxhQUFhLEVBQ3BCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsSUFBSSxFQUNKLGdCQUFnQixFQUNoQixRQUFRLEdBQ1EsRUFBRSxFQUFFO0lBQ3BCLE1BQU0sUUFBUSxHQUFHLElBQUksRUFBRSxRQUFRO1FBQzdCLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUTtRQUNmLENBQUMsQ0FBQyxJQUFBLHVCQUFjLEVBQUM7WUFDYixJQUFJO1lBQ0osTUFBTSxFQUFFLEVBQUU7WUFDVixPQUFPLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFO1lBQzNCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsU0FBUztTQUNWLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFFZCxNQUFNLE9BQU8sR0FBRyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FDbkMsSUFBSSxFQUNKO1FBQ0UsU0FBUztRQUNULEtBQUssRUFBRSxZQUFZO1FBQ25CLFNBQVMsRUFBRSxFQUFFLElBQUksRUFBRSxvQ0FBb0MsRUFBRTtRQUN6RCxTQUFTLEVBQUUsSUFBSTtRQUNmLE1BQU0sRUFBRTtZQUNOLE1BQU0sRUFBRTtnQkFDTixZQUFZLEVBQUUsZ0JBQWdCO2dCQUM5Qiw0QkFBNEI7Z0JBQzVCLGdCQUFnQjtnQkFDaEIsWUFBWTtnQkFDWiw0QkFBNEI7Z0JBQzVCLDRCQUE0QjtnQkFDNUIsMEJBQTBCO2dCQUMxQixrQ0FBa0M7Z0JBQ2xDLE9BQU87Z0JBQ1AsS0FBSzthQUNOO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLGtCQUFrQixFQUFFLElBQUk7Z0JBQ3hCLGdCQUFnQixFQUFFLFFBQVE7Z0JBQzFCLFFBQVEsRUFBRSxVQUFVO2dCQUNwQixRQUFRLEVBQUUsUUFBUTtnQkFDbEIsUUFBUSxFQUFFLFVBQVU7YUFDckI7U0FDRjtLQUNGLEVBQ0QsRUFBRSxRQUFRLEVBQUUsQ0FDYixDQUFDO0lBRUYsT0FBTztRQUNMLE9BQU87UUFDUCxJQUFJLEVBQUUsSUFBQSxvQkFBVyxFQUFBLEdBQUcsSUFBSSxJQUFJLFNBQVMsb0JBQW9CO1FBQ3pELElBQUksRUFBRSxJQUFJO1FBQ1YsUUFBUSxFQUFFLFVBQVU7UUFDcEIsUUFBUTtLQUNULENBQUM7QUFDSixDQUFDLENBQUMifQ==
@@ -1,13 +0,0 @@
1
- import { PostgreSqlProps } from '../../types';
2
- declare const _default: ({ name, namespace, vaultInfo, storageClassName, auth, ...others }: PostgreSqlProps) => {
3
- postgrSsql: {
4
- deployment: import("../../kx").Deployment | undefined;
5
- service: import("../../kx").Service | undefined;
6
- jobs: (import("@pulumi/kubernetes/batch/v1/cronJob").CronJob | import("../../kx").Job)[] | undefined;
7
- };
8
- host: import("@pulumi/pulumi").Output<string>;
9
- port: number;
10
- username: string;
11
- password: import("@pulumi/pulumi").Input<string>;
12
- };
13
- export default _default;
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const Random_1 = require("../../../Core/Random");
4
- const pulumi_1 = require("@pulumi/pulumi");
5
- const Deployment_1 = require("../../Deployment");
6
- const Storage_1 = require("../../Storage");
7
- exports.default = ({ name = 'postgres', namespace, vaultInfo, storageClassName, auth, ...others }) => {
8
- const password = auth?.rootPass ||
9
- (0, Random_1.randomPassword)({
10
- name,
11
- length: 25,
12
- policy: false,
13
- options: { special: false },
14
- vaultInfo,
15
- }).result;
16
- const persisVolume = (0, Storage_1.createPVCForStorageClass)({
17
- name,
18
- namespace,
19
- //accessMode: 'ReadWriteMany',
20
- ...others,
21
- storageClassName,
22
- });
23
- const port = 5432;
24
- const postgrSsql = (0, Deployment_1.default)({
25
- name,
26
- namespace,
27
- ...others,
28
- secrets: { POSTGRES_PASSWORD: password },
29
- podConfig: {
30
- ports: { http: port },
31
- image: `postgres:latest`,
32
- volumes: [
33
- {
34
- name: 'data',
35
- persistentVolumeClaim: persisVolume.metadata.name,
36
- mountPath: '/var/lib/postgresql/data',
37
- subPath: 'data',
38
- readOnly: false,
39
- },
40
- ],
41
- //podSecurityContext: { runAsGroup: 0, runAsUser: 0, runAsNonRoot: false },
42
- },
43
- deploymentConfig: {
44
- //args: ['/bin/chown', '-R', '1001', '/var/lib/postgresql/data'],
45
- },
46
- serviceConfig: { usePodPort: true },
47
- });
48
- return {
49
- postgrSsql,
50
- host: (0, pulumi_1.interpolate) `${name}.${namespace}.svc.cluster.local`,
51
- port,
52
- username: 'postgres',
53
- password,
54
- };
55
- };
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9zdGdyZVNxbC52MS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9LdWJlWC9EYXRhYmFzZXMvUG9zdGdyZVNxbC9Qb3N0Z3JlU3FsLnYxLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaURBQXNEO0FBQ3RELDJDQUE2QztBQUM3QyxpREFBMEM7QUFDMUMsMkNBQXlEO0FBR3pELGtCQUFlLENBQUMsRUFDZCxJQUFJLEdBQUcsVUFBVSxFQUNqQixTQUFTLEVBQ1QsU0FBUyxFQUNULGdCQUFnQixFQUNoQixJQUFJLEVBQ0osR0FBRyxNQUFNLEVBQ08sRUFBRSxFQUFFO0lBQ3BCLE1BQU0sUUFBUSxHQUNaLElBQUksRUFBRSxRQUFRO1FBQ2QsSUFBQSx1QkFBYyxFQUFDO1lBQ2IsSUFBSTtZQUNKLE1BQU0sRUFBRSxFQUFFO1lBQ1YsTUFBTSxFQUFFLEtBQUs7WUFDYixPQUFPLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFO1lBQzNCLFNBQVM7U0FDVixDQUFDLENBQUMsTUFBTSxDQUFDO0lBRVosTUFBTSxZQUFZLEdBQUcsSUFBQSxrQ0FBd0IsRUFBQztRQUM1QyxJQUFJO1FBQ0osU0FBUztRQUNULDhCQUE4QjtRQUM5QixHQUFHLE1BQU07UUFDVCxnQkFBZ0I7S0FDakIsQ0FBQyxDQUFDO0lBRUgsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ2xCLE1BQU0sVUFBVSxHQUFHLElBQUEsb0JBQVUsRUFBQztRQUM1QixJQUFJO1FBQ0osU0FBUztRQUNULEdBQUcsTUFBTTtRQUNULE9BQU8sRUFBRSxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRTtRQUN4QyxTQUFTLEVBQUU7WUFDVCxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFO1lBQ3JCLEtBQUssRUFBRSxpQkFBaUI7WUFDeEIsT0FBTyxFQUFFO2dCQUNQO29CQUNFLElBQUksRUFBRSxNQUFNO29CQUNaLHFCQUFxQixFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSTtvQkFDakQsU0FBUyxFQUFFLDBCQUEwQjtvQkFDckMsT0FBTyxFQUFFLE1BQU07b0JBQ2YsUUFBUSxFQUFFLEtBQUs7aUJBQ2hCO2FBQ0Y7WUFDRCwyRUFBMkU7U0FDNUU7UUFDRCxnQkFBZ0IsRUFBRTtRQUNoQixpRUFBaUU7U0FDbEU7UUFDRCxhQUFhLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFO0tBQ3BDLENBQUMsQ0FBQztJQUVILE9BQU87UUFDTCxVQUFVO1FBQ1YsSUFBSSxFQUFFLElBQUEsb0JBQVcsRUFBQSxHQUFHLElBQUksSUFBSSxTQUFTLG9CQUFvQjtRQUN6RCxJQUFJO1FBQ0osUUFBUSxFQUFFLFVBQVU7UUFDcEIsUUFBUTtLQUNULENBQUM7QUFDSixDQUFDLENBQUMifQ==
@@ -1,17 +0,0 @@
1
- import { PostgreSqlProps } from '../../types';
2
- declare const _default: ({ enableHA, ...others }: PostgreSqlProps & {
3
- enableHA?: boolean | undefined;
4
- }) => Promise<{
5
- postgre: import("@pulumi/kubernetes/helm/v3").Chart;
6
- host: import("@pulumi/pulumi").Output<string>;
7
- port: number;
8
- username: string;
9
- password: import("@pulumi/pulumi").Input<string>;
10
- }> | {
11
- postgre: import("@pulumi/kubernetes/helm/v3").Chart;
12
- host: import("@pulumi/pulumi").Output<string>;
13
- port: number;
14
- username: string;
15
- password: import("@pulumi/pulumi").Input<string>;
16
- };
17
- export default _default;
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const PostgreSQL_HA_1 = require("./PostgreSQL-HA");
4
- const PostgreSQL_1 = require("./PostgreSQL");
5
- exports.default = ({ enableHA, ...others }) => enableHA ? (0, PostgreSQL_HA_1.default)(others) : (0, PostgreSQL_1.default)(others);
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvS3ViZVgvRGF0YWJhc2VzL1Bvc3RncmVTcWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtREFBMkM7QUFDM0MsNkNBQXNDO0FBR3RDLGtCQUFlLENBQUMsRUFDZCxRQUFRLEVBQ1IsR0FBRyxNQUFNLEVBQ2dDLEVBQUUsRUFBRSxDQUM3QyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUEsdUJBQVksRUFBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBQSxvQkFBVSxFQUFDLE1BQU0sQ0FBQyxDQUFDIn0=
@@ -1,14 +0,0 @@
1
- import { MySqlProps } from '../types';
2
- interface Props extends MySqlProps {
3
- version?: string;
4
- }
5
- declare const _default: ({ name, namespace, version, vaultInfo, auth, storageClassName, ...others }: Props) => {
6
- redis: {
7
- deployment: import("../kx").Deployment | undefined;
8
- service: import("../kx").Service | undefined;
9
- jobs: (import("@pulumi/kubernetes/batch/v1/cronJob").CronJob | import("../kx").Job)[] | undefined;
10
- };
11
- host: import("@pulumi/pulumi").Output<string>;
12
- password: import("@pulumi/pulumi").Input<string>;
13
- };
14
- export default _default;
@@ -1,65 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const Random_1 = require("../../Core/Random");
4
- const CustomHelper_1 = require("../../KeyVault/CustomHelper");
5
- const pulumi_1 = require("@pulumi/pulumi");
6
- const Deployment_1 = require("../Deployment");
7
- const Storage_1 = require("../Storage");
8
- exports.default = ({ name = 'redis', namespace, version = 'latest', vaultInfo, auth, storageClassName, ...others }) => {
9
- const port = 6379;
10
- const password = auth?.rootPass ||
11
- (0, Random_1.randomPassword)({
12
- name,
13
- length: 25,
14
- options: { special: false },
15
- vaultInfo,
16
- }).result;
17
- if (vaultInfo) {
18
- const conn = (0, pulumi_1.interpolate) `${name}.${namespace}.svc.cluster.local:${port},password=${password},ssl=False,abortConnect=False`;
19
- (0, CustomHelper_1.addCustomSecret)({
20
- name: `${name}-conn`,
21
- vaultInfo,
22
- value: conn,
23
- contentType: name,
24
- });
25
- }
26
- const persisVolume = storageClassName
27
- ? (0, Storage_1.createPVCForStorageClass)({
28
- name,
29
- namespace,
30
- ...others,
31
- storageClassName,
32
- })
33
- : undefined;
34
- const redis = (0, Deployment_1.default)({
35
- name,
36
- namespace,
37
- ...others,
38
- secrets: { PASSWORD: password },
39
- podConfig: {
40
- ports: { http: port },
41
- image: `redis:${version}`,
42
- podSecurityContext: {},
43
- securityContext: {},
44
- volumes: persisVolume
45
- ? [
46
- {
47
- name: 'redis-data',
48
- persistentVolumeClaim: persisVolume.metadata.name,
49
- mountPath: '/data',
50
- readOnly: false,
51
- },
52
- ]
53
- : undefined,
54
- },
55
- deploymentConfig: {
56
- args: [(0, pulumi_1.interpolate) `--requirepass ${password}`],
57
- },
58
- });
59
- return {
60
- redis,
61
- host: (0, pulumi_1.interpolate) `${name}.${namespace}.svc.cluster.local`,
62
- password,
63
- };
64
- };
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVkaXNDYWNoZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9LdWJlWC9EYXRhYmFzZXMvUmVkaXNDYWNoZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLDhDQUFtRDtBQUNuRCw4REFBOEQ7QUFDOUQsMkNBQTZDO0FBQzdDLDhDQUF1QztBQUN2Qyx3Q0FBc0Q7QUFNdEQsa0JBQWUsQ0FBQyxFQUNkLElBQUksR0FBRyxPQUFPLEVBQ2QsU0FBUyxFQUNULE9BQU8sR0FBRyxRQUFRLEVBQ2xCLFNBQVMsRUFDVCxJQUFJLEVBQ0osZ0JBQWdCLEVBQ2hCLEdBQUcsTUFBTSxFQUNILEVBQUUsRUFBRTtJQUNWLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQztJQUVsQixNQUFNLFFBQVEsR0FDWixJQUFJLEVBQUUsUUFBUTtRQUNkLElBQUEsdUJBQWMsRUFBQztZQUNiLElBQUk7WUFDSixNQUFNLEVBQUUsRUFBRTtZQUNWLE9BQU8sRUFBRSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUU7WUFDM0IsU0FBUztTQUNWLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFFWixJQUFJLFNBQVMsRUFBRSxDQUFDO1FBQ2QsTUFBTSxJQUFJLEdBQUcsSUFBQSxvQkFBVyxFQUFBLEdBQUcsSUFBSSxJQUFJLFNBQVMsc0JBQXNCLElBQUksYUFBYSxRQUFRLCtCQUErQixDQUFDO1FBQzNILElBQUEsOEJBQWUsRUFBQztZQUNkLElBQUksRUFBRSxHQUFHLElBQUksT0FBTztZQUNwQixTQUFTO1lBQ1QsS0FBSyxFQUFFLElBQUk7WUFDWCxXQUFXLEVBQUUsSUFBSTtTQUNsQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxZQUFZLEdBQUcsZ0JBQWdCO1FBQ25DLENBQUMsQ0FBQyxJQUFBLGtDQUF3QixFQUFDO1lBQ3ZCLElBQUk7WUFDSixTQUFTO1lBQ1QsR0FBRyxNQUFNO1lBQ1QsZ0JBQWdCO1NBQ2pCLENBQUM7UUFDSixDQUFDLENBQUMsU0FBUyxDQUFDO0lBRWQsTUFBTSxLQUFLLEdBQUcsSUFBQSxvQkFBVSxFQUFDO1FBQ3ZCLElBQUk7UUFDSixTQUFTO1FBQ1QsR0FBRyxNQUFNO1FBQ1QsT0FBTyxFQUFFLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRTtRQUMvQixTQUFTLEVBQUU7WUFDVCxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFO1lBQ3JCLEtBQUssRUFBRSxTQUFTLE9BQU8sRUFBRTtZQUN6QixrQkFBa0IsRUFBRSxFQUFFO1lBQ3RCLGVBQWUsRUFBRSxFQUFFO1lBQ25CLE9BQU8sRUFBRSxZQUFZO2dCQUNuQixDQUFDLENBQUM7b0JBQ0U7d0JBQ0UsSUFBSSxFQUFFLFlBQVk7d0JBQ2xCLHFCQUFxQixFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSTt3QkFDakQsU0FBUyxFQUFFLE9BQU87d0JBQ2xCLFFBQVEsRUFBRSxLQUFLO3FCQUNoQjtpQkFDRjtnQkFDSCxDQUFDLENBQUMsU0FBUztTQUNkO1FBQ0QsZ0JBQWdCLEVBQUU7WUFDaEIsSUFBSSxFQUFFLENBQUMsSUFBQSxvQkFBVyxFQUFBLGlCQUFpQixRQUFRLEVBQUUsQ0FBQztTQUMvQztLQUNGLENBQUMsQ0FBQztJQUVILE9BQU87UUFDTCxLQUFLO1FBQ0wsSUFBSSxFQUFFLElBQUEsb0JBQVcsRUFBQSxHQUFHLElBQUksSUFBSSxTQUFTLG9CQUFvQjtRQUN6RCxRQUFRO0tBQ1QsQ0FBQztBQUNKLENBQUMsQ0FBQyJ9
@@ -1,15 +0,0 @@
1
- import { MySqlProps } from '../types';
2
- interface Props extends MySqlProps {
3
- databaseNames?: string[];
4
- }
5
- declare const _default: ({ name, namespace, databaseNames, vaultInfo, auth, storageClassName, provider, }: Props) => {
6
- sql: {
7
- deployment: import("../kx").Deployment | undefined;
8
- service: import("../kx").Service | undefined;
9
- jobs: (import("@pulumi/kubernetes/batch/v1/cronJob").CronJob | import("../kx").Job)[] | undefined;
10
- };
11
- host: import("@pulumi/pulumi").Output<string>;
12
- username: string;
13
- password: import("@pulumi/pulumi").Input<string>;
14
- };
15
- export default _default;
@@ -1,77 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const Random_1 = require("../../Core/Random");
4
- const CustomHelper_1 = require("../../KeyVault/CustomHelper");
5
- const Deployment_1 = require("../Deployment");
6
- const Storage_1 = require("../Storage");
7
- const pulumi_1 = require("@pulumi/pulumi");
8
- exports.default = ({ name = 'sql', namespace, databaseNames, vaultInfo, auth, storageClassName, provider, }) => {
9
- const password = auth?.rootPass
10
- ? auth.rootPass
11
- : (0, Random_1.randomPassword)({ name, vaultInfo }).result;
12
- //Create Storage Container and add Secret to Namespace
13
- const claim = (0, Storage_1.createPVCForStorageClass)({
14
- name,
15
- namespace,
16
- provider,
17
- storageClassName,
18
- });
19
- const sql = (0, Deployment_1.default)({
20
- name,
21
- namespace,
22
- provider,
23
- configMap: { MSSQL_PID: 'Developer', ACCEPT_EULA: 'Y' },
24
- secrets: { SA_PASSWORD: password },
25
- podConfig: {
26
- ports: { tcp: 1433 },
27
- image: 'mcr.microsoft.com/mssql/server:2019-latest',
28
- securityContext: { fsGroup: 10001 },
29
- podSecurityContext: {
30
- allowPrivilegeEscalation: true,
31
- readOnlyRootFilesystem: false,
32
- privileged: true,
33
- },
34
- resources: {
35
- requests: { cpu: '1m', memory: '1Gi' },
36
- limits: { cpu: '500m', memory: '2Gi' },
37
- },
38
- volumes: [
39
- {
40
- name: 'sqldbs',
41
- mountPath: '/var/opt/mssql',
42
- persistentVolumeClaim: claim.metadata.name,
43
- },
44
- ],
45
- },
46
- deploymentConfig: { replicas: 1 },
47
- serviceConfig: { usePodPort: true },
48
- });
49
- const rs = {
50
- sql,
51
- host: (0, pulumi_1.interpolate) `${name}.${namespace}.svc.cluster.local`,
52
- username: 'sa',
53
- password: password,
54
- };
55
- if (databaseNames) {
56
- databaseNames.map((d) => {
57
- //Create DataBase in the Server
58
- // new MsSqlDatabaseResource(dbName, {
59
- // databaseName: dbName,
60
- // server: rs.host,
61
- // userName: rs.username,
62
- // password: rs.password,
63
- // });
64
- if (vaultInfo) {
65
- //Add Connection String to Key Vault
66
- (0, CustomHelper_1.addCustomSecret)({
67
- name: d,
68
- vaultInfo,
69
- value: (0, pulumi_1.interpolate) `Data Source=${rs.host};Initial Catalog=${d};User Id=${rs.username};Password=${rs.password};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=120;`,
70
- contentType: name,
71
- });
72
- }
73
- });
74
- }
75
- return rs;
76
- };
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3FsU2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL0t1YmVYL0RhdGFiYXNlcy9TcWxTZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSw4Q0FBbUQ7QUFDbkQsOERBQThEO0FBQzlELDhDQUF1QztBQUN2Qyx3Q0FBc0Q7QUFDdEQsMkNBQTZDO0FBTTdDLGtCQUFlLENBQUMsRUFDZCxJQUFJLEdBQUcsS0FBSyxFQUNaLFNBQVMsRUFDVCxhQUFhLEVBQ2IsU0FBUyxFQUNULElBQUksRUFDSixnQkFBZ0IsRUFDaEIsUUFBUSxHQUNGLEVBQUUsRUFBRTtJQUNWLE1BQU0sUUFBUSxHQUFHLElBQUksRUFBRSxRQUFRO1FBQzdCLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUTtRQUNmLENBQUMsQ0FBQyxJQUFBLHVCQUFjLEVBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFFL0Msc0RBQXNEO0lBQ3RELE1BQU0sS0FBSyxHQUFHLElBQUEsa0NBQXdCLEVBQUM7UUFDckMsSUFBSTtRQUNKLFNBQVM7UUFDVCxRQUFRO1FBQ1IsZ0JBQWdCO0tBQ2pCLENBQUMsQ0FBQztJQUVILE1BQU0sR0FBRyxHQUFHLElBQUEsb0JBQVUsRUFBQztRQUNyQixJQUFJO1FBQ0osU0FBUztRQUNULFFBQVE7UUFFUixTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQUU7UUFDdkQsT0FBTyxFQUFFLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRTtRQUVsQyxTQUFTLEVBQUU7WUFDVCxLQUFLLEVBQUUsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFO1lBQ3BCLEtBQUssRUFBRSw0Q0FBNEM7WUFFbkQsZUFBZSxFQUFFLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRTtZQUNuQyxrQkFBa0IsRUFBRTtnQkFDbEIsd0JBQXdCLEVBQUUsSUFBSTtnQkFDOUIsc0JBQXNCLEVBQUUsS0FBSztnQkFDN0IsVUFBVSxFQUFFLElBQUk7YUFDakI7WUFFRCxTQUFTLEVBQUU7Z0JBQ1QsUUFBUSxFQUFFLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUN0QyxNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7YUFDdkM7WUFFRCxPQUFPLEVBQUU7Z0JBQ1A7b0JBQ0UsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsU0FBUyxFQUFFLGdCQUFnQjtvQkFDM0IscUJBQXFCLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJO2lCQUMzQzthQUNGO1NBQ0Y7UUFDRCxnQkFBZ0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxDQUFDLEVBQUU7UUFDakMsYUFBYSxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRTtLQUNwQyxDQUFDLENBQUM7SUFFSCxNQUFNLEVBQUUsR0FBRztRQUNULEdBQUc7UUFDSCxJQUFJLEVBQUUsSUFBQSxvQkFBVyxFQUFBLEdBQUcsSUFBSSxJQUFJLFNBQVMsb0JBQW9CO1FBQ3pELFFBQVEsRUFBRSxJQUFJO1FBQ2QsUUFBUSxFQUFFLFFBQVE7S0FDbkIsQ0FBQztJQUVGLElBQUksYUFBYSxFQUFFLENBQUM7UUFDbEIsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3RCLCtCQUErQjtZQUMvQixzQ0FBc0M7WUFDdEMsMEJBQTBCO1lBQzFCLHFCQUFxQjtZQUNyQiwyQkFBMkI7WUFDM0IsMkJBQTJCO1lBQzNCLE1BQU07WUFFTixJQUFJLFNBQVMsRUFBRSxDQUFDO2dCQUNkLG9DQUFvQztnQkFDcEMsSUFBQSw4QkFBZSxFQUFDO29CQUNkLElBQUksRUFBRSxDQUFDO29CQUNQLFNBQVM7b0JBQ1QsS0FBSyxFQUFFLElBQUEsb0JBQVcsRUFBQSxlQUFlLEVBQUUsQ0FBQyxJQUFJLG9CQUFvQixDQUFDLFlBQVksRUFBRSxDQUFDLFFBQVEsYUFBYSxFQUFFLENBQUMsUUFBUSxrR0FBa0c7b0JBQzlNLFdBQVcsRUFBRSxJQUFJO2lCQUNsQixDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsT0FBTyxFQUFFLENBQUM7QUFDWixDQUFDLENBQUMifQ==
@@ -1,14 +0,0 @@
1
- import * as k8s from '@pulumi/kubernetes';
2
- import { Provider } from '@pulumi/kubernetes';
3
- import * as kx from '../kx';
4
- export interface PodAutoScaleProps {
5
- name: string;
6
- maxReplicas: number;
7
- minReplicas?: number;
8
- averageUtilization?: number;
9
- stabilizationMinutes?: number;
10
- deployment: kx.Deployment | k8s.apps.v1.Deployment;
11
- provider: Provider;
12
- }
13
- export declare const PodAutoScale: ({ name, maxReplicas, minReplicas, averageUtilization, stabilizationMinutes, deployment, provider, }: PodAutoScaleProps) => import("@pulumi/kubernetes/autoscaling/v2/horizontalPodAutoscaler").HorizontalPodAutoscaler;
14
- export default PodAutoScale;
@@ -1,51 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PodAutoScale = void 0;
4
- const k8s = require("@pulumi/kubernetes");
5
- const PodAutoScale = ({ name, maxReplicas = 3, minReplicas = 1, averageUtilization = 80, stabilizationMinutes = 30, deployment, provider, }) => {
6
- name = `${name}-HA`.toLowerCase();
7
- return new k8s.autoscaling.v2.HorizontalPodAutoscaler(name, {
8
- metadata: {
9
- name,
10
- namespace: deployment.metadata.namespace,
11
- },
12
- spec: {
13
- scaleTargetRef: {
14
- kind: 'Deployment',
15
- apiVersion: 'apps/v1',
16
- name: deployment.metadata.name,
17
- },
18
- maxReplicas,
19
- minReplicas,
20
- metrics: [
21
- {
22
- type: 'Resource',
23
- resource: {
24
- name: 'cpu',
25
- target: { type: 'Utilization', averageUtilization },
26
- },
27
- },
28
- {
29
- type: 'Resource',
30
- resource: {
31
- name: 'memory',
32
- target: { type: 'Utilization', averageUtilization },
33
- },
34
- },
35
- ],
36
- behavior: {
37
- scaleDown: {
38
- stabilizationWindowSeconds: stabilizationMinutes * 60,
39
- policies: [{ type: 'Pods', value: 1, periodSeconds: 15 * 60 }],
40
- },
41
- scaleUp: {
42
- stabilizationWindowSeconds: stabilizationMinutes * 60,
43
- policies: [{ type: 'Pods', value: 1, periodSeconds: 15 * 60 }],
44
- },
45
- },
46
- },
47
- }, { provider });
48
- };
49
- exports.PodAutoScale = PodAutoScale;
50
- exports.default = exports.PodAutoScale;
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9kQXV0b3NjYWxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9LdWJlWC9EZXBsb3ltZW50L1BvZEF1dG9zY2FsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMENBQTBDO0FBY25DLE1BQU0sWUFBWSxHQUFHLENBQUMsRUFDM0IsSUFBSSxFQUNKLFdBQVcsR0FBRyxDQUFDLEVBQ2YsV0FBVyxHQUFHLENBQUMsRUFDZixrQkFBa0IsR0FBRyxFQUFFLEVBQ3ZCLG9CQUFvQixHQUFHLEVBQUUsRUFDekIsVUFBVSxFQUNWLFFBQVEsR0FDVSxFQUFFLEVBQUU7SUFDdEIsSUFBSSxHQUFHLEdBQUcsSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbEMsT0FBTyxJQUFJLEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLHVCQUF1QixDQUNuRCxJQUFJLEVBQ0o7UUFDRSxRQUFRLEVBQUU7WUFDUixJQUFJO1lBQ0osU0FBUyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsU0FBUztTQUN6QztRQUNELElBQUksRUFBRTtZQUNKLGNBQWMsRUFBRTtnQkFDZCxJQUFJLEVBQUUsWUFBWTtnQkFDbEIsVUFBVSxFQUFFLFNBQVM7Z0JBQ3JCLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUk7YUFDL0I7WUFFRCxXQUFXO1lBQ1gsV0FBVztZQUVYLE9BQU8sRUFBRTtnQkFDUDtvQkFDRSxJQUFJLEVBQUUsVUFBVTtvQkFDaEIsUUFBUSxFQUFFO3dCQUNSLElBQUksRUFBRSxLQUFLO3dCQUNYLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUU7cUJBQ3BEO2lCQUNGO2dCQUNEO29CQUNFLElBQUksRUFBRSxVQUFVO29CQUNoQixRQUFRLEVBQUU7d0JBQ1IsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxrQkFBa0IsRUFBRTtxQkFDcEQ7aUJBQ0Y7YUFDRjtZQUVELFFBQVEsRUFBRTtnQkFDUixTQUFTLEVBQUU7b0JBQ1QsMEJBQTBCLEVBQUUsb0JBQW9CLEdBQUcsRUFBRTtvQkFDckQsUUFBUSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsYUFBYSxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQztpQkFDL0Q7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLDBCQUEwQixFQUFFLG9CQUFvQixHQUFHLEVBQUU7b0JBQ3JELFFBQVEsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLGFBQWEsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUM7aUJBQy9EO2FBQ0Y7U0FDRjtLQUNGLEVBQ0QsRUFBRSxRQUFRLEVBQUUsQ0FDYixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBMURXLFFBQUEsWUFBWSxnQkEwRHZCO0FBRUYsa0JBQWUsb0JBQVksQ0FBQyJ9
@@ -1,136 +0,0 @@
1
- import * as k8s from '@pulumi/kubernetes';
2
- import * as kx from '../kx';
3
- import * as pulumi from '@pulumi/pulumi';
4
- import { Input, Resource } from '@pulumi/pulumi';
5
- import { IngressProps } from '../Ingress/type';
6
- import { input as inputs } from '@pulumi/kubernetes/types';
7
- import { PodAutoScaleProps } from './PodAutoscaler';
8
- type restartPolicies = 'Always' | 'OnFailure' | 'Never';
9
- export declare const defaultResources: {
10
- limits: {
11
- memory: string;
12
- cpu: string;
13
- };
14
- requests: {
15
- memory: string;
16
- cpu: string;
17
- };
18
- };
19
- export declare const virtualHostConfig: {
20
- nodeSelector: {
21
- 'kubernetes.io/role': string;
22
- 'beta.kubernetes.io/os': string;
23
- type: string;
24
- };
25
- tolerations: {
26
- effect: string;
27
- key: string;
28
- value: string;
29
- }[];
30
- };
31
- interface PodConfigProps {
32
- ports: kx.types.PortMap;
33
- image: Input<string>;
34
- imagePullSecret?: string;
35
- imagePullPolicy?: 'Always' | 'Never' | 'IfNotPresent';
36
- resources?: Input<k8s.types.input.core.v1.ResourceRequirements> | false;
37
- command?: string[];
38
- volumes?: Array<{
39
- name: string;
40
- mountPath: string;
41
- emptyDir?: boolean;
42
- subPath?: string;
43
- hostPath?: string;
44
- readOnly?: boolean;
45
- /** The secret name */
46
- secretName?: Input<string>;
47
- configMapName?: Input<string>;
48
- /** The volume claims name */
49
- persistentVolumeClaim?: Input<string>;
50
- type?: 'azureFile';
51
- }>;
52
- podSecurityContext?: Input<k8s.types.input.core.v1.SecurityContext>;
53
- securityContext?: Input<k8s.types.input.core.v1.PodSecurityContext>;
54
- tolerations?: pulumi.Input<inputs.core.v1.Toleration>[];
55
- nodeSelector?: pulumi.Input<{
56
- [key: string]: pulumi.Input<string>;
57
- }>;
58
- probes?: {
59
- liveness?: {
60
- httpGet: string;
61
- port: number;
62
- initialDelaySeconds?: number;
63
- periodSeconds?: number;
64
- timeoutSeconds?: number;
65
- failureThreshold?: number;
66
- };
67
- lifecycle?: {
68
- postStart?: pulumi.Input<string>[];
69
- };
70
- };
71
- }
72
- export type DeploymentIngress = Omit<IngressProps, 'name' | 'internalIngress' | 'service' | 'services' | 'provider' | 'dependsOn'>;
73
- export type IngressTypes = 'nginx' | 'traefik';
74
- interface Props {
75
- name: string;
76
- namespace: Input<string>;
77
- podConfig: PodConfigProps;
78
- deploymentConfig?: {
79
- args?: Input<string>[];
80
- replicas?: number;
81
- /** Run App and Jobs using Virtual Node **/
82
- useVirtualHost?: boolean;
83
- /** Enforce resources to be redeployed everytime */
84
- enforceReDeployment?: boolean;
85
- } | false;
86
- serviceConfig?: {
87
- usePodPort?: boolean;
88
- useClusterIP?: boolean;
89
- } | false;
90
- jobConfigs?: Array<{
91
- name: string;
92
- /** Run Jobs using Virtual Node **/
93
- useVirtualHost?: boolean;
94
- /**If schedule provided the cron job will be created instead just a job*/
95
- cron?: {
96
- schedule: string;
97
- failedJobsHistoryLimit?: number;
98
- successfulJobsHistoryLimit?: number;
99
- concurrencyPolicy: 'Forbid' | 'Allow' | 'Replace';
100
- };
101
- args?: Input<string>[];
102
- restartPolicy?: restartPolicies;
103
- ttlSecondsAfterFinished?: number;
104
- }>;
105
- ingressConfig?: {
106
- type: IngressTypes;
107
- } & DeploymentIngress;
108
- configMap?: Input<{
109
- [key: string]: Input<string>;
110
- }>;
111
- secrets?: Input<{
112
- [key: string]: Input<string>;
113
- }>;
114
- mapConfigToVolume?: {
115
- name: string;
116
- path: string;
117
- subPath?: string;
118
- };
119
- mapSecretsToVolume?: {
120
- name: string;
121
- path: string;
122
- subPath?: string;
123
- };
124
- /**
125
- * Enable high availability for the deployment. Multi instance of the pod will be scale up and down based on the usage.
126
- */
127
- enableHA?: Omit<PodAutoScaleProps, 'provider' | 'deployment'>;
128
- provider: k8s.Provider;
129
- dependsOn?: Input<Input<Resource>[]> | Input<Resource>;
130
- }
131
- declare const _default: ({ name, namespace, configMap, secrets, mapSecretsToVolume, mapConfigToVolume, podConfig, deploymentConfig, serviceConfig, jobConfigs, ingressConfig, enableHA, provider, dependsOn, }: Props) => {
132
- deployment: kx.Deployment | undefined;
133
- service: kx.Service | undefined;
134
- jobs: (import("@pulumi/kubernetes/batch/v1/cronJob").CronJob | kx.Job)[] | undefined;
135
- };
136
- export default _default;