# OCI - Oracle Cloud Infrastructure

Este documento documenta a configuração e deployments relacionados à Oracle Cloud Infrastructure (OCI) para os projetos **Invent Cloud** e **Nexus**.

## Projetos

### Invent Cloud
- **Empresa**: Invista
- **Projeto**: Invent Finance
- **Local**: `C:\dev\inventcloud\invent-finance\`
- **Repositório Azure DevOps**: Invent-finance

### Nexus (MFE - Micro Frontends)
- **Empresa**: Invista
- **Repositório Base**: `C:\dev\C:devrepos_mfe\`
- **Templates Pipeline**: `C:\dev\repos_mfe\azure-pipelines-templates\`

## Compartimentos OCI

| Ambiente | Compartment OCID |
|----------|------------------|
| Dev | `ocid1.compartment.oc1..aaaaaaaa76x3nykkjwvctpr6px34dysu3pbg7p62h2r65fegt7fvbrioll3a` |
| HML | `ocid1.compartment.oc1..aaaaaaaawc3hj6isbiibbiuokijw7le72ga3qa3qyblsdhrkj5gdygskzmwq` |
| PROD | `ocid1.compartment.oc1..aaaaaaaazjxk5dkwleol3hjq7huojevotvnjhvy5ngro4jtwcqx2fn2ujara` |

### Namespace OCI
- **Namespace**: `grbb7qzeuoag`

---

## Infraestrutura Existente (Dev)

### VCN - Virtual Cloud Network (vcn-oke — Terraform ✅)

> ⚠️ A VCN ativa e gerenciada pelo Terraform e `10.110.0.0/16`.
> A VCN `10.120.0.0/16` era legado/orphan e foi deletada.

| Nome | CIDR | OCID | Gerenciada por |
|------|------|------|---------------|
| `vcn-oke` (DEV, ativa) | **10.110.0.0/16** | `ocid1.vcn.oc1.sa-saopaulo-1.amaaaaaasks3yliapqrmikfzagpgqohuzjqik3hx63w7r2uajiqv5krvxkda` | Terraform |
| `VCN-DEV` | 10.6.0.0/16 | `ocid1.vcn.oc1.sa-saopaulo-1.amaaaaaasks3yliatoq6uvqqak3kax775ksd2jastvgsbiki7mgj6jzue6dq` | Manual |

### Subnets da vcn-oke (10.110.0.0/16)

| Nome | CIDR | Tipo | Uso |
|------|------|------|-----|
| `sbn-workers-1` | 10.110.0.0/20 | Publica | Worker nodes cls-dev-nexus |
| `sbn-workers-2` | 10.110.16.0/20 | Publica | Worker nodes cls-dev-barramento |
| `sbn-workers-3` | 10.110.32.0/20 | Publica | Worker nodes cls-dev-observabilidade |
| `sbn-lb-1` | 10.110.128.0/20 | Publica | Load Balancers OKE |
| `sbn-lb-2` | 10.110.144.0/20 | Publica | Load Balancers OKE |
| `sbn-api-gateway` | 10.110.192.0/20 | **Privada** | API Gateway MFE (`api-gateway-mfe-dev`) |

### Subnet do API Gateway MFE

```
OCID: ocid1.subnet.oc1.sa-saopaulo-1.aaaaaaaaooiy6bmikuaohtxyz2o3sjrjp2iqob3rim4j66vw4rzit7jcqjfa
```

---

## Buckets OCI (MFE — DEV)

Criados automaticamente pela pipeline CI/CD (branch `devops`) em `cmp-dev-inv`:

| Bucket | MFE | Acesso | Criado por |
|--------|-----|--------|-----------|
| `mfe-shell-dev` | mfe-shell | ObjectReadWithoutList | Pipeline CI |
| `mfe-auth-dev` | mfe-auth | ObjectReadWithoutList | Pipeline CI |
| `mfe-user-dev` | mfe-user | ObjectReadWithoutList | Pipeline CI |
| `mfe-person-dev` | mfe-person | ObjectReadWithoutList | Pipeline CI |
| `mfe-formalization-dev` | mfe-formalization | ObjectReadWithoutList | Pipeline CI |
| `mfe-poc-dev` | mfe-poc | ObjectReadWithoutList | Pipeline CI |

**Namespace:** `grbb7qzeuoag`

## API Gateways MFE

> ✅ **api-gateway-mfe-dev** gerenciado por Terraform (`tf_oci_clusters/modules/api_gateway_mfe`).
> Os gateways antigos criados por pipeline (`api-gateway-mfe-shell-dev`, `api-gateway-mfe-dev` em `cpm-dev-automacao`) sao legado.

| Gateway | Tipo | IP | Subnet | Gerenciado por |
|---------|------|----|--------|---------------|
| `api-gateway-mfe-dev` (ativo) | PRIVATE | 10.110.198.250 | `sbn-api-gateway` (10.110.192.0/20) | **Terraform** |
| `api-gateway-nexus-dev` | PRIVATE | 10.6.0.123 | `SBNT-DEV` (VCN-DEV) | Manual |

**6 deployments no api-gateway-mfe-dev (um por MFE):**
`mfe-shell-dev` · `mfe-auth-dev` · `mfe-user-dev` · `mfe-person-dev` · `mfe-formalization-dev` · `mfe-poc-dev`

### Comandos para verificar buckets

```bash
# Verificar namespace
oci os ns get

