|
|
@ -130,24 +130,21 @@ EOF |
|
|
function post_install_le () { |
|
|
function post_install_le () { |
|
|
local cluster_name="${1:-}" |
|
|
local cluster_name="${1:-}" |
|
|
|
|
|
|
|
|
# Generated by terraform |
|
|
cert_dn="$(openssl x509 -noout -subject -in "$cluster_name/cluster.crt")" |
|
|
source "$cluster_name/dns.env" |
|
|
cert_cn="${cert_dn#subject=CN = }" |
|
|
|
|
|
|
|
|
# Get a certificate from Let's Encrypt |
|
|
|
|
|
lego -m "nmasse@redhat.com" -d "$LE_API_HOSTNAME" -d "$LE_ROUTER_HOSTNAME" -a --dns gandiv5 run --no-bundle |
|
|
|
|
|
|
|
|
|
|
|
# Deploy certificate to ingress |
|
|
# Deploy certificate to ingress |
|
|
oc --insecure-skip-tls-verify --kubeconfig="$cluster_name/auth/kubeconfig" create secret tls router-certs-$(date "+%Y-%m-%d") --cert=.lego/certificates/$LE_API_HOSTNAME.crt --key=.lego/certificates/$LE_API_HOSTNAME.key -n openshift-ingress --dry-run -o yaml > "$cluster_name/router-certs.yaml" |
|
|
oc --insecure-skip-tls-verify --kubeconfig="$cluster_name/auth/kubeconfig" create secret tls router-certs-$(date "+%Y-%m-%d") --cert="$cluster_name/cluster.crt" --key="$cluster_name/cluster.key" -n openshift-ingress --dry-run -o yaml > "$cluster_name/router-certs.yaml" |
|
|
oc --insecure-skip-tls-verify --kubeconfig="$cluster_name/auth/kubeconfig" apply -f "$cluster_name/router-certs.yaml" -n openshift-ingress |
|
|
oc --insecure-skip-tls-verify --kubeconfig="$cluster_name/auth/kubeconfig" apply -f "$cluster_name/router-certs.yaml" -n openshift-ingress |
|
|
oc --insecure-skip-tls-verify --kubeconfig="$cluster_name/auth/kubeconfig" patch ingresscontroller default -n openshift-ingress-operator --type=merge --patch-file=/dev/fd/0 <<EOF |
|
|
oc --insecure-skip-tls-verify --kubeconfig="$cluster_name/auth/kubeconfig" patch ingresscontroller default -n openshift-ingress-operator --type=merge --patch-file=/dev/fd/0 <<EOF |
|
|
{"spec": { "defaultCertificate": { "name": "router-certs-$(date "+%Y-%m-%d")" }}} |
|
|
{"spec": { "defaultCertificate": { "name": "router-certs-$(date "+%Y-%m-%d")" }}} |
|
|
EOF |
|
|
EOF |
|
|
|
|
|
|
|
|
# Deploy certificate to api |
|
|
# Deploy certificate to api |
|
|
oc --insecure-skip-tls-verify --kubeconfig="$cluster_name/auth/kubeconfig" create secret tls api-certs-$(date "+%Y-%m-%d") --cert=.lego/certificates/$LE_API_HOSTNAME.crt --key=.lego/certificates/$LE_API_HOSTNAME.key -n openshift-config --dry-run -o yaml > "$cluster_name/api-certs.yaml" |
|
|
oc --insecure-skip-tls-verify --kubeconfig="$cluster_name/auth/kubeconfig" create secret tls api-certs-$(date "+%Y-%m-%d") --cert="$cluster_name/cluster.crt" --key="$cluster_name/cluster.key" -n openshift-config --dry-run -o yaml > "$cluster_name/api-certs.yaml" |
|
|
oc --insecure-skip-tls-verify --kubeconfig="$cluster_name/auth/kubeconfig" apply -f "$cluster_name/api-certs.yaml" -n openshift-config |
|
|
oc --insecure-skip-tls-verify --kubeconfig="$cluster_name/auth/kubeconfig" apply -f "$cluster_name/api-certs.yaml" -n openshift-config |
|
|
oc --insecure-skip-tls-verify --kubeconfig="$cluster_name/auth/kubeconfig" patch apiserver cluster --type=merge --patch-file=/dev/fd/0 <<EOF |
|
|
oc --insecure-skip-tls-verify --kubeconfig="$cluster_name/auth/kubeconfig" patch apiserver cluster --type=merge --patch-file=/dev/fd/0 <<EOF |
|
|
{"spec":{"servingCerts":{"namedCertificates":[{"names":["$LE_API_HOSTNAME"],"servingCertificate":{"name": "api-certs-$(date "+%Y-%m-%d")"}}]}}} |
|
|
{"spec":{"servingCerts":{"namedCertificates":[{"names":["$cert_cn"],"servingCertificate":{"name": "api-certs-$(date "+%Y-%m-%d")"}}]}}} |
|
|
EOF |
|
|
EOF |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@ -205,7 +202,11 @@ function shell () { |
|
|
export DEFAULT_HOST_LIST="$PWD/$cluster_name" |
|
|
export DEFAULT_HOST_LIST="$PWD/$cluster_name" |
|
|
|
|
|
|
|
|
# Terraform |
|
|
# Terraform |
|
|
export TF_CLI_ARGS="-var-file=$cluster_name/terraform.tfvars -state=$cluster_name/terraform.tfstate" |
|
|
export TF_CLI_ARGS_plan="-var-file=$cluster_name/terraform.tfvars -state=$cluster_name/terraform.tfstate" |
|
|
|
|
|
export TF_CLI_ARGS_apply="-var-file=$cluster_name/terraform.tfvars -state=$cluster_name/terraform.tfstate" |
|
|
|
|
|
export TF_CLI_ARGS_destroy="-var-file=$cluster_name/terraform.tfvars -state=$cluster_name/terraform.tfstate" |
|
|
|
|
|
export TF_CLI_ARGS_state_list="-state=$cluster_name/terraform.tfstate" |
|
|
|
|
|
export TF_CLI_ARGS_state_rm="-state=$cluster_name/terraform.tfstate" |
|
|
|
|
|
|
|
|
# OpenShift |
|
|
# OpenShift |
|
|
export KUBECONFIG="$PWD/$cluster_name/auth/kubeconfig" |
|
|
export KUBECONFIG="$PWD/$cluster_name/auth/kubeconfig" |
|
|
|