Files
zooqueenandHanzo Dev bcfbb991e2 Hosted compute calls EC2 only through egress, which signs as the account hanzo-compute; this process holds nothing that can sign an AWS request.
The IAM client_credentials to STS chain and its computeRoleArn and computeIam keys are gone. The EC2 client is built from explicit options with anonymous credentials over the egress carrier, and with no egressAddress hosted compute refuses by name. A customer's own AWS account is carried the same way. Region, subnet, security group and images stay in app.conf, the config files carry egressAddress and egressAudience, and the unread commerceToken is removed. spend moves to the egress aws commit.

Co-authored-by: Hanzo Dev <[email protected]>
2026-09-23 17:56:56 -07:00

75 lines
2.1 KiB
YAML

apiVersion: v1
kind: Secret
metadata:
name: visor-config
namespace: hanzo
type: Opaque
stringData:
app.conf: |
appname = hanzo-visor
httpport = 19000
runmode = prod
SessionOn = true
copyrequestbody = true
driverName = postgres
dataSourceName = ${DB_DSN}
dbName = hanzo_visor
tableNamePrefix =
isDemoMode = false
logPostOnly = true
guacamoleEndpoint = 127.0.0.1:4822
iamEndpoint = http://iam.hanzo.svc.cluster.local:8000
clientId = ${IAM_CLIENT_ID}
clientSecret = ${IAM_CLIENT_SECRET}
iamOrganization = "hanzo"
iamApplication = "app-hanzo-visor"
redirectPath = /callback
isLocalIpDb = false
publicDomain = ""
adminDomain = ""
enableExtraPages = false
defaultLanguage = "en"
staticBaseUrl = "https://cdn.hanzo.ai"
htmlTitle = "Hanzo Visor"
faviconUrl = "https://cdn.hanzo.ai/static/favicon.png"
logoUrl = "https://cdn.hanzo.ai/img/hanzo-visor-logo.png"
showGithubCorner = false
defaultColorPrimary = "#fd4444"
logConfig = {"adapter":"console"}
computeRegion = us-east-1
computeSubnet = subnet-0984e347d9bb3e01b
computeSecurityGroup = sg-00478a75c50869398
computeImage = ami-0045d7fc2ad003464
computeGpuImage = ami-0c20dc14952c0c073
egressAddress = egress.hanzo.svc:9653
egressAudience = hanzo-egress
---
# Credentials should be provisioned via Hanzo KMS or external-secrets operator.
# Example ExternalSecret (if using external-secrets):
#
# apiVersion: external-secrets.io/v1beta1
# kind: ExternalSecret
# metadata:
# name: visor-credentials
# namespace: hanzo
# spec:
# refreshInterval: 1h
# secretStoreRef:
# name: hanzo-kms
# kind: ClusterSecretStore
# target:
# name: visor-env
# data:
# - secretKey: DB_DSN
# remoteRef:
# key: visor/db-dsn
# - secretKey: IAM_CLIENT_ID
# remoteRef:
# key: visor/iam-client-id
# - secretKey: IAM_CLIENT_SECRET
# remoteRef:
# key: visor/iam-client-secret
# - secretKey: COMMERCE_URL
# remoteRef:
# key: visor/commerce-url