# Listar buckets (dev)
oci os bucket list --compartment-id "ocid1.compartment.oc1..aaaaaaaa76x3nykkjwvctpr6px34dysu3pbg7p62h2r65fegt7fvbrioll3a" --all

# Listar buckets (hml)
oci os bucket list --compartment-id "ocid1.compartment.oc1..aaaaaaaawc3hj6isbiibbiuokijw7le72ga3qa3qyblsdhrkj5gdygskzmwq" --all

# Listar buckets (prod)
oci os bucket list --compartment-id "ocid1.compartment.oc1..aaaaaaaazjxk5dkwleol3hjq7huojevotvnjhvy5ngro4jtwcqx2fn2ujara" --all
```

## MFEs - Micro Frontends

### Status dos MFEs (2026-02-28 — ATUALIZADO)

Todos os 6 MFEs padronizados com o mesmo `azure-pipelines.yml` na branch `devops`,
estendendo o template compartilhado `azure-pipelines-templates/mfe/deploy-mfe-oci.yaml`.

| Repositório | Branch | Pipeline | Bucket OCI | Status |
|-------------|--------|---------|-----------|--------|
| mfe-shell | devops | `azure-pipelines.yml` → template OCI | `mfe-shell-dev` | ✅ Padronizado |
| mfe-auth | devops | `azure-pipelines.yml` → template OCI | `mfe-auth-dev` | ✅ Padronizado |
| mfe-user | devops | `azure-pipelines.yml` → template OCI | `mfe-user-dev` | ✅ Padronizado |
| mfe-person | devops | `azure-pipelines.yml` → template OCI | `mfe-person-dev` | ✅ Padronizado |
| mfe-formalization | devops | `azure-pipelines.yml` → template OCI | `mfe-formalization-dev` | ✅ Padronizado |
| mfe-poc | devops | `azure-pipelines.yml` → template OCI | `mfe-poc-dev` | ✅ Padronizado |

### Pipeline OCI - Estrutura (template compartilhado)

```
push para branch 'devops' em qualquer mfe-*
  │
  ▼ azure-pipelines.yml (cada repo)
  extends: mfe/deploy-mfe-oci.yaml@azure-pipelines-templates
  parameters: mfeName: 'mfe-<nome>'
  │
  ├─► STAGE Build
  │     npm ci + npm run build:dev
  │     Publica artefato 'dist'
  │
  └─► STAGE UploadToOCI
        Instala OCI CLI
        Configura ~/.oci/config (via Variable Group oci-terraform)
        Cria bucket 'mfe-<nome>-dev' se nao existir
        Seta public-access-type=ObjectReadWithoutList
        Upload de todos os ficheiros com content-type correto
```

### Variable Group

| Variable Group | ID | Variaveis Chave |
|----------------|-----|----------------|
| `oci-terraform` | 34 | `OCI_PRIVATE_KEY_B64`, `OCI_USER_OCID`, `OCI_FINGERPRINT`, `OCI_TENANCY_OCID`, `OCI_REGION`, `TF_VAR_compartment_parent_ocid` |

## MS-POC - Microservice POC

**Status**: ❌ **NÃO PUBLICADO EM OBJECT STORAGE**

O `ms-poc` está configurado no cluster Kubernetes (OKE) conforme `ingresses.yaml`, mas **NÃO foi publicado em nenhum Object Storage**.

### Ingressos ms-poc (Kubernetes)

```yaml
# Internal
- host: ms-poc.dev-01.interno.invista.com.br
  namespace: nexus-services

