apiVersion: v1 kind: ServiceAccount metadata: name: bannerctl --- apiVersion: v1 kind: ConfigMap metadata: name: bannerctl data: BSL_ENDPOINT: ${bsl_endpoint} BSL_ROOT_ORG: ${bsl_root_org} BSP_ORGANIZATION_PREFIX: ${bsl_edge_env_prefix} CHARIOT_ENDPOINT: https://chariot.${domain} DATASYNC_DNS_NAME: ${datasync_dns_name} DATASYNC_DNS_ZONE: ${datasync_dns_zone} DOMAIN: ${domain} EDGE_API: https://${domain}/api/v2 EDGE_SEC_MAX_LEASE_PERIOD: ${edge_sec_max_lease_period} EDGE_SEC_MAX_VALIDITY_PERIOD: ${edge_sec_max_validity_period} EDGE_SEC_OPT_IN_COMPLIANCE: "${edge_sec_opt_in_compliance}" GCP_FOREMAN_PROJECT_ID: ${gcp_project_id} GCP_FOREMAN_PROJECT_NUMBER: "${gcp_foreman_project_number}" GCP_PLAT_INFRA_PROJECT_ID: ${platform_infra_gcp_project_id} GCP_REGION: ${gcp_region} GCP_TENANTS_FOLDER_ID: "${tenants_gcp_folder_id}" GCP_ZONE: ${gcp_zone} REGISTRY_PROJECT_ID: ${platform_infra_gcp_project_id} REGISTRY_RESOURCE_ID: "preprod" SQL_CONNECTION_NAME: ${gcp_project_id}:${gcp_region}:${edge_sql_db_name}-migrated SQL_DB_NAME: ${edge_sql_db_name} SQL_USER: bannerctl-${cluster_hash}@${gcp_project_id}.iam --- apiVersion: apps/v1 kind: Deployment metadata: name: bannerctl labels: platform.edge.ncr.com/component: bannerctl spec: replicas: 1 selector: matchLabels: platform.edge.ncr.com/component: bannerctl template: metadata: labels: platform.edge.ncr.com/component: bannerctl spec: serviceAccountName: bannerctl containers: - name: bannerctl image: bzl://cmd/edge/bannerctl:container_push ports: - name: metrics containerPort: 8080 envFrom: - configMapRef: name: bannerctl - secretRef: name: ldkey - secretRef: name: edge-totp-secret-key - secretRef: name: edge-bsl resources: limits: cpu: "100m" imagePullPolicy: IfNotPresent imagePullSecrets: - name: edge-docker-pull-secret --- apiVersion: v1 kind: Service metadata: name: bannerctl labels: platform.edge.ncr.com/component: bannerctl spec: selector: platform.edge.ncr.com/component: bannerctl ports: - name: metrics port: 8080 --- apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: name: bannerctl labels: platform.edge.ncr.com/component: bannerctl annotations: monitoring.edge.ncr.com/allowed-metrics: | edge_bannerctl_reconcile_condition_status edge_bannerctl_reconcile_duration_seconds_sum edge_bannerctl_reconcile_duration_seconds_count edge_bannerctl_reconcile_duration_seconds_bucket edge_bannerctl_db_status_writes_total edge_bannerctl_db_errors_total spec: selector: matchLabels: platform.edge.ncr.com/component: bannerctl endpoints: - port: metrics