@drunk-pulumi/azure 0.0.19 → 0.0.20
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/Aks/Helper.d.ts +0 -18
- package/Aks/Helper.js +50 -32
- package/package.json +3 -6
- package/KubeX/AcrSecret.d.ts +0 -15
- package/KubeX/AcrSecret.js +0 -31
- package/KubeX/Apps/AstroPage.d.ts +0 -12
- package/KubeX/Apps/AstroPage.js +0 -33
- package/KubeX/Apps/KafKa.d.ts +0 -6
- package/KubeX/Apps/KafKa.js +0 -13
- package/KubeX/Apps/Nobelium.d.ts +0 -13
- package/KubeX/Apps/Nobelium.js +0 -37
- package/KubeX/Apps/Wikijs.d.ts +0 -30
- package/KubeX/Apps/Wikijs.js +0 -54
- package/KubeX/Apps/WordPress.d.ts +0 -24
- package/KubeX/Apps/WordPress.js +0 -55
- package/KubeX/Apps/YarpProxy/index.d.ts +0 -17
- package/KubeX/Apps/YarpProxy/index.js +0 -107
- package/KubeX/Apps/YarpProxy/type.d.ts +0 -55
- package/KubeX/Apps/YarpProxy/type.js +0 -3
- package/KubeX/CertHelper.d.ts +0 -1
- package/KubeX/CertHelper.js +0 -9
- package/KubeX/CertImports.d.ts +0 -19
- package/KubeX/CertImports.js +0 -70
- package/KubeX/CloudFlare/CertCreator.d.ts +0 -19
- package/KubeX/CloudFlare/CertCreator.js +0 -90
- package/KubeX/CloudFlare/CertImports.d.ts +0 -17
- package/KubeX/CloudFlare/CertImports.js +0 -34
- package/KubeX/CloudFlare/DynamicDns.d.ts +0 -21
- package/KubeX/CloudFlare/DynamicDns.js +0 -39
- package/KubeX/CloudFlare/Tunnel-Helm.d.ts +0 -17
- package/KubeX/CloudFlare/Tunnel-Helm.js +0 -12
- package/KubeX/CloudFlare/Tunnel.d.ts +0 -23
- package/KubeX/CloudFlare/Tunnel.js +0 -54
- package/KubeX/CloudFlare/index.d.ts +0 -13
- package/KubeX/CloudFlare/index.js +0 -36
- package/KubeX/Clusters/K3s/AutoUpgradeController/index.d.ts +0 -6
- package/KubeX/Clusters/K3s/AutoUpgradeController/index.js +0 -60
- package/KubeX/ConfigSecret.d.ts +0 -24
- package/KubeX/ConfigSecret.js +0 -38
- package/KubeX/Core/CertManager/index.d.ts +0 -24
- package/KubeX/Core/CertManager/index.js +0 -96
- package/KubeX/Core/KsCertSecret.d.ts +0 -12
- package/KubeX/Core/KsCertSecret.js +0 -22
- package/KubeX/Core/KsSecret.d.ts +0 -9
- package/KubeX/Core/KsSecret.js +0 -12
- package/KubeX/Core/LoadBalancer/MetalLB.d.ts +0 -7
- package/KubeX/Core/LoadBalancer/MetalLB.js +0 -21
- package/KubeX/Core/Monitoring/index.d.ts +0 -22
- package/KubeX/Core/Monitoring/index.js +0 -322
- package/KubeX/Core/Namespace.d.ts +0 -12
- package/KubeX/Core/Namespace.js +0 -41
- package/KubeX/Core/Nginx/index.d.ts +0 -60
- package/KubeX/Core/Nginx/index.js +0 -109
- package/KubeX/Core/OAuthProxy/index.d.ts +0 -0
- package/KubeX/Core/OAuthProxy/index.js +0 -3
- package/KubeX/Core/ResourceQuota.d.ts +0 -12
- package/KubeX/Core/ResourceQuota.js +0 -13
- package/KubeX/Core/SecurityRules.d.ts +0 -34
- package/KubeX/Core/SecurityRules.js +0 -93
- package/KubeX/Core/StorageClass/azureBlob.d.ts +0 -20
- package/KubeX/Core/StorageClass/azureBlob.js +0 -77
- package/KubeX/Core/StorageClass/azureFile.d.ts +0 -17
- package/KubeX/Core/StorageClass/azureFile.js +0 -45
- package/KubeX/Core/StorageClass/index.d.ts +0 -13
- package/KubeX/Core/StorageClass/index.js +0 -25
- package/KubeX/Core/index.d.ts +0 -57
- package/KubeX/Core/index.js +0 -94
- package/KubeX/Databases/MariaDb.d.ts +0 -11
- package/KubeX/Databases/MariaDb.js +0 -39
- package/KubeX/Databases/MySql.V2.d.ts +0 -11
- package/KubeX/Databases/MySql.V2.js +0 -40
- package/KubeX/Databases/MySql.d.ts +0 -13
- package/KubeX/Databases/MySql.js +0 -55
- package/KubeX/Databases/PostgreSql/PostgreSQL-HA.d.ts +0 -10
- package/KubeX/Databases/PostgreSql/PostgreSQL-HA.js +0 -47
- package/KubeX/Databases/PostgreSql/PostgreSQL.d.ts +0 -10
- package/KubeX/Databases/PostgreSql/PostgreSQL.js +0 -51
- package/KubeX/Databases/PostgreSql/PostgreSql.v1.d.ts +0 -13
- package/KubeX/Databases/PostgreSql/PostgreSql.v1.js +0 -56
- package/KubeX/Databases/PostgreSql/index.d.ts +0 -17
- package/KubeX/Databases/PostgreSql/index.js +0 -6
- package/KubeX/Databases/RedisCache.d.ts +0 -14
- package/KubeX/Databases/RedisCache.js +0 -65
- package/KubeX/Databases/SqlServer.d.ts +0 -15
- package/KubeX/Databases/SqlServer.js +0 -77
- package/KubeX/Deployment/PodAutoscaler.d.ts +0 -14
- package/KubeX/Deployment/PodAutoscaler.js +0 -51
- package/KubeX/Deployment/index.d.ts +0 -136
- package/KubeX/Deployment/index.js +0 -306
- package/KubeX/Helpers.d.ts +0 -4
- package/KubeX/Helpers.js +0 -17
- package/KubeX/Ingress/AppGatewayIngress.d.ts +0 -2
- package/KubeX/Ingress/AppGatewayIngress.js +0 -4
- package/KubeX/Ingress/Conts.d.ts +0 -13
- package/KubeX/Ingress/Conts.js +0 -18
- package/KubeX/Ingress/NginxIngress.d.ts +0 -3
- package/KubeX/Ingress/NginxIngress.js +0 -186
- package/KubeX/Ingress/NginxProxy.d.ts +0 -21
- package/KubeX/Ingress/NginxProxy.js +0 -43
- package/KubeX/Ingress/TraefikIngress/CustomHeader.d.ts +0 -15
- package/KubeX/Ingress/TraefikIngress/CustomHeader.js +0 -15
- package/KubeX/Ingress/TraefikIngress/index.d.ts +0 -11
- package/KubeX/Ingress/TraefikIngress/index.js +0 -95
- package/KubeX/Ingress/index.d.ts +0 -5
- package/KubeX/Ingress/index.js +0 -12
- package/KubeX/Ingress/type.d.ts +0 -82
- package/KubeX/Ingress/type.js +0 -3
- package/KubeX/Providers/index.d.ts +0 -8
- package/KubeX/Providers/index.js +0 -15
- package/KubeX/Storage/Longhorn/index.d.ts +0 -15
- package/KubeX/Storage/Longhorn/index.js +0 -54
- package/KubeX/Storage/index.d.ts +0 -25
- package/KubeX/Storage/index.js +0 -79
- package/KubeX/Tools/AWS/LocalStack.d.ts +0 -7
- package/KubeX/Tools/AWS/LocalStack.js +0 -29
- package/KubeX/Tools/AWS/S3.d.ts +0 -6
- package/KubeX/Tools/AWS/S3.js +0 -44
- package/KubeX/Tools/AWS/index.d.ts +0 -7
- package/KubeX/Tools/AWS/index.js +0 -14
- package/KubeX/Tools/AppHealthzMonitor.d.ts +0 -18
- package/KubeX/Tools/AppHealthzMonitor.js +0 -52
- package/KubeX/Tools/ArgoCD/index.d.ts +0 -17
- package/KubeX/Tools/ArgoCD/index.js +0 -131
- package/KubeX/Tools/Dapr/Storage.d.ts +0 -66
- package/KubeX/Tools/Dapr/Storage.js +0 -70
- package/KubeX/Tools/Dapr/index.d.ts +0 -10
- package/KubeX/Tools/Dapr/index.js +0 -31
- package/KubeX/Tools/Echo-App.d.ts +0 -3
- package/KubeX/Tools/Echo-App.js +0 -21
- package/KubeX/Tools/Gitea/GiteaRepo.d.ts +0 -72
- package/KubeX/Tools/Gitea/GiteaRepo.js +0 -184
- package/KubeX/Tools/Gitea/GiteaRunner.d.ts +0 -11
- package/KubeX/Tools/Gitea/GiteaRunner.js +0 -37
- package/KubeX/Tools/Gitea/GiteaRunner.v1.d.ts +0 -11
- package/KubeX/Tools/Gitea/GiteaRunner.v1.js +0 -123
- package/KubeX/Tools/HarborRepo.d.ts +0 -29
- package/KubeX/Tools/HarborRepo.js +0 -78
- package/KubeX/Tools/HelloWorld.d.ts +0 -3
- package/KubeX/Tools/HelloWorld.js +0 -21
- package/KubeX/Tools/KubeCleanup.d.ts +0 -9
- package/KubeX/Tools/KubeCleanup.js +0 -34
- package/KubeX/Tools/NoIp.d.ts +0 -13
- package/KubeX/Tools/NoIp.js +0 -24
- package/KubeX/Tools/OpenLDAP/index.d.ts +0 -12
- package/KubeX/Tools/OpenLDAP/index.js +0 -56
- package/KubeX/Tools/OutlineVpn/index.d.ts +0 -25
- package/KubeX/Tools/OutlineVpn/index.js +0 -256
- package/KubeX/Tools/SqlPad.d.ts +0 -29
- package/KubeX/Tools/SqlPad.js +0 -133
- package/KubeX/Tools/ToolPod.d.ts +0 -10
- package/KubeX/Tools/ToolPod.js +0 -40
- package/KubeX/Tools/UptimeKuma.d.ts +0 -6
- package/KubeX/Tools/UptimeKuma.js +0 -38
- package/KubeX/Tools/index.d.ts +0 -27
- package/KubeX/Tools/index.js +0 -35
- package/KubeX/VairableResolvers/index.d.ts +0 -15
- package/KubeX/VairableResolvers/index.js +0 -49
- package/KubeX/kx/index.d.ts +0 -114
- package/KubeX/kx/index.js +0 -423
- package/KubeX/types.d.ts +0 -49
- package/KubeX/types.js +0 -3
package/KubeX/Core/Namespace.js
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const k8s = require("@pulumi/kubernetes");
|
|
4
|
-
const ResourceQuota_1 = require("./ResourceQuota");
|
|
5
|
-
exports.default = ({ name = 'dev', labels, quota, provider, dependsOn, }) => {
|
|
6
|
-
labels = labels || {};
|
|
7
|
-
const ns = new k8s.core.v1.Namespace(name, {
|
|
8
|
-
metadata: {
|
|
9
|
-
name,
|
|
10
|
-
namespace: name,
|
|
11
|
-
labels: {
|
|
12
|
-
name,
|
|
13
|
-
...labels,
|
|
14
|
-
},
|
|
15
|
-
},
|
|
16
|
-
}, { provider, dependsOn });
|
|
17
|
-
//Quota
|
|
18
|
-
if (quota) {
|
|
19
|
-
(0, ResourceQuota_1.default)({
|
|
20
|
-
name,
|
|
21
|
-
namespace: name,
|
|
22
|
-
spec: quota,
|
|
23
|
-
provider,
|
|
24
|
-
dependsOn: ns,
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
//Network
|
|
28
|
-
// new k8s.networking.v1.NetworkPolicy(`nw_allow_all_${name}`, {
|
|
29
|
-
// metadata: {
|
|
30
|
-
// name: `nw-allow-all-${name}`,
|
|
31
|
-
// },
|
|
32
|
-
// spec: {
|
|
33
|
-
// policyTypes: ['Ingress', 'Egress'],
|
|
34
|
-
// podSelector: {},
|
|
35
|
-
// ingress: [{}],
|
|
36
|
-
// egress: [{}],
|
|
37
|
-
// },
|
|
38
|
-
// });
|
|
39
|
-
return ns;
|
|
40
|
-
};
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmFtZXNwYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL0t1YmVYL0NvcmUvTmFtZXNwYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMENBQTBDO0FBSTFDLG1EQUE0QztBQVU1QyxrQkFBZSxDQUFDLEVBQ2QsSUFBSSxHQUFHLEtBQUssRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixTQUFTLEdBQ0gsRUFBRSxFQUFFO0lBQ1YsTUFBTSxHQUFHLE1BQU0sSUFBSSxFQUFFLENBQUM7SUFFdEIsTUFBTSxFQUFFLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQ2xDLElBQUksRUFDSjtRQUNFLFFBQVEsRUFBRTtZQUNSLElBQUk7WUFDSixTQUFTLEVBQUUsSUFBSTtZQUNmLE1BQU0sRUFBRTtnQkFDTixJQUFJO2dCQUNKLEdBQUcsTUFBTTthQUNWO1NBQ0Y7S0FDRixFQUNELEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxDQUN4QixDQUFDO0lBRUYsT0FBTztJQUNQLElBQUksS0FBSyxFQUFFLENBQUM7UUFDVixJQUFBLHVCQUFhLEVBQUM7WUFDWixJQUFJO1lBQ0osU0FBUyxFQUFFLElBQUk7WUFDZixJQUFJLEVBQUUsS0FBSztZQUNYLFFBQVE7WUFDUixTQUFTLEVBQUUsRUFBRTtTQUNkLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxTQUFTO0lBQ1QsZ0VBQWdFO0lBQ2hFLGdCQUFnQjtJQUNoQixvQ0FBb0M7SUFDcEMsT0FBTztJQUNQLFlBQVk7SUFDWiwwQ0FBMEM7SUFDMUMsdUJBQXVCO0lBQ3ZCLHFCQUFxQjtJQUNyQixvQkFBb0I7SUFDcEIsT0FBTztJQUNQLE1BQU07SUFFTixPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUMsQ0FBQyJ9
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import * as k8s from '@pulumi/kubernetes';
|
|
2
|
-
import * as pulumi from '@pulumi/pulumi';
|
|
3
|
-
import { DefaultK8sArgs } from '../../types';
|
|
4
|
-
declare const defaultConfigs: {
|
|
5
|
-
useForwardedHeaders: string;
|
|
6
|
-
computeFullForwardedFor: string;
|
|
7
|
-
useProxyProtocol: string;
|
|
8
|
-
'use-forwarded-headers': string;
|
|
9
|
-
'disable-access-log': string;
|
|
10
|
-
'proxy-buffer-size': string;
|
|
11
|
-
'client-header-buffer-size': string;
|
|
12
|
-
client_max_body_size: string;
|
|
13
|
-
'enable-modsecurity': string;
|
|
14
|
-
'enable-owasp-modsecurity-crs': string;
|
|
15
|
-
'worker-shutdown-timeout': string;
|
|
16
|
-
'worker-connections': string;
|
|
17
|
-
'worker-processes': string;
|
|
18
|
-
'annotation-value-word-blocklist': string;
|
|
19
|
-
};
|
|
20
|
-
interface Props extends DefaultK8sArgs {
|
|
21
|
-
version?: string;
|
|
22
|
-
replicaCount?: number;
|
|
23
|
-
useIngressClassOnly?: boolean;
|
|
24
|
-
defaultIngressClass?: boolean;
|
|
25
|
-
allowSnippetAnnotations?: boolean;
|
|
26
|
-
network: {
|
|
27
|
-
/** The resource group of virtual network and public IpAddress. */
|
|
28
|
-
vnetResourceGroup?: string;
|
|
29
|
-
internalSubnetName?: pulumi.Output<string>;
|
|
30
|
-
internalIngress?: boolean;
|
|
31
|
-
loadBalancerIP?: pulumi.Input<string>;
|
|
32
|
-
clusterIP?: pulumi.Input<string>;
|
|
33
|
-
};
|
|
34
|
-
/**The nginx config map */
|
|
35
|
-
config?: {
|
|
36
|
-
[key: string]: string;
|
|
37
|
-
} | typeof defaultConfigs;
|
|
38
|
-
/**Expose TCP Ports {port: dnsName} */
|
|
39
|
-
tcp?: {
|
|
40
|
-
[key: number]: string;
|
|
41
|
-
};
|
|
42
|
-
/**Expose UDP ports {port: dnsName} */
|
|
43
|
-
udp?: {
|
|
44
|
-
[key: number]: string;
|
|
45
|
-
};
|
|
46
|
-
/** Set Proxy Headers. It will be applied to all requests*/
|
|
47
|
-
addHeaders?: {
|
|
48
|
-
[key: string]: string;
|
|
49
|
-
};
|
|
50
|
-
proxySetHeaders?: {
|
|
51
|
-
[key: string]: string;
|
|
52
|
-
};
|
|
53
|
-
enableDebug?: boolean;
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* kubectl exec ingress-nginx-controller-873061567-4n3k2 -n ingress-nginx -- cat /etc/nginx/nginx.conf >> nginx.conf
|
|
57
|
-
* https://github.com/kubernetes/ingress-nginx
|
|
58
|
-
*/
|
|
59
|
-
declare const _default: ({ name, namespace, version, useIngressClassOnly, defaultIngressClass, allowSnippetAnnotations, replicaCount, network, config, tcp, udp, addHeaders, proxySetHeaders, enableDebug, provider, dependsOn, }: Props) => k8s.helm.v3.Chart;
|
|
60
|
-
export default _default;
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const k8s = require("@pulumi/kubernetes");
|
|
4
|
-
const SecurityRules_1 = require("../SecurityRules");
|
|
5
|
-
const defaultConfigs = {
|
|
6
|
-
useForwardedHeaders: 'true',
|
|
7
|
-
computeFullForwardedFor: 'true',
|
|
8
|
-
useProxyProtocol: 'true',
|
|
9
|
-
'use-forwarded-headers': 'true',
|
|
10
|
-
'disable-access-log': 'true',
|
|
11
|
-
'proxy-buffer-size': '800k',
|
|
12
|
-
'client-header-buffer-size': '800k',
|
|
13
|
-
client_max_body_size: '10m',
|
|
14
|
-
'enable-modsecurity': 'true',
|
|
15
|
-
//'modsecurity-snippet': ``,
|
|
16
|
-
'enable-owasp-modsecurity-crs': 'true',
|
|
17
|
-
'worker-shutdown-timeout': '100s',
|
|
18
|
-
'worker-connections': '1024',
|
|
19
|
-
'worker-processes': '4', //or auto
|
|
20
|
-
'annotation-value-word-blocklist': 'load_module,lua_package,_by_lua,location,root,proxy_pass,serviceaccount,{,},\\', //Remove single quote from annotation-value-word-blocklist to allows security content.
|
|
21
|
-
};
|
|
22
|
-
/**
|
|
23
|
-
* kubectl exec ingress-nginx-controller-873061567-4n3k2 -n ingress-nginx -- cat /etc/nginx/nginx.conf >> nginx.conf
|
|
24
|
-
* https://github.com/kubernetes/ingress-nginx
|
|
25
|
-
*/
|
|
26
|
-
exports.default = ({ name = 'nginx', namespace = 'nginx', version, useIngressClassOnly = true, defaultIngressClass, allowSnippetAnnotations, replicaCount = 1, network, config, tcp, udp, addHeaders, proxySetHeaders, enableDebug = false, provider, dependsOn, }) => {
|
|
27
|
-
//Annotations
|
|
28
|
-
const annotations = {};
|
|
29
|
-
if (network.internalIngress) {
|
|
30
|
-
annotations['service.beta.kubernetes.io/azure-load-balancer-internal'] =
|
|
31
|
-
'true';
|
|
32
|
-
}
|
|
33
|
-
if (network.vnetResourceGroup) {
|
|
34
|
-
annotations['service.beta.kubernetes.io/azure-load-balancer-resource-group'] = network.vnetResourceGroup;
|
|
35
|
-
}
|
|
36
|
-
if (network.internalSubnetName) {
|
|
37
|
-
annotations['service.beta.kubernetes.io/azure-load-balancer-internal-subnet'] = network.internalSubnetName;
|
|
38
|
-
}
|
|
39
|
-
// Create a NGINX Deployment
|
|
40
|
-
return new k8s.helm.v3.Chart(name, {
|
|
41
|
-
namespace,
|
|
42
|
-
chart: 'ingress-nginx',
|
|
43
|
-
version,
|
|
44
|
-
fetchOpts: {
|
|
45
|
-
repo: 'https://kubernetes.github.io/ingress-nginx',
|
|
46
|
-
},
|
|
47
|
-
skipAwait: true,
|
|
48
|
-
values: {
|
|
49
|
-
tcp,
|
|
50
|
-
udp,
|
|
51
|
-
proxySetHeaders,
|
|
52
|
-
addHeaders,
|
|
53
|
-
controller: {
|
|
54
|
-
hostNetwork: false,
|
|
55
|
-
allowSnippetAnnotations,
|
|
56
|
-
replicaCount,
|
|
57
|
-
proxySetHeaders,
|
|
58
|
-
addHeaders,
|
|
59
|
-
config: {
|
|
60
|
-
...defaultConfigs,
|
|
61
|
-
...config,
|
|
62
|
-
'error-log-level': enableDebug ? 'debug' : 'notice', // notice or error
|
|
63
|
-
},
|
|
64
|
-
useIngressClassOnly,
|
|
65
|
-
watchIngressWithoutClass: defaultIngressClass,
|
|
66
|
-
ingressClass: useIngressClassOnly ? name : 'nginx',
|
|
67
|
-
ingressClassResource: useIngressClassOnly
|
|
68
|
-
? {
|
|
69
|
-
name,
|
|
70
|
-
controllerValue: `k8s.io/nginx-${name}`,
|
|
71
|
-
enabled: true,
|
|
72
|
-
default: defaultIngressClass,
|
|
73
|
-
}
|
|
74
|
-
: undefined,
|
|
75
|
-
nodeSelector: {
|
|
76
|
-
'kubernetes.io/os': 'linux',
|
|
77
|
-
},
|
|
78
|
-
service: {
|
|
79
|
-
externalTrafficPolicy: 'Local',
|
|
80
|
-
annotations,
|
|
81
|
-
clusterIP: network.clusterIP,
|
|
82
|
-
loadBalancerIP: network.loadBalancerIP,
|
|
83
|
-
},
|
|
84
|
-
resources: {
|
|
85
|
-
limits: {
|
|
86
|
-
cpu: '1000m',
|
|
87
|
-
memory: '1Gi',
|
|
88
|
-
},
|
|
89
|
-
requests: {
|
|
90
|
-
cpu: '10m',
|
|
91
|
-
memory: '10Mi',
|
|
92
|
-
},
|
|
93
|
-
},
|
|
94
|
-
// metrics: {
|
|
95
|
-
// enabled: true,
|
|
96
|
-
// },
|
|
97
|
-
},
|
|
98
|
-
},
|
|
99
|
-
transformations: [
|
|
100
|
-
(obj) => {
|
|
101
|
-
(0, SecurityRules_1.applyDeploymentRules)(obj, {
|
|
102
|
-
//ignoredKinds: isPrd ? ['Job'] : undefined,
|
|
103
|
-
ignoreSecurityContext: true,
|
|
104
|
-
});
|
|
105
|
-
},
|
|
106
|
-
],
|
|
107
|
-
}, { provider, dependsOn });
|
|
108
|
-
};
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvS3ViZVgvQ29yZS9OZ2lueC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDBDQUEwQztBQUkxQyxvREFBd0Q7QUFFeEQsTUFBTSxjQUFjLEdBQUc7SUFDckIsbUJBQW1CLEVBQUUsTUFBTTtJQUMzQix1QkFBdUIsRUFBRSxNQUFNO0lBQy9CLGdCQUFnQixFQUFFLE1BQU07SUFDeEIsdUJBQXVCLEVBQUUsTUFBTTtJQUMvQixvQkFBb0IsRUFBRSxNQUFNO0lBQzVCLG1CQUFtQixFQUFFLE1BQU07SUFDM0IsMkJBQTJCLEVBQUUsTUFBTTtJQUNuQyxvQkFBb0IsRUFBRSxLQUFLO0lBQzNCLG9CQUFvQixFQUFFLE1BQU07SUFDNUIsNEJBQTRCO0lBQzVCLDhCQUE4QixFQUFFLE1BQU07SUFDdEMseUJBQXlCLEVBQUUsTUFBTTtJQUNqQyxvQkFBb0IsRUFBRSxNQUFNO0lBQzVCLGtCQUFrQixFQUFFLEdBQUcsRUFBRSxTQUFTO0lBQ2xDLGlDQUFpQyxFQUMvQixnRkFBZ0YsRUFBRSxzRkFBc0Y7Q0FDM0ssQ0FBQztBQWlDRjs7O0dBR0c7QUFFSCxrQkFBZSxDQUFDLEVBQ2QsSUFBSSxHQUFHLE9BQU8sRUFDZCxTQUFTLEdBQUcsT0FBTyxFQUNuQixPQUFPLEVBRVAsbUJBQW1CLEdBQUcsSUFBSSxFQUMxQixtQkFBbUIsRUFDbkIsdUJBQXVCLEVBQ3ZCLFlBQVksR0FBRyxDQUFDLEVBQ2hCLE9BQU8sRUFDUCxNQUFNLEVBQ04sR0FBRyxFQUNILEdBQUcsRUFDSCxVQUFVLEVBQ1YsZUFBZSxFQUVmLFdBQVcsR0FBRyxLQUFLLEVBQ25CLFFBQVEsRUFDUixTQUFTLEdBQ0gsRUFBRSxFQUFFO0lBQ1YsYUFBYTtJQUNiLE1BQU0sV0FBVyxHQUFxQyxFQUFFLENBQUM7SUFFekQsSUFBSSxPQUFPLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDNUIsV0FBVyxD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
|
|
File without changes
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
//https://oak-tree.tech/blog/k8s-nginx-oauth2-gitlab
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvS3ViZVgvQ29yZS9PQXV0aFByb3h5L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxvREFBb0QifQ==
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { DefaultK8sArgs } from '../types';
|
|
2
|
-
export type ResourceQuotaSpec = {
|
|
3
|
-
cpu: string;
|
|
4
|
-
memory: string;
|
|
5
|
-
pods: string;
|
|
6
|
-
persistentvolumeclaims: string;
|
|
7
|
-
};
|
|
8
|
-
interface Props extends DefaultK8sArgs {
|
|
9
|
-
spec: ResourceQuotaSpec;
|
|
10
|
-
}
|
|
11
|
-
declare const _default: ({ name, namespace, spec, ...others }: Props) => import("@pulumi/kubernetes/core/v1/resourceQuota").ResourceQuota;
|
|
12
|
-
export default _default;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const k8s = require("@pulumi/kubernetes");
|
|
4
|
-
exports.default = ({ name = 'resource-quota', namespace, spec, ...others }) => new k8s.core.v1.ResourceQuota(name, {
|
|
5
|
-
metadata: {
|
|
6
|
-
name,
|
|
7
|
-
namespace,
|
|
8
|
-
},
|
|
9
|
-
spec: {
|
|
10
|
-
hard: spec,
|
|
11
|
-
},
|
|
12
|
-
}, others);
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVzb3VyY2VRdW90YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9LdWJlWC9Db3JlL1Jlc291cmNlUXVvdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSwwQ0FBMEM7QUFhMUMsa0JBQWUsQ0FBQyxFQUNkLElBQUksR0FBRyxnQkFBZ0IsRUFDdkIsU0FBUyxFQUNULElBQUksRUFDSixHQUFHLE1BQU0sRUFDSCxFQUFFLEVBQUUsQ0FDVixJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FDM0IsSUFBSSxFQUNKO0lBQ0UsUUFBUSxFQUFFO1FBQ1IsSUFBSTtRQUNKLFNBQVM7S0FDVjtJQUNELElBQUksRUFBRTtRQUNKLElBQUksRUFBRSxJQUFJO0tBQ1g7Q0FDRixFQUNELE1BQU0sQ0FDUCxDQUFDIn0=
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
export { defaultResponseHeaders } from '../Ingress/Conts';
|
|
2
|
-
export declare const defaultSecurityContext: {
|
|
3
|
-
runAsUser: number;
|
|
4
|
-
runAsGroup: number;
|
|
5
|
-
fsGroup: number;
|
|
6
|
-
};
|
|
7
|
-
export declare const defaultPodSecurityContext: {
|
|
8
|
-
readOnlyRootFilesystem: boolean;
|
|
9
|
-
privileged: boolean;
|
|
10
|
-
runAsNonRoot: boolean;
|
|
11
|
-
allowPrivilegeEscalation: boolean;
|
|
12
|
-
fsGroupChangePolicy: string;
|
|
13
|
-
capabilities: {
|
|
14
|
-
add: string[];
|
|
15
|
-
drop: string[];
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
export declare const defaultResources: {
|
|
19
|
-
limits: {
|
|
20
|
-
cpu: string;
|
|
21
|
-
memory: string;
|
|
22
|
-
};
|
|
23
|
-
requests: {
|
|
24
|
-
cpu: string;
|
|
25
|
-
memory: string;
|
|
26
|
-
};
|
|
27
|
-
};
|
|
28
|
-
type Kinds = 'DaemonSet' | 'Deployment' | 'Job' | 'CronJob' | 'StatefulSet';
|
|
29
|
-
interface OptionsProps {
|
|
30
|
-
disableServiceAccount?: boolean;
|
|
31
|
-
ignoreSecurityContext?: boolean;
|
|
32
|
-
ignoredKinds?: Array<Kinds>;
|
|
33
|
-
}
|
|
34
|
-
export declare const applyDeploymentRules: (obj: any, options?: OptionsProps) => any;
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.applyDeploymentRules = exports.defaultResources = exports.defaultPodSecurityContext = exports.defaultSecurityContext = exports.defaultResponseHeaders = void 0;
|
|
4
|
-
var Conts_1 = require("../Ingress/Conts");
|
|
5
|
-
Object.defineProperty(exports, "defaultResponseHeaders", { enumerable: true, get: function () { return Conts_1.defaultResponseHeaders; } });
|
|
6
|
-
exports.defaultSecurityContext = {
|
|
7
|
-
runAsUser: 1000,
|
|
8
|
-
runAsGroup: 3000,
|
|
9
|
-
fsGroup: 2000,
|
|
10
|
-
};
|
|
11
|
-
exports.defaultPodSecurityContext = {
|
|
12
|
-
readOnlyRootFilesystem: false,
|
|
13
|
-
privileged: false,
|
|
14
|
-
runAsNonRoot: true,
|
|
15
|
-
allowPrivilegeEscalation: false,
|
|
16
|
-
fsGroupChangePolicy: 'OnRootMismatch',
|
|
17
|
-
capabilities: {
|
|
18
|
-
add: ['NET_ADMIN', 'SYS_TIME'],
|
|
19
|
-
drop: ['ALL'],
|
|
20
|
-
},
|
|
21
|
-
};
|
|
22
|
-
exports.defaultResources = {
|
|
23
|
-
limits: { cpu: '500m', memory: '500Mi' },
|
|
24
|
-
requests: { cpu: '10m', memory: '100Mi' },
|
|
25
|
-
};
|
|
26
|
-
const disableAutoMountServiceAccount = (obj) => {
|
|
27
|
-
//Update Auto mount Service Account
|
|
28
|
-
obj.spec.template.spec.automountServiceAccountToken = false;
|
|
29
|
-
};
|
|
30
|
-
const applySecurity = (obj) => {
|
|
31
|
-
//Update Security Context
|
|
32
|
-
if (obj.spec.template.spec.securityContext)
|
|
33
|
-
obj.spec.template.spec.securityContext = {
|
|
34
|
-
...exports.defaultSecurityContext,
|
|
35
|
-
...obj.spec.template.spec.securityContext,
|
|
36
|
-
};
|
|
37
|
-
else
|
|
38
|
-
obj.spec.template.spec.securityContext = exports.defaultSecurityContext;
|
|
39
|
-
const containers = obj.spec.template.spec.containers;
|
|
40
|
-
containers.forEach((c) => {
|
|
41
|
-
//Update Pod Security Context
|
|
42
|
-
if (c.securityContext)
|
|
43
|
-
c.securityContext = {
|
|
44
|
-
...exports.defaultPodSecurityContext,
|
|
45
|
-
...c.securityContext,
|
|
46
|
-
};
|
|
47
|
-
else
|
|
48
|
-
c.securityContext = exports.defaultPodSecurityContext;
|
|
49
|
-
});
|
|
50
|
-
};
|
|
51
|
-
const applyResourceLimits = (obj) => {
|
|
52
|
-
//Update the resources
|
|
53
|
-
const containers = obj.spec.template.spec.containers;
|
|
54
|
-
containers.forEach((c) => {
|
|
55
|
-
//Update the resources
|
|
56
|
-
if (c.resources)
|
|
57
|
-
c.resources = {
|
|
58
|
-
...exports.defaultResources,
|
|
59
|
-
...c.resources,
|
|
60
|
-
};
|
|
61
|
-
else
|
|
62
|
-
c.resources = exports.defaultResources;
|
|
63
|
-
});
|
|
64
|
-
};
|
|
65
|
-
const updateRevisionHistoryLimit = (obj) => {
|
|
66
|
-
if (!obj.spec.revisionHistoryLimit) {
|
|
67
|
-
obj.spec.revisionHistoryLimit = 1;
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
//Apply Security Context and Resources
|
|
71
|
-
const applyDeploymentRules = (obj, options = { disableServiceAccount: true }) => {
|
|
72
|
-
if (!['DaemonSet', 'Deployment', 'StatefulSet', 'Job', 'CronJob'].includes(obj.kind))
|
|
73
|
-
return obj;
|
|
74
|
-
if (options.ignoredKinds?.includes(obj.kind)) {
|
|
75
|
-
console.warn('applyDeploymentRules ignored:', `${obj.kind}-${obj.metadata.name}`);
|
|
76
|
-
return obj;
|
|
77
|
-
}
|
|
78
|
-
//Update the resources
|
|
79
|
-
applyResourceLimits(obj);
|
|
80
|
-
updateRevisionHistoryLimit(obj);
|
|
81
|
-
// disableAutoMountServiceAccount
|
|
82
|
-
if (options.disableServiceAccount &&
|
|
83
|
-
['Deployment', 'Job', 'CronJob'].includes(obj.kind)) {
|
|
84
|
-
disableAutoMountServiceAccount(obj);
|
|
85
|
-
}
|
|
86
|
-
if (!options.ignoreSecurityContext) {
|
|
87
|
-
//Update Security Context
|
|
88
|
-
applySecurity(obj);
|
|
89
|
-
}
|
|
90
|
-
return obj;
|
|
91
|
-
};
|
|
92
|
-
exports.applyDeploymentRules = applyDeploymentRules;
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VjdXJpdHlSdWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9LdWJlWC9Db3JlL1NlY3VyaXR5UnVsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMENBQTBEO0FBQWpELCtHQUFBLHNCQUFzQixPQUFBO0FBRWxCLFFBQUEsc0JBQXNCLEdBQUc7SUFDcEMsU0FBUyxFQUFFLElBQUk7SUFDZixVQUFVLEVBQUUsSUFBSTtJQUNoQixPQUFPLEVBQUUsSUFBSTtDQUNkLENBQUM7QUFFVyxRQUFBLHlCQUF5QixHQUFHO0lBQ3ZDLHNCQUFzQixFQUFFLEtBQUs7SUFDN0IsVUFBVSxFQUFFLEtBQUs7SUFDakIsWUFBWSxFQUFFLElBQUk7SUFDbEIsd0JBQXdCLEVBQUUsS0FBSztJQUMvQixtQkFBbUIsRUFBRSxnQkFBZ0I7SUFDckMsWUFBWSxFQUFFO1FBQ1osR0FBRyxFQUFFLENBQUMsV0FBVyxFQUFFLFVBQVUsQ0FBQztRQUM5QixJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUM7S0FDZDtDQUNGLENBQUM7QUFFVyxRQUFBLGdCQUFnQixHQUFHO0lBQzlCLE1BQU0sRUFBRSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRTtJQUN4QyxRQUFRLEVBQUUsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUU7Q0FDMUMsQ0FBQztBQUVGLE1BQU0sOEJBQThCLEdBQUcsQ0FBQyxHQUFRLEVBQUUsRUFBRTtJQUNsRCxtQ0FBbUM7SUFDbkMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLDRCQUE0QixHQUFHLEtBQUssQ0FBQztBQUM5RCxDQUFDLENBQUM7QUFFRixNQUFNLGFBQWEsR0FBRyxDQUFDLEdBQVEsRUFBRSxFQUFFO0lBQ2pDLHlCQUF5QjtJQUN6QixJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FB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
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { DefaultK8sArgs } from '../../types';
|
|
2
|
-
import { Input } from '@pulumi/pulumi';
|
|
3
|
-
export declare const defaultBlobFuseMountOptions: string[];
|
|
4
|
-
export declare const defaultBlobNfsMountOptions: string[];
|
|
5
|
-
export interface AzureBlobStorageClassProps extends Omit<DefaultK8sArgs, 'name' | 'namespace'> {
|
|
6
|
-
isDefault?: boolean;
|
|
7
|
-
skuName: 'Premium_LRS' | 'Standard_LRS' | 'StandardSSD_LRS';
|
|
8
|
-
storageAccount: Input<string>;
|
|
9
|
-
fuse?: {
|
|
10
|
-
mountOptions?: Input<string>[];
|
|
11
|
-
};
|
|
12
|
-
nfs?: {
|
|
13
|
-
mountOptions?: Input<string>[];
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
declare const _default: ({ fuse, nfs, storageAccount, skuName, isDefault, ...others }: AzureBlobStorageClassProps) => {
|
|
17
|
-
fuseStorageClass: import("@pulumi/kubernetes/storage/v1/storageClass").StorageClass | undefined;
|
|
18
|
-
nfsStorageClass: import("@pulumi/kubernetes/storage/v1/storageClass").StorageClass | undefined;
|
|
19
|
-
};
|
|
20
|
-
export default _default;
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.defaultBlobNfsMountOptions = exports.defaultBlobFuseMountOptions = void 0;
|
|
4
|
-
const k8s = require("@pulumi/kubernetes");
|
|
5
|
-
const StackEnv_1 = require("../../../Common/StackEnv");
|
|
6
|
-
exports.defaultBlobFuseMountOptions = [
|
|
7
|
-
'-o allow_other',
|
|
8
|
-
'--file-cache-timeout-in-seconds=120',
|
|
9
|
-
'--use-attr-cache=true',
|
|
10
|
-
'--cancel-list-on-mount-seconds=10',
|
|
11
|
-
'-o attr_timeout=120',
|
|
12
|
-
'-o entry_timeout=120',
|
|
13
|
-
'-o negative_timeout=120',
|
|
14
|
-
'--log-level=LOG_WARNING',
|
|
15
|
-
'--cache-size-mb=1000',
|
|
16
|
-
];
|
|
17
|
-
exports.defaultBlobNfsMountOptions = [
|
|
18
|
-
'-o allow_other',
|
|
19
|
-
'--file-cache-timeout-in-seconds=120',
|
|
20
|
-
'--use-attr-cache=true',
|
|
21
|
-
'--cancel-list-on-mount-seconds=10',
|
|
22
|
-
'-o attr_timeout=120',
|
|
23
|
-
'-o entry_timeout=120',
|
|
24
|
-
'-o negative_timeout=120',
|
|
25
|
-
'--log-level=LOG_WARNING',
|
|
26
|
-
'--cache-size-mb=1000',
|
|
27
|
-
];
|
|
28
|
-
exports.default = ({ fuse, nfs, storageAccount, skuName, isDefault, ...others }) => {
|
|
29
|
-
const nfsname = `${StackEnv_1.organization}-azureblob-nfs-${skuName.replace('_', '-')}`.toLowerCase();
|
|
30
|
-
const fusename = `${StackEnv_1.organization}-azureblob-fuse-${skuName.replace('_', '-')}`.toLowerCase();
|
|
31
|
-
const provisioner = 'blob.csi.azure.com';
|
|
32
|
-
let fuseStorageClass = undefined;
|
|
33
|
-
let nfsStorageClass = undefined;
|
|
34
|
-
if (fuse)
|
|
35
|
-
fuseStorageClass = new k8s.storage.v1.StorageClass(fusename, {
|
|
36
|
-
metadata: {
|
|
37
|
-
name: fusename,
|
|
38
|
-
annotations: isDefault
|
|
39
|
-
? {
|
|
40
|
-
'storageclass.kubernetes.io/is-default-class': 'true',
|
|
41
|
-
}
|
|
42
|
-
: undefined,
|
|
43
|
-
},
|
|
44
|
-
provisioner,
|
|
45
|
-
allowVolumeExpansion: true,
|
|
46
|
-
reclaimPolicy: 'Delete',
|
|
47
|
-
volumeBindingMode: 'Immediate',
|
|
48
|
-
parameters: {
|
|
49
|
-
storageAccount,
|
|
50
|
-
skuName,
|
|
51
|
-
},
|
|
52
|
-
mountOptions: exports.defaultBlobFuseMountOptions,
|
|
53
|
-
}, others);
|
|
54
|
-
if (nfs)
|
|
55
|
-
nfsStorageClass = new k8s.storage.v1.StorageClass(nfsname, {
|
|
56
|
-
metadata: {
|
|
57
|
-
name: nfsname,
|
|
58
|
-
annotations: isDefault
|
|
59
|
-
? {
|
|
60
|
-
'storageclass.kubernetes.io/is-default-class': 'true',
|
|
61
|
-
}
|
|
62
|
-
: undefined,
|
|
63
|
-
},
|
|
64
|
-
provisioner,
|
|
65
|
-
allowVolumeExpansion: true,
|
|
66
|
-
reclaimPolicy: 'Delete',
|
|
67
|
-
volumeBindingMode: 'Immediate',
|
|
68
|
-
parameters: {
|
|
69
|
-
protocol: 'nfs',
|
|
70
|
-
storageAccount,
|
|
71
|
-
skuName,
|
|
72
|
-
},
|
|
73
|
-
//mountOptions: defaultBlobFuseMountOptions,
|
|
74
|
-
}, others);
|
|
75
|
-
return { fuseStorageClass, nfsStorageClass };
|
|
76
|
-
};
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXp1cmVCbG9iLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL0t1YmVYL0NvcmUvU3RvcmFnZUNsYXNzL2F6dXJlQmxvYi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwwQ0FBMEM7QUFHMUMsdURBQXdEO0FBRTNDLFFBQUEsMkJBQTJCLEdBQUc7SUFDekMsZ0JBQWdCO0lBQ2hCLHFDQUFxQztJQUNyQyx1QkFBdUI7SUFDdkIsbUNBQW1DO0lBQ25DLHFCQUFxQjtJQUNyQixzQkFBc0I7SUFDdEIseUJBQXlCO0lBQ3pCLHlCQUF5QjtJQUN6QixzQkFBc0I7Q0FDdkIsQ0FBQztBQUVXLFFBQUEsMEJBQTBCLEdBQUc7SUFDeEMsZ0JBQWdCO0lBQ2hCLHFDQUFxQztJQUNyQyx1QkFBdUI7SUFDdkIsbUNBQW1DO0lBQ25DLHFCQUFxQjtJQUNyQixzQkFBc0I7SUFDdEIseUJBQXlCO0lBQ3pCLHlCQUF5QjtJQUN6QixzQkFBc0I7Q0FDdkIsQ0FBQztBQWVGLGtCQUFlLENBQUMsRUFDZCxJQUFJLEVBQ0osR0FBRyxFQUNILGNBQWMsRUFDZCxPQUFPLEVBQ1AsU0FBUyxFQUNULEdBQUcsTUFBTSxFQUNrQixFQUFFLEVBQUU7SUFDL0IsTUFBTSxPQUFPLEdBQUcsR0FBRyx1QkFBWSxrQkFBa0IsT0FBTyxDQUFDLE9BQU8sQ0FDOUQsR0FBRyxFQUNILEdBQUcsQ0FDSixFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbEIsTUFBTSxRQUFRLEdBQUcsR0FBRyx1QkFBWSxtQkFBbUIsT0FBTyxDQUFDLE9BQU8sQ0FDaEUsR0FBRyxFQUNILEdBQUcsQ0FDSixFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7SUFFbEIsTUFBTSxXQUFXLEdBQUcsb0JBQW9CLENBQUM7SUFFekMsSUFBSSxnQkFBZ0IsR0FBNEMsU0FBUyxDQUFDO0lBQzFFLElBQUksZUFBZSxHQUE0QyxTQUFTLENBQUM7SUFFekUsSUFBSSxJQUFJO1FBQ04sZ0JBQWdCLEdBQUcsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQ2hELFFBQVEsRUFDUjtZQUNFLFFBQVEsRUFBRTtnQkFDUixJQUFJLEVBQUUsUUFBUTtnQkFDZCxXQUFXLEVBQUUsU0FBUztvQkFDcEIsQ0FBQyxDQUFDO3dCQUNFLDZDQUE2QyxFQUFFLE1BQU07cUJBQ3REO29CQUNILENBQUMsQ0FBQyxTQUFTO2FBQ2Q7WUFDRCxXQUFXO1lBQ1gsb0JBQW9CLEVBQUUsSUFBSTtZQUMxQixhQUFhLEVBQUUsUUFBUTtZQUN2QixpQkFBaUIsRUFBRSxXQUFXO1lBQzlCLFVBQVUsRUFBRTtnQkFDVixjQUFjO2dCQUNkLE9BQU87YUFDUjtZQUNELFlBQVksRUFBRSxtQ0FBMkI7U0FDMUMsRUFDRCxNQUFNLENBQ1AsQ0FBQztJQUVKLElBQUksR0FBRztRQUNMLGVBQWUsR0FBRyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FDL0MsT0FBTyxFQUNQO1lBQ0UsUUFBUSxFQUFFO2dCQUNSLElBQUksRUFBRSxPQUFPO2dCQUNiLFdBQVcsRUFBRSxTQUFTO29CQUNwQixDQUFDLENBQUM7d0JBQ0UsNkNBQTZDLEVBQUUsTUFBTTtxQkFDdEQ7b0JBQ0gsQ0FBQyxDQUFDLFNBQVM7YUFDZDtZQUNELFdBQVc7WUFDWCxvQkFBb0IsRUFBRSxJQUFJO1lBQzFCLGFBQWEsRUFBRSxRQUFRO1lBQ3ZCLGlCQUFpQixFQUFFLFdBQVc7WUFDOUIsVUFBVSxFQUFFO2dCQUNWLFFBQVEsRUFBRSxLQUFLO2dCQUNmLGNBQWM7Z0JBQ2QsT0FBTzthQUNSO1lBQ0QsNENBQTRDO1NBQzdDLEVBQ0QsTUFBTSxDQUNQLENBQUM7SUFFSixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLENBQUM7QUFDL0MsQ0FBQyxDQUFDIn0=
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { DefaultK8sArgs } from '../../types';
|
|
2
|
-
import { Input } from '@pulumi/pulumi';
|
|
3
|
-
/** Sample mount options of the AzureFile*/
|
|
4
|
-
export type RunAsType = {
|
|
5
|
-
runAsUser: number;
|
|
6
|
-
runAsGroup: number;
|
|
7
|
-
};
|
|
8
|
-
export declare const defaultAzureFileMountOptions: string[];
|
|
9
|
-
export declare const getAzureFileMountOptions: ({ runAsUser, runAsGroup, }: RunAsType) => string[];
|
|
10
|
-
export interface AzureFileStorageClassProps extends Omit<DefaultK8sArgs, 'name' | 'namespace'> {
|
|
11
|
-
isDefault?: boolean;
|
|
12
|
-
storageAccount: Input<string>;
|
|
13
|
-
skuName: 'Premium_LRS' | 'Standard_LRS' | 'StandardSSD_LRS';
|
|
14
|
-
mountOptions?: RunAsType;
|
|
15
|
-
}
|
|
16
|
-
declare const _default: ({ skuName, mountOptions, storageAccount, isDefault, ...others }: AzureFileStorageClassProps) => import("@pulumi/kubernetes/storage/v1/storageClass").StorageClass;
|
|
17
|
-
export default _default;
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getAzureFileMountOptions = exports.defaultAzureFileMountOptions = void 0;
|
|
4
|
-
const k8s = require("@pulumi/kubernetes");
|
|
5
|
-
const StackEnv_1 = require("../../../Common/StackEnv");
|
|
6
|
-
exports.defaultAzureFileMountOptions = [
|
|
7
|
-
'mfsymlinks',
|
|
8
|
-
'cache=strict',
|
|
9
|
-
'nosharesock',
|
|
10
|
-
];
|
|
11
|
-
const getAzureFileMountOptions = ({ runAsUser, runAsGroup, }) => [
|
|
12
|
-
'dir_mode=0777',
|
|
13
|
-
'file_mode=0777',
|
|
14
|
-
`uid=${runAsUser}`,
|
|
15
|
-
`gid=${runAsGroup}`,
|
|
16
|
-
'mfsymlinks',
|
|
17
|
-
'cache=strict',
|
|
18
|
-
'nosharesock',
|
|
19
|
-
];
|
|
20
|
-
exports.getAzureFileMountOptions = getAzureFileMountOptions;
|
|
21
|
-
exports.default = ({ skuName, mountOptions, storageAccount, isDefault, ...others }) => {
|
|
22
|
-
const name = `${StackEnv_1.organization}-azurefile-${skuName.replace('_', '-')}`.toLowerCase();
|
|
23
|
-
return new k8s.storage.v1.StorageClass(name, {
|
|
24
|
-
metadata: {
|
|
25
|
-
name,
|
|
26
|
-
annotations: isDefault
|
|
27
|
-
? {
|
|
28
|
-
'storageclass.kubernetes.io/is-default-class': 'true',
|
|
29
|
-
}
|
|
30
|
-
: undefined,
|
|
31
|
-
},
|
|
32
|
-
provisioner: 'file.csi.azure.com',
|
|
33
|
-
allowVolumeExpansion: true,
|
|
34
|
-
reclaimPolicy: 'Delete',
|
|
35
|
-
volumeBindingMode: 'Immediate',
|
|
36
|
-
parameters: {
|
|
37
|
-
storageAccount,
|
|
38
|
-
skuName,
|
|
39
|
-
},
|
|
40
|
-
mountOptions: mountOptions
|
|
41
|
-
? (0, exports.getAzureFileMountOptions)(mountOptions)
|
|
42
|
-
: exports.defaultAzureFileMountOptions,
|
|
43
|
-
}, others);
|
|
44
|
-
};
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXp1cmVGaWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL0t1YmVYL0NvcmUvU3RvcmFnZUNsYXNzL2F6dXJlRmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwwQ0FBMEM7QUFHMUMsdURBQXdEO0FBUTNDLFFBQUEsNEJBQTRCLEdBQUc7SUFDMUMsWUFBWTtJQUNaLGNBQWM7SUFDZCxhQUFhO0NBQ2QsQ0FBQztBQUNLLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxFQUN2QyxTQUFTLEVBQ1QsVUFBVSxHQUNBLEVBQUUsRUFBRSxDQUFDO0lBQ2YsZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixPQUFPLFNBQVMsRUFBRTtJQUNsQixPQUFPLFVBQVUsRUFBRTtJQUNuQixZQUFZO0lBQ1osY0FBYztJQUNkLGFBQWE7Q0FDZCxDQUFDO0FBWFcsUUFBQSx3QkFBd0IsNEJBV25DO0FBVUYsa0JBQWUsQ0FBQyxFQUNkLE9BQU8sRUFDUCxZQUFZLEVBQ1osY0FBYyxFQUNkLFNBQVMsRUFDVCxHQUFHLE1BQU0sRUFDa0IsRUFBRSxFQUFFO0lBQy9CLE1BQU0sSUFBSSxHQUFHLEdBQUcsdUJBQVksY0FBYyxPQUFPLENBQUMsT0FBTyxDQUN2RCxHQUFHLEVBQ0gsR0FBRyxDQUNKLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUVsQixPQUFPLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUNwQyxJQUFJLEVBQ0o7UUFDRSxRQUFRLEVBQUU7WUFDUixJQUFJO1lBQ0osV0FBVyxFQUFFLFNBQVM7Z0JBQ3BCLENBQUMsQ0FBQztvQkFDRSw2Q0FBNkMsRUFBRSxNQUFNO2lCQUN0RDtnQkFDSCxDQUFDLENBQUMsU0FBUztTQUNkO1FBQ0QsV0FBVyxFQUFFLG9CQUFvQjtRQUNqQyxvQkFBb0IsRUFBRSxJQUFJO1FBQzFCLGFBQWEsRUFBRSxRQUFRO1FBQ3ZCLGlCQUFpQixFQUFFLFdBQVc7UUFDOUIsVUFBVSxFQUFFO1lBQ1YsY0FBYztZQUNkLE9BQU87U0FDUjtRQUNELFlBQVksRUFBRSxZQUFZO1lBQ3hCLENBQUMsQ0FBQyxJQUFBLGdDQUF3QixFQUFDLFlBQVksQ0FBQztZQUN4QyxDQUFDLENBQUMsb0NBQTRCO0tBQ2pDLEVBQ0QsTUFBTSxDQUNQLENBQUM7QUFDSixDQUFDLENBQUMifQ==
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { AzureFileStorageClassProps, RunAsType } from './azureFile';
|
|
2
|
-
import { AzureBlobStorageClassProps } from './azureBlob';
|
|
3
|
-
export interface StorageClassProps extends Omit<AzureFileStorageClassProps, 'mountOptions'>, Pick<AzureBlobStorageClassProps, 'fuse' | 'nfs'> {
|
|
4
|
-
azureFile?: {
|
|
5
|
-
mountOptions?: RunAsType;
|
|
6
|
-
};
|
|
7
|
-
}
|
|
8
|
-
declare const _default: ({ azureFile, fuse, nfs, ...others }: StorageClassProps) => {
|
|
9
|
-
azureFileStorageClass: import("@pulumi/kubernetes/storage/v1/storageClass").StorageClass | undefined;
|
|
10
|
-
azureBlobFuseStorageClass: import("@pulumi/kubernetes/storage/v1/storageClass").StorageClass | undefined;
|
|
11
|
-
azureBlobNfsStorageClass: import("@pulumi/kubernetes/storage/v1/storageClass").StorageClass | undefined;
|
|
12
|
-
};
|
|
13
|
-
export default _default;
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const azureFile_1 = require("./azureFile");
|
|
4
|
-
const azureBlob_1 = require("./azureBlob");
|
|
5
|
-
exports.default = ({ azureFile, fuse, nfs, ...others }) => {
|
|
6
|
-
let azureFileStorageClass = undefined;
|
|
7
|
-
let azureBlobFuseStorageClass = undefined;
|
|
8
|
-
let azureBlobNfsStorageClass = undefined;
|
|
9
|
-
if (azureFile)
|
|
10
|
-
azureFileStorageClass = (0, azureFile_1.default)({
|
|
11
|
-
...others,
|
|
12
|
-
mountOptions: azureFile.mountOptions,
|
|
13
|
-
});
|
|
14
|
-
if (fuse || nfs) {
|
|
15
|
-
const rs = (0, azureBlob_1.default)({ ...others, fuse, nfs });
|
|
16
|
-
azureBlobFuseStorageClass = rs.fuseStorageClass;
|
|
17
|
-
azureBlobNfsStorageClass = rs.nfsStorageClass;
|
|
18
|
-
}
|
|
19
|
-
return {
|
|
20
|
-
azureFileStorageClass,
|
|
21
|
-
azureBlobFuseStorageClass,
|
|
22
|
-
azureBlobNfsStorageClass,
|
|
23
|
-
};
|
|
24
|
-
};
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvS3ViZVgvQ29yZS9TdG9yYWdlQ2xhc3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSwyQ0FBZ0Q7QUFDaEQsMkNBQWdEO0FBV2hELGtCQUFlLENBQUMsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLE1BQU0sRUFBcUIsRUFBRSxFQUFFO0lBQ3hFLElBQUkscUJBQXFCLEdBQ3ZCLFNBQVMsQ0FBQztJQUNaLElBQUkseUJBQXlCLEdBQzNCLFNBQVMsQ0FBQztJQUNaLElBQUksd0JBQXdCLEdBQzFCLFNBQVMsQ0FBQztJQUVaLElBQUksU0FBUztRQUNYLHFCQUFxQixHQUFHLElBQUEsbUJBQXFCLEVBQUM7WUFDNUMsR0FBRyxNQUFNO1lBQ1QsWUFBWSxFQUFFLFNBQVMsQ0FBQyxZQUFZO1NBQ3JDLENBQUMsQ0FBQztJQUVMLElBQUksSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLE1BQU0sRUFBRSxHQUFHLElBQUEsbUJBQXFCLEVBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUMzRCx5QkFBeUIsR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7UUFDaEQsd0JBQXdCLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQztJQUNoRCxDQUFDO0lBRUQsT0FBTztRQUNMLHFCQUFxQjtRQUNyQix5QkFBeUI7UUFDekIsd0JBQXdCO0tBQ3pCLENBQUM7QUFDSixDQUFDLENBQUMifQ==
|
package/KubeX/Core/index.d.ts
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { MonitoringProps } from './Monitoring';
|
|
2
|
-
import { CertManagerProps } from './CertManager';
|
|
3
|
-
import { Input, Resource } from '@pulumi/pulumi';
|
|
4
|
-
import { StorageClassProps } from './StorageClass';
|
|
5
|
-
import { K8sArgs } from '../types';
|
|
6
|
-
import { MetalLBProps } from './LoadBalancer/MetalLB';
|
|
7
|
-
import { LonghornProps } from '../Storage/Longhorn';
|
|
8
|
-
interface NginxItemProps {
|
|
9
|
-
name: string;
|
|
10
|
-
publicIpAddress?: string;
|
|
11
|
-
/**Use this in case the ingress behind a firewall*/
|
|
12
|
-
internalIpAddress?: string;
|
|
13
|
-
/**Expose TCP Ports {port: dnsName} */
|
|
14
|
-
tcp?: {
|
|
15
|
-
[key: number]: string;
|
|
16
|
-
};
|
|
17
|
-
/**Expose UDP ports {port: dnsName} */
|
|
18
|
-
udp?: {
|
|
19
|
-
[key: number]: string;
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
interface NginxProps {
|
|
23
|
-
namespace: string;
|
|
24
|
-
version?: string;
|
|
25
|
-
replicaCount?: number;
|
|
26
|
-
vnetResourceGroup?: string;
|
|
27
|
-
internalIngress?: boolean;
|
|
28
|
-
allowSnippetAnnotations?: boolean;
|
|
29
|
-
public?: NginxItemProps & {
|
|
30
|
-
forceUseIngressClass?: boolean;
|
|
31
|
-
};
|
|
32
|
-
private?: Omit<NginxItemProps, 'publicIpAddress'>;
|
|
33
|
-
}
|
|
34
|
-
interface Props extends K8sArgs {
|
|
35
|
-
namespaces: Array<{
|
|
36
|
-
name: string;
|
|
37
|
-
labels?: {
|
|
38
|
-
[key: string]: string;
|
|
39
|
-
};
|
|
40
|
-
}>;
|
|
41
|
-
metalLb?: Omit<MetalLBProps, 'provider' | 'dependsOn'>;
|
|
42
|
-
longhorn?: Omit<LonghornProps, 'provider' | 'dependsOn'>;
|
|
43
|
-
nginx?: NginxProps;
|
|
44
|
-
monitoring?: Omit<MonitoringProps, 'provider' | 'dependsOn'>;
|
|
45
|
-
certManager?: Omit<CertManagerProps, 'namespace' | 'provider' | 'dependsOn'>;
|
|
46
|
-
storageClasses?: {
|
|
47
|
-
[key: string]: Omit<StorageClassProps, 'provider' | 'name'>;
|
|
48
|
-
};
|
|
49
|
-
enableStaticIpEgress?: {
|
|
50
|
-
publicIpAddress?: Input<string>;
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
declare const _default: ({ namespaces, provider, dependsOn, metalLb, longhorn, nginx, monitoring, certManager, storageClasses, }: Props) => Promise<{
|
|
54
|
-
namespacesList: import("@pulumi/kubernetes/core/v1/namespace").Namespace[];
|
|
55
|
-
resources: Resource[];
|
|
56
|
-
}>;
|
|
57
|
-
export default _default;
|