# External  
- host: ms-poc.dev.invista.com.br
  namespace: nexus-services
```

### Próximos Passos para ms-poc

Para publicar no OCI Object Storage:

1. Criar bucket: `nexus-ms-poc-dev`
2. Criar pipeline Azure DevOps para build e upload
3. Configurar API Gateway ou usar OKE para deploy

## Clusters OKE (Oracle Kubernetes Engine)

### Clusters Disponíveis (Atualizado 20/02/2026)

#### Clusters DEV (Terraform - Nexus)

| Nome | K8s Version | Status | Endpoint Público | Endpoint Privado | ArgoCD |
|------|-------------|--------|------------------|------------------|--------|
| cls-dev-nexus | v1.34.1 | ACTIVE | 136.248.124.22:6443 | 10.110.133.10:6443 | ✅ Sim |
| cls-dev-barramento | v1.34.1 | ACTIVE | 137.131.198.242:6443 | 10.110.143.24:6443 | ❌ |
| cls-dev-observabilidade | v1.34.1 | ACTIVE | 163.176.189.0:6443 | 10.110.143.239:6443 | ❌ |

#### Clusters DEV (Legado)

| Nome | K8s Version | Status | Endpoint | Nodes |
|------|-------------|--------|----------|-------|
| dev-cls-1 | v1.34.1 | ACTIVE | 129.148.14.249:6443 | 1 |
| dev-cls-2 | v1.34.1 | ACTIVE | 192.29.141.170:6443 | 1 |
| dev-cls-3 | v1.34.1 | ACTIVE | 192.29.130.196:6443 | 1 |

#### Clusters PRD

| Nome | K8s Version | Status | Endpoint |
|------|-------------|--------|----------|
| prd-cls-1 | v1.34.1 | ACTIVE | 168.75.75.189:6443 |
| prd-cls-2 | v1.34.1 | ACTIVE | 129.159.57.212:6443 |
| prd-cls-3 | v1.34.1 | ACTIVE | 168.75.89.161:6443 |

### Cluster OCIDs

#### Clusters DEV (Terraform - Nexus)

| Nome | Cluster OCID |
|------|--------------|
| cls-dev-nexus | `ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaaxernqctehleyduukfuyfgcnmm6fuk5l4mkgdaocsdcobrewkvc3a` |
| cls-dev-barramento | `ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaancdtl3rrcblzsifl6h3vguxhj5byqldtzakgg7tv5cifn2eknv6q` |
| cls-dev-observabilidade | `ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaaxbelg5ztrdn3ca3tm5mohq363c5v6yhmjhbwlgyndcrszb62robq` |

#### Clusters DEV (Legado)

| Nome | Cluster OCID |
|------|--------------|
| dev-cls-1 | `ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaaltungrmx3r4d36wmahz5frdfrrve5zarxgj73fxz6csxkn6sthwa` |
| dev-cls-2 | `ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaa3km66vd2xw2t472cegygakgemujolgikfay4wplw6cmyljv7pfiq` |
| dev-cls-3 | `ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaavcroprepvzvhjho56j4bu7fymnrrqlzt7bagjyjeocxco2kx65uq` |

#### Clusters PRD

| Nome | Cluster OCID |
|------|--------------|
| prd-cls-1 | `ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaamwbvpuy62wuf7nghfefo4i2wlmt64hm2oy6dp6y3ncmdyncpmrva` |
| prd-cls-2 | `ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaacodepi7lmp3pt5teu5d7zqelonuuxp43ptcmdupvncnmmv6prhua` |
| prd-cls-3 | `ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaal6d462vhcm3mn7jnxvzqqdn3sbebq7he7izcfd2v5ckws6t46wfq` |

### Comando para obter kubeconfig

```bash
# cls-dev-nexus (ArgoCD + Microserviços)
oci ce cluster create-kubeconfig \
  --cluster-id ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaaxernqctehleyduukfuyfgcnmm6fuk5l4mkgdaocsdcobrewkvc3a \
  --file $HOME/.kube/config \
  --region sa-saopaulo-1 \
  --overwrite

