mirror of
https://github.com/graphql-hive/console
synced 2026-04-21 14:37:17 +00:00
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Kamil Kisiela <kamil.kisiela@gmail.com>
47 lines
1.1 KiB
TypeScript
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,
|
|
};
|
|
}
|
|
}
|