console/deployment/utils/cert-manager.ts
renovate[bot] 1afe0ec73a
Update dependency @theguild/prettier-config to v1 (#676)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Kamil Kisiela <kamil.kisiela@gmail.com>
2022-11-24 10:00:41 +00:00

47 lines
1.1 KiB
TypeScript

import * as k8s from '@pulumi/kubernetes';
export class CertManager {
public deployCertManagerAndIssuer() {
const certManager = new k8s.yaml.ConfigFile('cert-manager', {
file: 'https://github.com/jetstack/cert-manager/releases/download/v1.10.0/cert-manager.yaml',
});
const issuerName = 'letsencrypt-prod';
new k8s.apiextensions.CustomResource(
'cert-manager-issuer',
{
apiVersion: 'cert-manager.io/v1',
kind: 'ClusterIssuer',
metadata: {
name: issuerName,
},
spec: {
acme: {
server: 'https://acme-v02.api.letsencrypt.org/directory',
email: 'contact@the-guild.dev',
privateKeySecretRef: {
name: issuerName,
},
solvers: [
{
http01: {
ingress: {
class: 'contour',
},
},
},
],
},
},
},
{
dependsOn: [certManager],
},
);
return {
tlsIssueName: issuerName,
};
}
}