# cls-dev-barramento
oci ce cluster create-kubeconfig \
  --cluster-id ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaancdtl3rrcblzsifl6h3vguxhj5byqldtzakgg7tv5cifn2eknv6q \
  --file $HOME/.kube/config \
  --region sa-saopaulo-1 \
  --overwrite

# cls-dev-observabilidade
oci ce cluster create-kubeconfig \
  --cluster-id ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaaxbelg5ztrdn3ca3tm5mohq363c5v6yhmjhbwlgyndcrszb62robq \
  --file $HOME/.kube/config \
  --region sa-saopaulo-1 \
  --overwrite

# prd-cls-2 (ArgoCD PROD)
oci ce cluster create-kubeconfig \
  --cluster-id ocid1.cluster.oc1.sa-saopaulo-1.aaaaaaaacodepi7lmp3pt5teu5d7zqelonuuxp43ptcmdupvncnmmv6prhua \
  --file $HOME/.kube/config \
  --region sa-saopaulo-1 \
  --overwrite
```

---

## ArgoCD

### cls-dev-nexus (DEV)

| Item | Valor |
|------|-------|
| Namespace | `argocd` |
| URL (LoadBalancer) | `http://10.110.135.3` |
| Usuário | `admin` |
| Senha | Ver arquivo `~/.ssh/oci-credentials.md` |

#### Aplicações ArgoCD (cls-dev-nexus)

| Aplicação | Sync Status | Health Status |
|-----------|-------------|---------------|
| ms-poc-dev-cls-dev-nexus | OutOfSync | Healthy |
| ms-person-dev-cls-dev-nexus | Unknown | Healthy |
| ms-user-dev-cls-dev-nexus | Unknown | Healthy |
| ms-auth-external-dev-cls-dev-nexus | OutOfSync | Degraded |
| ms-auth-sso-dev-cls-dev-nexus | OutOfSync | Healthy |
| ms-belt-dev-cls-dev-nexus | OutOfSync | Healthy |
| ms-notify-dev-cls-dev-nexus | OutOfSync | Healthy |
| ms-parameter-dev-cls-dev-nexus | OutOfSync | Healthy |
| ms-barramento-dev-cls-dev-nexus | Synced | Healthy |
| ingress-nginx | Synced | Healthy |
| ingress-nginx-external | Synced | Healthy |

### prd-cls-2 (PROD)

ArgoCD está instalado no cluster **prd-cls-2** (compartment PRD).

| Item | Valor |
|------|-------|
| Namespace | `argocd` |
| Serviço | `argocd-server` (LoadBalancer) |
| IP Interno | `10.130.128.46` |
| Porta | 80 (HTTP), 443 (HTTPS) |
| Usuário | `admin` |
| Senha | Ver secret `argocd-initial-admin-secret` no namespace `argocd` |

### Como obter a senha

```bash
kubectl get secret argocd-initial-admin-secret -n argocd -o jsonpath='{.data.password}' | base64 -d
```

---

## Microserviços Deployados (cls-dev-nexus)

### Namespace `nexus-services`

| Serviço | Réplicas | Status | Imagem |
|---------|----------|--------|--------|
| ms-poc | 2/2 | ✅ Running | OCIR |
| ms-person | 2/2 | ✅ Running | OCIR |
| ms-user | 2/2 | ✅ Running | OCIR |
| ms-auth-external | 2/3 | ⚠️ Degraded | OCIR |
| ms-auth-sso | 2/2 | ✅ Running | OCIR |
| ms-belt | 2/2 | ✅ Running | OCIR |
| ms-notify | 2/2 | ✅ Running | OCIR |
| ms-parameters | 2/2 | ✅ Running | OCIR |

### Namespace `integration-hub`

| Serviço | Réplicas | Status |
|---------|----------|--------|
| ms-barramento | 2/2 | ✅ Running |

---

## Load Balancers com Acesso Externo

> Levantamento realizado em 24/02/2026 via OCI CLI + kubectl.

### Resumo por Compartimento

