---
id: tls-manual-secret
name: "Manual TLS Secret via raw_manifest"
description: >-
  Delivers a pre-provisioned kubernetes.io/tls Secret (RSA 2048) via raw_manifest preinstall
  sourced from chart-test/fixtures/, no inline base64 blobs. The chart mounts it with
  tls.volumeType=secret (default) and serves HTTPS 200. Validates Secret type, data keys, PEM
  validity, and in-cluster HTTPS reachability.
labels: {customer: any, profile: tls}
cluster:
  provider: kind
  k8s_version: v1.36.1
  preinstall:
    - kind: raw_manifest
      path: chart-test/fixtures/certificates/manual-tls/manual-tls-basic-secret.yaml
      namespace: sample
  helm_timeout: 10m
product:
  chart: ./chart
  release: sample
  namespace: sample
  set:
    tls.enabled: "true"
    tls.secretName: manual-tls-basic
    tls.servicePort: "443"
    tls.volumeType: "secret"
asserts:
  - type: helm-status-deployed
    release: sample
    namespace: sample
  - type: pods-ready
    namespace: sample
    timeout: 5m
  - type: smoke-script
    path: chart-test/assertions/manual-tls-basic.sh
  - type: tls-cert-valid
    namespace: sample
    tls_secret: "manual-tls-basic"
    tls_host: "sample.sample.svc"
    port: 443
    expected_status: 200
tags: [nightly, curated-live]
mechanisms: ['addon:manual-tls-secret']
category: certificates
integration: manual-tls-secret
tier: live
