@ydkn/pulumi-components 0.8.9 → 0.9.1
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/index.d.ts +2 -4
- package/index.js +2 -4
- package/index.js.map +1 -1
- package/lib/alpine/assets/init.sh +0 -0
- package/lib/alpine/config.js +1 -0
- package/lib/alpine/config.js.map +1 -1
- package/lib/alpine/deployment.js +1 -1
- package/lib/alpine/deployment.js.map +1 -1
- package/lib/alpine/host.js +2 -0
- package/lib/alpine/host.js.map +1 -1
- package/lib/avahi/deployment.js +1 -1
- package/lib/fcos/assets/rpm-ostree-install.sh +0 -0
- package/lib/freeradius/deployment.js +1 -1
- package/lib/grafana/alloy.js +1 -0
- package/lib/grafana/alloy.js.map +1 -1
- package/lib/hcloud/assets/alpine-install.sh +0 -0
- package/lib/hcloud/assets/fcos-install.sh +0 -0
- package/lib/hcloud/assets/flatcar-install.sh +0 -0
- package/lib/kubernetes/assets/crashed-cleanup.sh +0 -0
- package/lib/kubernetes/index.d.ts +1 -2
- package/lib/kubernetes/index.js +1 -2
- package/lib/kubernetes/index.js.map +1 -1
- package/lib/kured/deployment.d.ts +16 -0
- package/lib/kured/deployment.js +42 -0
- package/lib/kured/deployment.js.map +1 -0
- package/lib/kured/index.d.ts +2 -0
- package/lib/kured/index.js +3 -0
- package/lib/kured/index.js.map +1 -0
- package/lib/nats/cluster.js +14 -10
- package/lib/nats/cluster.js.map +1 -1
- package/lib/netbird/agent.d.ts +0 -4
- package/lib/netbird/agent.js +2 -36
- package/lib/netbird/agent.js.map +1 -1
- package/lib/netbird/management.d.ts +1 -0
- package/lib/netbird/management.js +3 -3
- package/lib/netbird/management.js.map +1 -1
- package/lib/plex/mediaServer.js +1 -1
- package/lib/plex/mediaServer.js.map +1 -1
- package/lib/raspberrypi/cluster.js +18 -0
- package/lib/raspberrypi/cluster.js.map +1 -1
- package/lib/rook/blockPool.js +1 -1
- package/lib/rook/blockPool.js.map +1 -1
- package/lib/rook/filesystem.js +1 -0
- package/lib/rook/filesystem.js.map +1 -1
- package/lib/rook/operator.d.ts +8 -0
- package/lib/rook/operator.js +116 -120
- package/lib/rook/operator.js.map +1 -1
- package/lib/samba/dc.js +1 -1
- package/lib/samba/dc.js.map +1 -1
- package/lib/samba/deployment.js +1 -1
- package/lib/samba/deployment.js.map +1 -1
- package/lib/traefik/controller.js +6 -3
- package/lib/traefik/controller.js.map +1 -1
- package/lib/ubuntu/assets/init.sh +0 -0
- package/lib/ubuntu/deployment.js +1 -1
- package/lib/ubuntu/deployment.js.map +1 -1
- package/lib/unifi/osServer.js +5 -8
- package/lib/unifi/osServer.js.map +1 -1
- package/lib/wireguard/deployment.js +1 -1
- package/package.json +29 -25
- package/lib/cilium/deployment.d.ts +0 -33
- package/lib/cilium/deployment.js +0 -112
- package/lib/cilium/deployment.js.map +0 -1
- package/lib/cilium/index.d.ts +0 -5
- package/lib/cilium/index.js +0 -6
- package/lib/cilium/index.js.map +0 -1
- package/lib/cilium/l2AnnouncementPolicy.d.ts +0 -22
- package/lib/cilium/l2AnnouncementPolicy.js +0 -25
- package/lib/cilium/l2AnnouncementPolicy.js.map +0 -1
- package/lib/cilium/loadBalancerIPPool.d.ts +0 -22
- package/lib/cilium/loadBalancerIPPool.js +0 -18
- package/lib/cilium/loadBalancerIPPool.js.map +0 -1
- package/lib/cilium/localRedirectPolicy.d.ts +0 -40
- package/lib/cilium/localRedirectPolicy.js +0 -13
- package/lib/cilium/localRedirectPolicy.js.map +0 -1
- package/lib/kubernetes/interfaceBridge/assets/bridge.sh +0 -43
- package/lib/kubernetes/interfaceBridge/bridge.d.ts +0 -6
- package/lib/kubernetes/interfaceBridge/bridge.js +0 -26
- package/lib/kubernetes/interfaceBridge/bridge.js.map +0 -1
- package/lib/kubernetes/interfaceBridge/index.d.ts +0 -2
- package/lib/kubernetes/interfaceBridge/index.js +0 -3
- package/lib/kubernetes/interfaceBridge/index.js.map +0 -1
- package/lib/netbird/assets/nftables.sh +0 -44
- package/lib/oauth2Proxy/deployment.d.ts +0 -20
- package/lib/oauth2Proxy/deployment.js +0 -56
- package/lib/oauth2Proxy/deployment.js.map +0 -1
- package/lib/oauth2Proxy/index.d.ts +0 -2
- package/lib/oauth2Proxy/index.js +0 -3
- package/lib/oauth2Proxy/index.js.map +0 -1
- package/lib/paperless/deployment.d.ts +0 -36
- package/lib/paperless/deployment.js +0 -164
- package/lib/paperless/deployment.js.map +0 -1
- package/lib/paperless/index.d.ts +0 -2
- package/lib/paperless/index.js +0 -3
- package/lib/paperless/index.js.map +0 -1
- package/lib/qbittorrent/deployment.d.ts +0 -65
- package/lib/qbittorrent/deployment.js +0 -410
- package/lib/qbittorrent/deployment.js.map +0 -1
- package/lib/qbittorrent/index.d.ts +0 -2
- package/lib/qbittorrent/index.js +0 -3
- package/lib/qbittorrent/index.js.map +0 -1
package/lib/cilium/deployment.js
DELETED
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
-
import * as k8s from "@pulumi/kubernetes";
|
|
3
|
-
import { ComponentResource } from "../common/index.js";
|
|
4
|
-
import * as kubernetes from "../kubernetes/index.js";
|
|
5
|
-
import { Certificate } from "../certManager/index.js";
|
|
6
|
-
export class Cilium extends ComponentResource {
|
|
7
|
-
helmRelease;
|
|
8
|
-
/**
|
|
9
|
-
* Create a new cilium resource.
|
|
10
|
-
* @param name The name of cilium resource.
|
|
11
|
-
* @param args A bag of arguments to control the cilium creation.
|
|
12
|
-
* @param opts A bag of options that control this resource's behavior.
|
|
13
|
-
*/
|
|
14
|
-
constructor(name, args, opts) {
|
|
15
|
-
super("cilium", name, args, opts);
|
|
16
|
-
opts = this.opts(k8s.Provider);
|
|
17
|
-
this.helmRelease = new kubernetes.helm.v3.Release(name, {
|
|
18
|
-
name,
|
|
19
|
-
namespace: "kube-system",
|
|
20
|
-
repositoryOpts: { repo: "https://helm.cilium.io/" },
|
|
21
|
-
chart: "cilium",
|
|
22
|
-
values: {
|
|
23
|
-
cluster: {
|
|
24
|
-
id: args.clusterID ?? 0,
|
|
25
|
-
name: args.clusterName ?? "default",
|
|
26
|
-
},
|
|
27
|
-
k8sClientRateLimit: { qps: 24, burst: 32, operator: { qps: 32, burst: 48 } },
|
|
28
|
-
ipv4: { enabled: args.podCIDRIPv4 !== undefined },
|
|
29
|
-
ipv6: { enabled: args.podCIDRIPv6 !== undefined },
|
|
30
|
-
rollOutCiliumPods: true,
|
|
31
|
-
ipam: {
|
|
32
|
-
mode: "cluster-pool",
|
|
33
|
-
operator: {
|
|
34
|
-
clusterPoolIPv4PodCIDRList: args.podCIDRIPv4 ? [args.podCIDRIPv4] : [],
|
|
35
|
-
clusterPoolIPv4MaskSize: 26,
|
|
36
|
-
clusterPoolIPv6PodCIDRList: args.podCIDRIPv6 ? [args.podCIDRIPv6] : [],
|
|
37
|
-
clusterPoolIPv6MaskSize: 110,
|
|
38
|
-
},
|
|
39
|
-
},
|
|
40
|
-
prometheus: {
|
|
41
|
-
enabled: true,
|
|
42
|
-
serviceMonitor: { enabled: true },
|
|
43
|
-
},
|
|
44
|
-
operator: {
|
|
45
|
-
replicas: 1,
|
|
46
|
-
prometheus: {
|
|
47
|
-
enabled: true,
|
|
48
|
-
serviceMonitor: { enabled: true },
|
|
49
|
-
},
|
|
50
|
-
rollOutPods: true,
|
|
51
|
-
},
|
|
52
|
-
k8sServiceHost: args.apiServerAddress ?? "auto",
|
|
53
|
-
k8sServicePort: args.apiServerPort ?? 6443,
|
|
54
|
-
kubeProxyReplacement: true,
|
|
55
|
-
kubeProxyReplacementHealthzBindAddr: "0.0.0.0:10256",
|
|
56
|
-
localRedirectPolicy: true,
|
|
57
|
-
encryption: { enabled: args.encryption ?? false },
|
|
58
|
-
annotateK8sNode: true,
|
|
59
|
-
hubble: pulumi.all([args.hubble ?? {}]).apply(([hubble]) => {
|
|
60
|
-
return {
|
|
61
|
-
enabled: true,
|
|
62
|
-
metrics: {
|
|
63
|
-
enableOpenMetrics: true,
|
|
64
|
-
serviceMonitor: { enabled: true },
|
|
65
|
-
},
|
|
66
|
-
relay: {
|
|
67
|
-
enabled: true,
|
|
68
|
-
rollOutPods: true,
|
|
69
|
-
prometheus: {
|
|
70
|
-
enabled: true,
|
|
71
|
-
serviceMonitor: { enabled: true },
|
|
72
|
-
},
|
|
73
|
-
},
|
|
74
|
-
ui: {
|
|
75
|
-
enabled: true,
|
|
76
|
-
rollOutPods: true,
|
|
77
|
-
ingress: {
|
|
78
|
-
enabled: true,
|
|
79
|
-
className: hubble.ingressClassName ?? "cilium",
|
|
80
|
-
annotations: {
|
|
81
|
-
"traefik.ingress.kubernetes.io/router.entrypoints": "websecure",
|
|
82
|
-
"traefik.ingress.kubernetes.io/router.tls": "true",
|
|
83
|
-
"cert-manager.io/cluster-issuer": hubble.clusterIssuer ?? Certificate.DefaultClusterIssuer,
|
|
84
|
-
},
|
|
85
|
-
hosts: [hubble.hostname],
|
|
86
|
-
tls: [{ hosts: [hubble.hostname], secretName: "hubble-ingress-tls" }],
|
|
87
|
-
},
|
|
88
|
-
},
|
|
89
|
-
};
|
|
90
|
-
}),
|
|
91
|
-
l2announcements: { enabled: true },
|
|
92
|
-
externalIPs: { enabled: true },
|
|
93
|
-
l2NeighDiscovery: { enabled: false },
|
|
94
|
-
bpf: {
|
|
95
|
-
vlanBypass: [0, 100],
|
|
96
|
-
},
|
|
97
|
-
ingressController: pulumi.all([args.ingressController ?? {}]).apply(([ingressController]) => {
|
|
98
|
-
return {
|
|
99
|
-
enabled: true,
|
|
100
|
-
loadbalancerMode: "shared",
|
|
101
|
-
service: {
|
|
102
|
-
labels: ingressController.serviceLabels,
|
|
103
|
-
},
|
|
104
|
-
};
|
|
105
|
-
}),
|
|
106
|
-
logOptions: { format: "json" },
|
|
107
|
-
},
|
|
108
|
-
}, opts);
|
|
109
|
-
this.registerOutputs();
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
//# sourceMappingURL=deployment.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../../lib/cilium/deployment.ts"],"names":[],"mappings":"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"}
|
package/lib/cilium/index.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { CiliumArgs, Cilium } from "./deployment.js";
|
|
2
|
-
import { LocalRedirectPolicyArgs, LocalRedirectPolicy } from "./localRedirectPolicy.js";
|
|
3
|
-
import { L2AnnouncementPolicySpecArgs, L2AnnouncementPolicyArgs, L2AnnouncementPolicy } from "./l2AnnouncementPolicy.js";
|
|
4
|
-
import { LoadBalancerIPPoolSpecArgs, LoadBalancerIPPoolArgs, LoadBalancerIPPool } from "./loadBalancerIPPool.js";
|
|
5
|
-
export { CiliumArgs, Cilium, LocalRedirectPolicyArgs, LocalRedirectPolicy, L2AnnouncementPolicySpecArgs, L2AnnouncementPolicyArgs, L2AnnouncementPolicy, LoadBalancerIPPoolSpecArgs, LoadBalancerIPPoolArgs, LoadBalancerIPPool, };
|
package/lib/cilium/index.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { Cilium } from "./deployment.js";
|
|
2
|
-
import { LocalRedirectPolicy } from "./localRedirectPolicy.js";
|
|
3
|
-
import { L2AnnouncementPolicy, } from "./l2AnnouncementPolicy.js";
|
|
4
|
-
import { LoadBalancerIPPool } from "./loadBalancerIPPool.js";
|
|
5
|
-
export { Cilium, LocalRedirectPolicy, L2AnnouncementPolicy, LoadBalancerIPPool, };
|
|
6
|
-
//# sourceMappingURL=index.js.map
|
package/lib/cilium/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/cilium/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAA2B,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACxF,OAAO,EAGL,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAsD,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAEjH,OAAO,EAEL,MAAM,EAEN,mBAAmB,EAGnB,oBAAoB,EAGpB,kBAAkB,GACnB,CAAC"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
-
import * as k8s from "@pulumi/kubernetes";
|
|
3
|
-
export interface L2AnnouncementPolicySpecArgs {
|
|
4
|
-
serviceSelector?: pulumi.Input<k8s.types.input.meta.v1.LabelSelector>;
|
|
5
|
-
nodeSelector?: pulumi.Input<k8s.types.input.meta.v1.LabelSelector>;
|
|
6
|
-
interfaces?: pulumi.Input<pulumi.Input<string>[]>;
|
|
7
|
-
externalIPs?: pulumi.Input<boolean>;
|
|
8
|
-
loadBalancerIPs?: pulumi.Input<boolean>;
|
|
9
|
-
}
|
|
10
|
-
export interface L2AnnouncementPolicyArgs {
|
|
11
|
-
metadata: pulumi.Input<k8s.types.input.meta.v1.ObjectMeta>;
|
|
12
|
-
spec: pulumi.Input<L2AnnouncementPolicySpecArgs>;
|
|
13
|
-
}
|
|
14
|
-
export declare class L2AnnouncementPolicy extends k8s.apiextensions.CustomResource {
|
|
15
|
-
/**
|
|
16
|
-
* Create a new CiliumL2AnnouncementPolicy resource.
|
|
17
|
-
* @param name The name of the CiliumL2AnnouncementPolicy resource.
|
|
18
|
-
* @param args A bag of arguments to control the CiliumL2AnnouncementPolicy creation.
|
|
19
|
-
* @param opts A bag of options that control this resource's behavior.
|
|
20
|
-
*/
|
|
21
|
-
constructor(name: string, args: L2AnnouncementPolicyArgs, opts?: pulumi.CustomResourceOptions);
|
|
22
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
-
import * as k8s from "@pulumi/kubernetes";
|
|
3
|
-
export class L2AnnouncementPolicy extends k8s.apiextensions.CustomResource {
|
|
4
|
-
/**
|
|
5
|
-
* Create a new CiliumL2AnnouncementPolicy resource.
|
|
6
|
-
* @param name The name of the CiliumL2AnnouncementPolicy resource.
|
|
7
|
-
* @param args A bag of arguments to control the CiliumL2AnnouncementPolicy creation.
|
|
8
|
-
* @param opts A bag of options that control this resource's behavior.
|
|
9
|
-
*/
|
|
10
|
-
constructor(name, args, opts) {
|
|
11
|
-
super(name, {
|
|
12
|
-
apiVersion: "cilium.io/v2alpha1",
|
|
13
|
-
kind: "CiliumL2AnnouncementPolicy",
|
|
14
|
-
metadata: args.metadata,
|
|
15
|
-
spec: pulumi.all([args.spec]).apply(([spec]) => {
|
|
16
|
-
return {
|
|
17
|
-
...spec,
|
|
18
|
-
externalIPs: spec.externalIPs ?? true,
|
|
19
|
-
loadBalancerIPs: spec.loadBalancerIPs ?? true,
|
|
20
|
-
};
|
|
21
|
-
}),
|
|
22
|
-
}, opts);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=l2AnnouncementPolicy.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"l2AnnouncementPolicy.js","sourceRoot":"","sources":["../../../lib/cilium/l2AnnouncementPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAC;AAe1C,MAAM,OAAO,oBAAqB,SAAQ,GAAG,CAAC,aAAa,CAAC,cAAc;IACxE;;;;;OAKG;IACH,YAAY,IAAY,EAAE,IAA8B,EAAE,IAAmC;QAC3F,KAAK,CACH,IAAI,EACJ;YACE,UAAU,EAAE,oBAAoB;YAChC,IAAI,EAAE,4BAA4B;YAClC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE;gBAC7C,OAAO;oBACL,GAAG,IAAI;oBACP,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;oBACrC,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,IAAI;iBAC9C,CAAC;YACJ,CAAC,CAAC;SACH,EACD,IAAI,CACL,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
-
import * as k8s from "@pulumi/kubernetes";
|
|
3
|
-
export interface BlockArgs {
|
|
4
|
-
cidr?: pulumi.Input<string>;
|
|
5
|
-
}
|
|
6
|
-
export interface LoadBalancerIPPoolSpecArgs {
|
|
7
|
-
blocks?: pulumi.Input<pulumi.Input<BlockArgs>[]>;
|
|
8
|
-
serviceSelector?: pulumi.Input<k8s.types.input.meta.v1.LabelSelector>;
|
|
9
|
-
}
|
|
10
|
-
export interface LoadBalancerIPPoolArgs {
|
|
11
|
-
metadata: pulumi.Input<k8s.types.input.meta.v1.ObjectMeta>;
|
|
12
|
-
spec: pulumi.Input<LoadBalancerIPPoolSpecArgs>;
|
|
13
|
-
}
|
|
14
|
-
export declare class LoadBalancerIPPool extends k8s.apiextensions.CustomResource {
|
|
15
|
-
/**
|
|
16
|
-
* Create a new CiliumLoadBalancerIPPool resource.
|
|
17
|
-
* @param name The name of the CiliumLoadBalancerIPPool resource.
|
|
18
|
-
* @param args A bag of arguments to control the CiliumLoadBalancerIPPool creation.
|
|
19
|
-
* @param opts A bag of options that control this resource's behavior.
|
|
20
|
-
*/
|
|
21
|
-
constructor(name: string, args: LoadBalancerIPPoolArgs, opts?: pulumi.CustomResourceOptions);
|
|
22
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import * as k8s from "@pulumi/kubernetes";
|
|
2
|
-
export class LoadBalancerIPPool extends k8s.apiextensions.CustomResource {
|
|
3
|
-
/**
|
|
4
|
-
* Create a new CiliumLoadBalancerIPPool resource.
|
|
5
|
-
* @param name The name of the CiliumLoadBalancerIPPool resource.
|
|
6
|
-
* @param args A bag of arguments to control the CiliumLoadBalancerIPPool creation.
|
|
7
|
-
* @param opts A bag of options that control this resource's behavior.
|
|
8
|
-
*/
|
|
9
|
-
constructor(name, args, opts) {
|
|
10
|
-
super(name, {
|
|
11
|
-
apiVersion: "cilium.io/v2alpha1",
|
|
12
|
-
kind: "CiliumLoadBalancerIPPool",
|
|
13
|
-
metadata: args.metadata,
|
|
14
|
-
spec: args.spec,
|
|
15
|
-
}, opts);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=loadBalancerIPPool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"loadBalancerIPPool.js","sourceRoot":"","sources":["../../../lib/cilium/loadBalancerIPPool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAC;AAgB1C,MAAM,OAAO,kBAAmB,SAAQ,GAAG,CAAC,aAAa,CAAC,cAAc;IACtE;;;;;OAKG;IACH,YAAY,IAAY,EAAE,IAA4B,EAAE,IAAmC;QACzF,KAAK,CACH,IAAI,EACJ;YACE,UAAU,EAAE,oBAAoB;YAChC,IAAI,EAAE,0BAA0B;YAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,EACD,IAAI,CACL,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
-
import * as k8s from "@pulumi/kubernetes";
|
|
3
|
-
export interface ToPortsArgs {
|
|
4
|
-
name?: pulumi.Input<string>;
|
|
5
|
-
port: pulumi.Input<string>;
|
|
6
|
-
protocol?: pulumi.Input<string>;
|
|
7
|
-
}
|
|
8
|
-
export interface RedirectBackendArgs {
|
|
9
|
-
localEndpointSelector?: pulumi.Input<k8s.types.input.meta.v1.LabelSelector>;
|
|
10
|
-
toPorts?: pulumi.Input<pulumi.Input<ToPortsArgs>[]>;
|
|
11
|
-
}
|
|
12
|
-
export interface RedirectFrontendArgs {
|
|
13
|
-
localEndpointSelector?: pulumi.Input<k8s.types.input.meta.v1.LabelSelector>;
|
|
14
|
-
toPorts?: pulumi.Input<pulumi.Input<ToPortsArgs>[]>;
|
|
15
|
-
}
|
|
16
|
-
export interface ServiceMatcherArgs {
|
|
17
|
-
namespace?: pulumi.Input<string>;
|
|
18
|
-
serviceName?: pulumi.Input<string>;
|
|
19
|
-
toPorts?: pulumi.Input<pulumi.Input<ToPortsArgs>[]>;
|
|
20
|
-
}
|
|
21
|
-
export interface RedirectFrontendArgs {
|
|
22
|
-
serviceMatcher?: pulumi.Input<ServiceMatcherArgs>;
|
|
23
|
-
}
|
|
24
|
-
export interface LocalRedirectPolicySpecArgs {
|
|
25
|
-
redirectBackend?: pulumi.Input<RedirectBackendArgs>;
|
|
26
|
-
redirectFrontend?: pulumi.Input<RedirectFrontendArgs>;
|
|
27
|
-
}
|
|
28
|
-
export interface LocalRedirectPolicyArgs {
|
|
29
|
-
metadata: pulumi.Input<k8s.types.input.meta.v1.ObjectMeta>;
|
|
30
|
-
spec: pulumi.Input<LocalRedirectPolicySpecArgs>;
|
|
31
|
-
}
|
|
32
|
-
export declare class LocalRedirectPolicy extends k8s.apiextensions.CustomResource {
|
|
33
|
-
/**
|
|
34
|
-
* Create a new CiliumLocalRedirectPolicy resource.
|
|
35
|
-
* @param name The name of the CiliumLocalRedirectPolicy resource.
|
|
36
|
-
* @param args A bag of arguments to control the CiliumLocalRedirectPolicy creation.
|
|
37
|
-
* @param opts A bag of options that control this resource's behavior.
|
|
38
|
-
*/
|
|
39
|
-
constructor(name: string, args: LocalRedirectPolicyArgs, opts?: pulumi.CustomResourceOptions);
|
|
40
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import * as k8s from "@pulumi/kubernetes";
|
|
2
|
-
export class LocalRedirectPolicy extends k8s.apiextensions.CustomResource {
|
|
3
|
-
/**
|
|
4
|
-
* Create a new CiliumLocalRedirectPolicy resource.
|
|
5
|
-
* @param name The name of the CiliumLocalRedirectPolicy resource.
|
|
6
|
-
* @param args A bag of arguments to control the CiliumLocalRedirectPolicy creation.
|
|
7
|
-
* @param opts A bag of options that control this resource's behavior.
|
|
8
|
-
*/
|
|
9
|
-
constructor(name, args, opts) {
|
|
10
|
-
super(name, { apiVersion: "cilium.io/v2", kind: "CiliumLocalRedirectPolicy", metadata: args.metadata, spec: args.spec }, opts);
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=localRedirectPolicy.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"localRedirectPolicy.js","sourceRoot":"","sources":["../../../lib/cilium/localRedirectPolicy.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAC;AAsC1C,MAAM,OAAO,mBAAoB,SAAQ,GAAG,CAAC,aAAa,CAAC,cAAc;IACvE;;;;;OAKG;IACH,YAAY,IAAY,EAAE,IAA6B,EAAE,IAAmC;QAC1F,KAAK,CACH,IAAI,EACJ,EAAE,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,2BAA2B,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAC3G,IAAI,CACL,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env sh
|
|
2
|
-
|
|
3
|
-
# Adpated from https://github.com/tinkerbell/charts/blob/main/tinkerbell/stack/templates/init_configmap.yaml
|
|
4
|
-
|
|
5
|
-
# shellcheck disable=SC2116
|
|
6
|
-
|
|
7
|
-
set -xeuo
|
|
8
|
-
|
|
9
|
-
src_interface=$(nsenter -t1 -n ip route | awk '/default/ {print $5}' | head -n1)
|
|
10
|
-
if [ -n "${IFACE}" ]; then
|
|
11
|
-
src_interface="${IFACE}"
|
|
12
|
-
fi
|
|
13
|
-
|
|
14
|
-
interface_type="macvlan"
|
|
15
|
-
interface_mode="bridge"
|
|
16
|
-
interface_name="${interface_type}0"
|
|
17
|
-
|
|
18
|
-
# Delete existing interfaces in the container
|
|
19
|
-
ip link del macvlan0 || true
|
|
20
|
-
ip link del ipvlan0 || true
|
|
21
|
-
ip link del ipvlan0-wa || true
|
|
22
|
-
|
|
23
|
-
# Delete existing interfaces in the host namespace
|
|
24
|
-
nsenter -t1 -n ip link del macvlan0 || true
|
|
25
|
-
nsenter -t1 -n ip link del ipvlan0 || true
|
|
26
|
-
nsenter -t1 -n ip link del ipvlan0-wa || true
|
|
27
|
-
|
|
28
|
-
# Create the interface
|
|
29
|
-
nsenter -t1 -n ip link add "${interface_name}" link "${src_interface}" type "${interface_type}" mode "${interface_mode}" || true
|
|
30
|
-
|
|
31
|
-
# Move the interface into the Pod container
|
|
32
|
-
pid="$(echo $$)"
|
|
33
|
-
nsenter -t1 -n ip link set "${interface_name}" netns "${pid}" || nsenter -t1 -n ip link delete "${interface_name}"
|
|
34
|
-
|
|
35
|
-
# Bring up the interface
|
|
36
|
-
ip link set dev "${interface_name}" up
|
|
37
|
-
|
|
38
|
-
# Set the IP address/route
|
|
39
|
-
if [ -n "${IP}" ]; then
|
|
40
|
-
ip addr add "${IP}" dev "${interface_name}" || true
|
|
41
|
-
else
|
|
42
|
-
ip addr add "127.1.1.1/32" dev "${interface_name}" noprefixroute || true
|
|
43
|
-
fi
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
-
import * as k8s from "@pulumi/kubernetes";
|
|
3
|
-
export declare const bridgePodSpec: {
|
|
4
|
-
hostPID: boolean;
|
|
5
|
-
};
|
|
6
|
-
export declare const bridgeInitContainer: (interfaceName?: pulumi.Input<string>, ip?: pulumi.Input<string>) => pulumi.Output<k8s.types.input.core.v1.Container>;
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
-
import * as path from "path";
|
|
3
|
-
import * as fs from "fs";
|
|
4
|
-
import * as url from "url";
|
|
5
|
-
export const bridgePodSpec = { hostPID: true };
|
|
6
|
-
export const bridgeInitContainer = (interfaceName, ip) => {
|
|
7
|
-
return pulumi.output({
|
|
8
|
-
name: "bridge-broadcast-interface",
|
|
9
|
-
image: "ghcr.io/jacobweinstock/relay-init:latest",
|
|
10
|
-
command: [
|
|
11
|
-
"/bin/sh",
|
|
12
|
-
"-c",
|
|
13
|
-
fs.readFileSync(path.join(path.dirname(url.fileURLToPath(import.meta.url)), "assets", "bridge.sh"), "utf-8"),
|
|
14
|
-
],
|
|
15
|
-
env: [
|
|
16
|
-
{ name: "IFACE", value: interfaceName ?? "" },
|
|
17
|
-
{ name: "IP", value: ip ?? "" },
|
|
18
|
-
],
|
|
19
|
-
securityContext: { privileged: true },
|
|
20
|
-
resources: {
|
|
21
|
-
requests: { memory: "16Mi" },
|
|
22
|
-
limits: { memory: "24Mi" },
|
|
23
|
-
},
|
|
24
|
-
});
|
|
25
|
-
};
|
|
26
|
-
//# sourceMappingURL=bridge.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../../../lib/kubernetes/interfaceBridge/bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAEzC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAE3B,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAE/C,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,aAAoC,EACpC,EAAyB,EACyB,EAAE;IACpD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,4BAA4B;QAClC,KAAK,EAAE,0CAA0C;QACjD,OAAO,EAAE;YACP,SAAS;YACT,IAAI;YACJ,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC;SAC7G;QACD,GAAG,EAAE;YACH,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,IAAI,EAAE,EAAE;YAC7C,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE;SAChC;QACD,eAAe,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;QACrC,SAAS,EAAE;YACT,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;YAC5B,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;SAC3B;KACF,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/kubernetes/interfaceBridge/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
#!/bin/sh
|
|
2
|
-
|
|
3
|
-
INTERVAL="20"
|
|
4
|
-
INITAL_DELAY="10"
|
|
5
|
-
|
|
6
|
-
apk --quiet --no-cache add nftables
|
|
7
|
-
|
|
8
|
-
sleep "${INITAL_DELAY}" &
|
|
9
|
-
wait $!
|
|
10
|
-
|
|
11
|
-
while :; do
|
|
12
|
-
if [ -n "${NETWORK_RANGE}" ]; then
|
|
13
|
-
input_handle=$(nft -a -n list chain ip netbird netbird-acl-input-filter 2>/dev/null | grep "iifname \"${NB_INTERFACE_NAME}\" ip saddr ${NETWORK_RANGE} ip daddr ${NETWORK_RANGE} jump netbird-acl-input-rules" | awk '{print $NF}')
|
|
14
|
-
if [ -z "${input_handle}" ]; then
|
|
15
|
-
nft insert rule ip netbird netbird-acl-input-filter iifname "${NB_INTERFACE_NAME}" ip saddr "${NETWORK_RANGE}" ip daddr "${NETWORK_RANGE}" jump netbird-acl-input-rules
|
|
16
|
-
fi
|
|
17
|
-
|
|
18
|
-
output_handle=$(nft -a -n list chain ip netbird netbird-acl-output-filter 2>/dev/null | grep "oifname \"${NB_INTERFACE_NAME}\" ip saddr ${NETWORK_RANGE} ip daddr ${NETWORK_RANGE} jump netbird-acl-output-rules" | awk '{print $NF}')
|
|
19
|
-
if [ -z "${output_handle}" ]; then
|
|
20
|
-
nft insert rule ip netbird netbird-acl-output-filter oifname "${NB_INTERFACE_NAME}" ip saddr "${NETWORK_RANGE}" ip daddr "${NETWORK_RANGE}" jump netbird-acl-output-rules
|
|
21
|
-
fi
|
|
22
|
-
fi
|
|
23
|
-
|
|
24
|
-
if [ "${MASQUERADE_ALL}" = "true" ]; then
|
|
25
|
-
if ! nft -a -n list chain ip netbird netbird-rt-postrouting 2>/dev/null | grep "type nat hook postrouting priority" >/dev/null; then
|
|
26
|
-
nft add chain ip netbird netbird-rt-postrouting '{ type nat hook postrouting priority srcnat - 1; }'
|
|
27
|
-
fi
|
|
28
|
-
|
|
29
|
-
masquerade_handle=$(nft -a -n list chain ip netbird netbird-rt-postrouting 2>/dev/null | grep "oifname \"${NB_INTERFACE_NAME}\" masquerade" | awk '{print $NF}')
|
|
30
|
-
if [ -z "${masquerade_handle}" ]; then
|
|
31
|
-
nft insert rule ip netbird netbird-rt-postrouting oifname "${NB_INTERFACE_NAME}" masquerade
|
|
32
|
-
fi
|
|
33
|
-
fi
|
|
34
|
-
|
|
35
|
-
if [ -n "${MSS}" ]; then
|
|
36
|
-
mss_handle=$(nft -a -n list chain ip netbird netbird-rt-fwd 2>/dev/null | grep "oifname \"${NB_INTERFACE_NAME}\"" | grep "maxseg size set ${MSS}" | awk '{print $NF}')
|
|
37
|
-
if [ -z "${mss_handle}" ]; then
|
|
38
|
-
nft insert rule ip netbird netbird-rt-fwd oifname "${NB_INTERFACE_NAME}" tcp flags syn / syn,rst counter tcp option maxseg size set "${MSS}"
|
|
39
|
-
fi
|
|
40
|
-
fi
|
|
41
|
-
|
|
42
|
-
sleep "${INTERVAL}" &
|
|
43
|
-
wait $!
|
|
44
|
-
done
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
-
import { ComponentResource } from "../common/index.js";
|
|
3
|
-
export interface OAuth2ProxyArgs {
|
|
4
|
-
namespace?: pulumi.Input<string>;
|
|
5
|
-
replicas?: pulumi.Input<number>;
|
|
6
|
-
hostname: pulumi.Input<string>;
|
|
7
|
-
ingressClassName?: pulumi.Input<string>;
|
|
8
|
-
clusterIssuer?: pulumi.Input<string>;
|
|
9
|
-
}
|
|
10
|
-
export declare class OAuth2Proxy extends ComponentResource {
|
|
11
|
-
private readonly helmRelease;
|
|
12
|
-
readonly namespace: pulumi.Output<string>;
|
|
13
|
-
/**
|
|
14
|
-
* Create a new OAuth2-Proxy resource.
|
|
15
|
-
* @param name The name of OAuth2-Proxy resource.
|
|
16
|
-
* @param args A bag of arguments to control the OAuth2-Proxy creation.
|
|
17
|
-
* @param opts A bag of options that control this resource's behavior.
|
|
18
|
-
*/
|
|
19
|
-
constructor(name: string, args: OAuth2ProxyArgs, opts?: pulumi.ComponentResourceOptions);
|
|
20
|
-
}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
-
import * as k8s from "@pulumi/kubernetes";
|
|
3
|
-
import { ComponentResource } from "../common/index.js";
|
|
4
|
-
import * as kubernetes from "../kubernetes/index.js";
|
|
5
|
-
import { Certificate } from "../certManager/index.js";
|
|
6
|
-
export class OAuth2Proxy extends ComponentResource {
|
|
7
|
-
helmRelease;
|
|
8
|
-
namespace;
|
|
9
|
-
/**
|
|
10
|
-
* Create a new OAuth2-Proxy resource.
|
|
11
|
-
* @param name The name of OAuth2-Proxy resource.
|
|
12
|
-
* @param args A bag of arguments to control the OAuth2-Proxy creation.
|
|
13
|
-
* @param opts A bag of options that control this resource's behavior.
|
|
14
|
-
*/
|
|
15
|
-
constructor(name, args, opts) {
|
|
16
|
-
super("oauth2proxy", name, args, opts);
|
|
17
|
-
opts = this.opts(k8s.Provider);
|
|
18
|
-
args.replicas ??= 1;
|
|
19
|
-
this.namespace = args.namespace
|
|
20
|
-
? pulumi.output(args.namespace)
|
|
21
|
-
: new k8s.core.v1.Namespace(name, { metadata: { name } }, opts).metadata.name;
|
|
22
|
-
this.helmRelease = new kubernetes.helm.v3.Release(name, {
|
|
23
|
-
name,
|
|
24
|
-
namespace: this.namespace,
|
|
25
|
-
repositoryOpts: { repo: "https://oauth2-proxy.github.io/manifests" },
|
|
26
|
-
chart: "oauth2-proxy",
|
|
27
|
-
values: {
|
|
28
|
-
fullnameOverride: name,
|
|
29
|
-
replicaCount: args.replicas,
|
|
30
|
-
alphaConfig: { enabled: true, serverConfigData: {}, metricsConfigData: {} },
|
|
31
|
-
//service: { ipDualStack: { enabled: true } },
|
|
32
|
-
resources: {
|
|
33
|
-
requests: { memory: "128Mi" },
|
|
34
|
-
limits: { memory: "192Mi" },
|
|
35
|
-
},
|
|
36
|
-
/*
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
*/
|
|
40
|
-
ingress: {
|
|
41
|
-
enabled: false,
|
|
42
|
-
className: args.ingressClassName,
|
|
43
|
-
annotations: {
|
|
44
|
-
"traefik.ingress.kubernetes.io/router.entrypoints": "websecure",
|
|
45
|
-
"traefik.ingress.kubernetes.io/router.tls": "true",
|
|
46
|
-
"cert-manager.io/cluster-issuer": args.clusterIssuer ?? Certificate.DefaultClusterIssuer,
|
|
47
|
-
},
|
|
48
|
-
hosts: [{ host: args.hostname, paths: [{ path: "/", pathType: "Prefix" }] }],
|
|
49
|
-
tls: [{ secretName: `${name}-tls`, hosts: [args.hostname] }],
|
|
50
|
-
},
|
|
51
|
-
},
|
|
52
|
-
}, opts);
|
|
53
|
-
this.registerOutputs();
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=deployment.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../../lib/oauth2Proxy/deployment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAUtD,MAAM,OAAO,WAAY,SAAQ,iBAAiB;IAC/B,WAAW,CAA6B;IACzC,SAAS,CAAwB;IAEjD;;;;;OAKG;IACH,YAAY,IAAY,EAAE,IAAqB,EAAE,IAAsC;QACrF,KAAK,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAEvC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE/B,IAAI,CAAC,QAAQ,KAAK,CAAC,CAAC;QAEpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;YAC7B,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YAC/B,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAEhF,IAAI,CAAC,WAAW,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAC/C,IAAI,EACJ;YACE,IAAI;YACJ,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,cAAc,EAAE,EAAE,IAAI,EAAE,0CAA0C,EAAE;YACpE,KAAK,EAAE,cAAc;YACrB,MAAM,EAAE;gBACN,gBAAgB,EAAE,IAAI;gBACtB,YAAY,EAAE,IAAI,CAAC,QAAQ;gBAC3B,WAAW,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE;gBAC3E,8CAA8C;gBAC9C,SAAS,EAAE;oBACT,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;oBAC7B,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;iBAC5B;gBAED;;;kBAGE;gBAEF,OAAO,EAAE;oBACP,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,IAAI,CAAC,gBAAgB;oBAChC,WAAW,EAAE;wBACX,kDAAkD,EAAE,WAAW;wBAC/D,0CAA0C,EAAE,MAAM;wBAClD,gCAAgC,EAAE,IAAI,CAAC,aAAa,IAAI,WAAW,CAAC,oBAAoB;qBACzF;oBACD,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;oBAC5E,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;iBAC7D;aACF;SACF,EACD,IAAI,CACL,CAAC;QAEF,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;CACF"}
|
package/lib/oauth2Proxy/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/oauth2Proxy/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAmB,WAAW,EAAE,CAAC"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
-
import * as k8s from "@pulumi/kubernetes";
|
|
3
|
-
import { ComponentResource } from "../common/index.js";
|
|
4
|
-
export interface RedisArgs {
|
|
5
|
-
address: pulumi.Input<string>;
|
|
6
|
-
database?: pulumi.Input<number>;
|
|
7
|
-
}
|
|
8
|
-
export interface PaperlessArgs {
|
|
9
|
-
namespace?: pulumi.Input<string>;
|
|
10
|
-
replicas?: pulumi.Input<number>;
|
|
11
|
-
storageClassName?: pulumi.Input<string>;
|
|
12
|
-
storage?: pulumi.Input<string>;
|
|
13
|
-
redis?: pulumi.Input<RedisArgs>;
|
|
14
|
-
hostname: pulumi.Input<string>;
|
|
15
|
-
ingressClassName?: pulumi.Input<string>;
|
|
16
|
-
ingressAnnotations?: pulumi.Input<{
|
|
17
|
-
[key: string]: pulumi.Input<string>;
|
|
18
|
-
}>;
|
|
19
|
-
resources?: pulumi.Input<k8s.types.input.core.v1.ResourceRequirements>;
|
|
20
|
-
protect?: boolean;
|
|
21
|
-
}
|
|
22
|
-
export declare class Paperless extends ComponentResource {
|
|
23
|
-
private readonly dataVolumeClaim;
|
|
24
|
-
private readonly deployment;
|
|
25
|
-
private readonly podDisruptionBudget;
|
|
26
|
-
private readonly service;
|
|
27
|
-
private readonly ingress;
|
|
28
|
-
readonly namespace: pulumi.Output<string>;
|
|
29
|
-
/**
|
|
30
|
-
* Create a new paperless resource.
|
|
31
|
-
* @param name The name of the paperless resource.
|
|
32
|
-
* @param args A bag of arguments to control the paperless creation.
|
|
33
|
-
* @param opts A bag of options that control this resource's behavior.
|
|
34
|
-
*/
|
|
35
|
-
constructor(name: string, args: PaperlessArgs, opts?: pulumi.ComponentResourceOptions);
|
|
36
|
-
}
|