| Compartimento | Total LBs | LBs Públicos |
|---|---|---|
| cmp-dev-insign | 1 | 0 |
| cmp-dev-nexus | 5 | **1** |
| cmp-hml-nexus | 3 | 0 |
| cmp-prod-nexus | 3 | 0 |
| cmp-shared-inv | 1 | 0 |
| DEV | 8 | 0 |
| HML | 4 | 3 (sem acesso / backends vazios) |
| PRD | 7 | 0 |

### LBs Públicos Ativos

| IP Público | Cluster | Compartimento | Criado em |
|---|---|---|---|
| `137.131.236.202` | `cls-dev-nexus` | cmp-dev-nexus | 09/02/2026 |
| `163.176.195.151` | desconhecido (sem acesso) | HML | 09/01/2026 |
| `144.22.206.255` | desconhecido (sem acesso) | HML | 10/01/2026 |
| `163.176.250.178` | desconhecido (sem acesso) | HML | 10/01/2026 |

> Os 3 LBs do compartimento `HML` têm backends vazios e os clusters OKE correspondentes não estão acessíveis com as credenciais atuais (`NotAuthorizedOrNotFound`).

---

## Ingress Controllers (cls-dev-nexus)

| Nome | Namespace | Tipo | IP / Serviço |
|------|-----------|------|---|
| ingress-nginx-controller | ingress-nginx | Interno | `10.110.143.54` |
| ingress-nginx-external-controller | ingress-nginx | **Externo** | `137.131.236.202` |

### Ingresses Ativos — cls-dev-nexus

| Ingress | Namespace | Host | LB | Porta |
|---------|-----------|------|----|-------|
| ms-barramento | integration-hub | `ms-barramento.nexos-dev.interno.invista.com.br` | externo | 80 |
| ms-auth-external-public | nexus-services | `ms-auth-external.dev.invista.com.br` | externo | 80 |
| ms-auth-sso | nexus-services | `ms-auth-sso.dev.invista.com.br` | externo | 80 |
| ms-belt-external | nexus-services | `ms-belt.dev.invista.com.br` | externo | 80 |
| ms-notify-external | nexus-services | `ms-notify.dev.invista.com.br` | externo | 80 |
| ms-parameters | nexus-services | `ms-parameters.dev.invista.com.br` | externo | 80 |
| ms-poc-external | nexus-services | `ms-poc.dev.invista.com.br` | externo | 80 |
| ms-belt | nexus-services | `ms-belt.dev-01.interno.invista.com.br` | externo | 80 |
| ms-notify | nexus-services | `ms-notify.dev-01.interno.invista.com.br` | externo | 80 |
| ms-person | nexus-services | `ms-person.dev-01.interno.invista.com.br` | externo | 80 |
| ms-user | nexus-services | `ms-user.dev-01.interno.invista.com.br` | externo | 80 |
| ms-auth-external | nexus-services | `ms-auth-external.dev-01.interno.invista.com.br` | interno | 80 |
| ms-poc | nexus-services | `ms-poc.dev-01.interno.invista.com.br` | interno | 80 |

---

## DNS (Cloudflare)

| Record | Zone | Tipo | Destino | Proxy |
|--------|------|------|---------|-------|
| ms-poc.dev.invista.com.br | invista.com.br | A | 137.131.236.202 | - |
| ms-person.dev.invista.com.br | invista.com.br | A | 137.131.236.202 | - |
| ms-user.dev.invista.com.br | invista.com.br | A | 137.131.236.202 | - |
| ms-auth-external.dev.invista.com.br | invista.com.br | A | 137.131.236.202 | - |
| ms-auth-sso.dev.invista.com.br | invista.com.br | A | 137.131.236.202 | - |
| ms-belt.dev.invista.com.br | invista.com.br | A | 137.131.236.202 | - |
| ms-notify.dev.invista.com.br | invista.com.br | A | 137.131.236.202 | - |
| ms-parameters.dev.invista.com.br | invista.com.br | A | 137.131.236.202 | - |
| nexus-user-dev.invista.com.br | invista.com.br | CNAME | `cfgqgzerq7izqtryh5h6snqoum.apigateway.sa-saopaulo-1.oci.customer-oci.com` | ✅ Cloudflare Proxy |
| nexus-mfe.invista.com.br | invista.com.br | CNAME | `cfgqgzerq7izqtryh5h6snqoum.apigateway.sa-saopaulo-1.oci.customer-oci.com` | ✅ Cloudflare Proxy |
| nexus-dev.invista.com.br | invista.com.br | CNAME | `bjlibdhd5wqhf7p3ua4pgv3zly.apigateway.sa-saopaulo-1.oci.customer-oci.com` | ✅ Cloudflare Proxy |
| nexus.invista.com.br | invista.com.br | A | 137.131.236.202 | ✅ Cloudflare Proxy |

> **Histórico de migração AWS → OCI:**
> - `nexus-dev.invista.com.br` apontava para CloudFront AWS: `d3dgcrwme2qbn3.cloudfront.net` (migrado 24/02/2026)
> - `nexus-user-dev.invista.com.br` apontava para CloudFront AWS: `d9xobhxmgga9l.cloudfront.net` (migrado 24/02/2026)

**MFE Shell (`nexus-dev.invista.com.br`):**
- Bucket: `mfe-shell-dev` | Compartimento: `cpm-dev-automacao`
- API Gateway: `api-gateway-mfe-shell-dev`
  - OCID: `ocid1.apigateway.oc1.sa-saopaulo-1.amaaaaaasks3ylia75vlr6izb7vwvpjkwxmrdygoc5f3trmpmtpe775elylq`
  - Hostname: `bjlibdhd5wqhf7p3ua4pgv3zly.apigateway.sa-saopaulo-1.oci.customer-oci.com`
- Deployment: `deploy-mfe-shell-dev` (`ocid1.apideployment.oc1.sa-saopaulo-1.amaaaaaasks3yliakj26vsah6we4nohbzrdi67epapwfewrtdah64qu5ujyq`)

**MFE User (`nexus-user-dev.invista.com.br` / `nexus-mfe.invista.com.br`):**
- Bucket: `mfe-user-dev` | Compartimento: `cpm-dev-automacao`
- API Gateway: `api-gateway-mfe-dev`
  - OCID: `ocid1.apigateway.oc1.sa-saopaulo-1.amaaaaaasks3ylias5cady2ik75rqucyfynucs3ewjwc6fo4vtttnsi3dz5a`
  - Hostname: `cfgqgzerq7izqtryh5h6snqoum.apigateway.sa-saopaulo-1.oci.customer-oci.com`
- Deployment: `deploy-mfe-user-dev` (`ocid1.apideployment.oc1.sa-saopaulo-1.amaaaaaasks3yliauxffi3aji27pz3bgwt76324dizaensuxzxechgcwz2ta`)

---

## Certificados SSL

### OCI Certificates Service

| Nome | Compartimento | CN | SANs | Tipo | Válido até | Status |
|------|--------------|-----|------|------|------------|--------|
| `invista_wildcard` | `cmp-shared-inv` | `*.invista.com.br` | `*.invista.com.br`, `invista.com.br` | IMPORTED | 08/01/2027 | ACTIVE |

**OCID:**
```
ocid1.certificate.oc1.sa-saopaulo-1.amaaaaaasks3yliasqn6hqvmobj5cfkw4ukz2k272oiuhh4ktrwrhvfd4egq
```

- Algoritmo: RSA 2048 / SHA256
- Criado por: `marcio.hikosaka@oracle.com` em 08/12/2025

### Load Balancer usando o certificado wildcard

| LB | Compartimento | IP | Visibilidade | Uso |
|----|--------------|-----|--------------|-----|
| `Test_Crivo_Dev` | `cmp-shared-inv` | `10.8.4.127` | Privado | Listener 443 via `certificate-ids` |

**Configuração do listener 443 (`listener_lb_2025-1205-1016`):**
- Protocolo: HTTP (SSL termination no LB)
- TLS: `TLSv1.2`, `TLSv1.3`
- Cipher suite: `oci-default-ssl-cipher-suite-v1`

**Outros certificados carregados no `Test_Crivo_Dev` (Cloudflare Origin):**

| Nome | Issuer | SAN | Válido até |
|------|--------|-----|------------|
| `Certificado` | Cloudflare Origin CA | `*.invista.com.br` | 04/12/2040 |
| `invista_origin` | Cloudflare Origin CA | `*.invista.com.br` | 04/12/2040 |

> O `ingress-nginx-external-controller` (`137.131.236.202`) **não usa nenhum certificado** — serve o fake cert padrão do nginx-ingress. O wildcard `invista_wildcard` ainda não está configurado no cluster `cls-dev-nexus`.

---

## Pipelines Azure DevOps (Branch devops)

### Repositórios com deploy OCI

| Repositório | Cluster Default | Namespace |
|-------------|-----------------|-----------|
| ms-poc | cls-dev-nexus | nexus-services |
| ms-person | cls-dev-nexus | nexus-services |
| ms-user | cls-dev-nexus | nexus-services |

### Templates de Pipeline

| Template | Branch |
|----------|--------|
| azure-pipelines-templates | feature/cd-deploy-oci-oke |
| tf_oci_clusters | main |

---

## Problemas Conhecidos

| Problema | Serviço | Cluster | Status |
|----------|---------|---------|--------|
| CrashLoopBackOff | ms-auth-external-67fd9cf9ff-fktxc | cls-dev-nexus | Pendente investigação |
| ImagePullBackOff | nats-0 (namespace stream) | cls-dev-nexus | Pendente investigação |

## Compartimentos OCI (Completo)

### Estrutura de Compartimentos

| Nome | Descrição | Parent |
|------|-----------|--------|
| cmp-top-invista | Compartimento Root Invista | Tenancy |
| cmp-top-c6 | Compartimento Root C6 | Tenancy |
| cmp-top-cerealista | Compartimento Root Cerealista | Tenancy |
| cmp-top-gestora | Compartimento Root Gestora | Tenancy |
| Lift-root | Lift Services Compartment | Tenancy |
| OKE | Compartment pai para DEV/HML/PRD OKE | Tenancy |
| OCM | Serviço de migração de instancias | Tenancy |

### Compartimentos de Ambiente

| Nome | Descrição | Parent |
|------|-----------|--------|
| cmp-dev-inv | Compartimento Desenvolvimento | cmp-top-invista |
| cmp-hml-inv | Compartimento homologação | cmp-top-invista |
| cmp-prod-inv | Compartimento Prod | cmp-top-invista |
| cmp-shared-inv | Compartimento Shared | cmp-top-invista |
| DEV | Compartment dev | OKE |
| HML | Compartment hml | OKE |
| PRD | Compartment prd | OKE |

### Compartimentos de Projeto

| Nome | Ambiente | Descrição |
|------|----------|-----------|
| cmp-dev-c6 | Dev | Compartimento Desenvolvimento C6 |
| cmp-hml-c6 | HML | Compartimento homologação C6 |
| cmp-prod-c6 | Prod | Compartimento Prod C6 |
| cmp-dev-crivo | Dev | Crivo desenvolvimento |
| cmp-crivo-dev | Dev | Crivo desenvolvimento |
| cmp-crivo-prod | Prod | Crivo Produção |
| cmp-dev-datalake | Dev | Datalake desenvolvimento |
| cmp-prod-datalake | Prod | Datalake produção |
| cmp-dev-gest | Dev | ambiente de desenvolvimento Gestora |
| cmp-prod-gest | Prod | Compartimento Prod Gestora |
| cmp-dev-insign | Dev | Insign desenvolvimento |
| cmp-dev-mull | Dev | Mulling desenvolvimento |
| cmp-prod-mull | Prod | Mulling produção |
| cmp-dev-netfactor | Dev | Netfactor desenvolvimento |
| cmp-prod-netfactor | Prod | Netfactor produção |
| cmp-dev-nexus | Dev | Nexus desenvolvimento (Terraform) |
| cmp-hml-nexus | HML | Nexus homologação (Terraform) |
| cmp-prod-nexus | Prod | Nexus produção (Terraform) |
| cmp-prod-cer | Prod | Compartimento Prod Cerealista |
| cpm-dev-automacao | Dev | Desenvolvimento de automação |
| cmp-prod-automacao | Prod | Produção automação |
| cmp-dev-aI4finance | Dev | AI4Finance desenvolvimento |
| cmp-prod-AI4Finance | Prod | AI4Finance produção |

## Referências

- Templates Pipeline: `C:\dev\repos_mfe\azure-pipelines-templates\`
- Infra Terraform: `C:\dev\tf_oci_clusters\`
- Clusters Config: `C:\dev\repos_mfe\azure-pipelines-templates\config\oke-clusters.json`
