chore: remove CRD, RBAC, and CR manifests (adapters now in ConfigMap)
This commit is contained in:
@@ -1,161 +0,0 @@
|
|||||||
apiVersion: apiextensions.k8s.io/v1
|
|
||||||
kind: CustomResourceDefinition
|
|
||||||
metadata:
|
|
||||||
name: serviceadapters.gateway.riotpiao.com
|
|
||||||
spec:
|
|
||||||
group: gateway.riotpiao.com
|
|
||||||
names:
|
|
||||||
kind: ServiceAdapter
|
|
||||||
plural: serviceadapters
|
|
||||||
singular: serviceadapter
|
|
||||||
scope: Namespaced
|
|
||||||
versions:
|
|
||||||
- name: v1
|
|
||||||
served: true
|
|
||||||
storage: true
|
|
||||||
subresources:
|
|
||||||
status: {}
|
|
||||||
schema:
|
|
||||||
openAPIV3Schema:
|
|
||||||
type: object
|
|
||||||
description: ServiceAdapter describes a service exposed through the gateway.
|
|
||||||
properties:
|
|
||||||
apiVersion:
|
|
||||||
type: string
|
|
||||||
kind:
|
|
||||||
type: string
|
|
||||||
metadata:
|
|
||||||
type: object
|
|
||||||
spec:
|
|
||||||
type: object
|
|
||||||
description: ServiceAdapterSpec defines the desired state of ServiceAdapter.
|
|
||||||
required:
|
|
||||||
- serviceName
|
|
||||||
- upstream
|
|
||||||
- auth
|
|
||||||
- resources
|
|
||||||
properties:
|
|
||||||
serviceName:
|
|
||||||
type: string
|
|
||||||
description: ServiceName is the unique identifier for this service.
|
|
||||||
minLength: 1
|
|
||||||
maxLength: 63
|
|
||||||
upstream:
|
|
||||||
type: object
|
|
||||||
description: Upstream defines where to forward requests.
|
|
||||||
required:
|
|
||||||
- url
|
|
||||||
- timeoutSeconds
|
|
||||||
properties:
|
|
||||||
url:
|
|
||||||
type: string
|
|
||||||
description: URL is the upstream service endpoint.
|
|
||||||
minLength: 1
|
|
||||||
timeoutSeconds:
|
|
||||||
type: integer
|
|
||||||
description: TimeoutSeconds is the request timeout in seconds.
|
|
||||||
minimum: 1
|
|
||||||
maximum: 3600
|
|
||||||
auth:
|
|
||||||
type: object
|
|
||||||
description: Auth defines default authentication for this adapter.
|
|
||||||
required:
|
|
||||||
- required
|
|
||||||
properties:
|
|
||||||
required:
|
|
||||||
type: boolean
|
|
||||||
description: Required indicates if authentication is needed.
|
|
||||||
capability:
|
|
||||||
type: string
|
|
||||||
description: Capability is the required capability name.
|
|
||||||
retryable:
|
|
||||||
type: boolean
|
|
||||||
description: Retryable indicates if requests can be retried on 5xx.
|
|
||||||
default: false
|
|
||||||
resources:
|
|
||||||
type: array
|
|
||||||
description: Resources are the endpoints exposed by this adapter.
|
|
||||||
minItems: 1
|
|
||||||
items:
|
|
||||||
type: object
|
|
||||||
description: ServiceAdapterResource defines a resource.
|
|
||||||
required:
|
|
||||||
- name
|
|
||||||
- methods
|
|
||||||
properties:
|
|
||||||
name:
|
|
||||||
type: string
|
|
||||||
description: Name is the resource identifier.
|
|
||||||
minLength: 1
|
|
||||||
methods:
|
|
||||||
type: array
|
|
||||||
description: Methods are the HTTP methods available.
|
|
||||||
minItems: 1
|
|
||||||
items:
|
|
||||||
type: object
|
|
||||||
description: ServiceAdapterMethod defines a single method.
|
|
||||||
required:
|
|
||||||
- verb
|
|
||||||
- upstreamPath
|
|
||||||
properties:
|
|
||||||
verb:
|
|
||||||
type: string
|
|
||||||
description: Verb is the HTTP method.
|
|
||||||
enum:
|
|
||||||
- GET
|
|
||||||
- POST
|
|
||||||
- PUT
|
|
||||||
- DELETE
|
|
||||||
- PATCH
|
|
||||||
- HEAD
|
|
||||||
- OPTIONS
|
|
||||||
upstreamPath:
|
|
||||||
type: string
|
|
||||||
description: UpstreamPath is the path on upstream.
|
|
||||||
minLength: 1
|
|
||||||
requestSchema:
|
|
||||||
type: string
|
|
||||||
description: RequestSchema validation DSL.
|
|
||||||
responseSchema:
|
|
||||||
type: string
|
|
||||||
description: ResponseSchema validation DSL.
|
|
||||||
auth:
|
|
||||||
type: object
|
|
||||||
description: Auth overrides resource-level auth.
|
|
||||||
properties:
|
|
||||||
required:
|
|
||||||
type: boolean
|
|
||||||
capability:
|
|
||||||
type: string
|
|
||||||
auth:
|
|
||||||
type: object
|
|
||||||
description: Auth applies to all methods unless overridden.
|
|
||||||
properties:
|
|
||||||
required:
|
|
||||||
type: boolean
|
|
||||||
capability:
|
|
||||||
type: string
|
|
||||||
status:
|
|
||||||
type: object
|
|
||||||
description: ServiceAdapterStatus defines observed state.
|
|
||||||
properties:
|
|
||||||
ready:
|
|
||||||
type: boolean
|
|
||||||
description: Ready indicates if adapter is loaded.
|
|
||||||
error:
|
|
||||||
type: string
|
|
||||||
description: Error message if adapter failed to load.
|
|
||||||
lastSyncTime:
|
|
||||||
type: string
|
|
||||||
format: date-time
|
|
||||||
description: LastSyncTime is when adapter was last synced.
|
|
||||||
additionalPrinterColumns:
|
|
||||||
- name: Service
|
|
||||||
type: string
|
|
||||||
jsonPath: .spec.serviceName
|
|
||||||
- name: Ready
|
|
||||||
type: boolean
|
|
||||||
jsonPath: .status.ready
|
|
||||||
- name: Age
|
|
||||||
type: date
|
|
||||||
jsonPath: .metadata.creationTimestamp
|
|
||||||
@@ -4,8 +4,6 @@ kind: Kustomization
|
|||||||
namespace: api
|
namespace: api
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
- crd-serviceadapter.yaml
|
|
||||||
- rbac.yaml
|
|
||||||
- service.yaml
|
- service.yaml
|
||||||
- deployment.yaml
|
- deployment.yaml
|
||||||
- network-policy.yaml
|
- network-policy.yaml
|
||||||
|
|||||||
@@ -1,45 +0,0 @@
|
|||||||
apiVersion: v1
|
|
||||||
kind: ServiceAccount
|
|
||||||
metadata:
|
|
||||||
name: api-gateway
|
|
||||||
namespace: api
|
|
||||||
labels:
|
|
||||||
app: api-gateway
|
|
||||||
---
|
|
||||||
# Role for ServiceAdapter CRD access (read-only, G2 supersession)
|
|
||||||
# Scoped to exactly: get, list, watch on serviceadapters in gateway.riotpiao.com/v1
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
kind: Role
|
|
||||||
metadata:
|
|
||||||
name: api-gateway-serviceadapter-reader
|
|
||||||
namespace: api
|
|
||||||
labels:
|
|
||||||
app: api-gateway
|
|
||||||
rules:
|
|
||||||
- apiGroups:
|
|
||||||
- gateway.riotpiao.com
|
|
||||||
resources:
|
|
||||||
- serviceadapters
|
|
||||||
verbs:
|
|
||||||
- get
|
|
||||||
- list
|
|
||||||
- watch
|
|
||||||
---
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
kind: RoleBinding
|
|
||||||
metadata:
|
|
||||||
name: api-gateway-serviceadapter-reader
|
|
||||||
namespace: api
|
|
||||||
labels:
|
|
||||||
app: api-gateway
|
|
||||||
roleRef:
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
kind: Role
|
|
||||||
name: api-gateway-serviceadapter-reader
|
|
||||||
subjects:
|
|
||||||
- kind: ServiceAccount
|
|
||||||
name: api-gateway
|
|
||||||
namespace: api
|
|
||||||
---
|
|
||||||
# No ClusterRole needed - the gateway has no k8s API access
|
|
||||||
# G2: The gateway holds no Kubernetes credentials (except read-only ServiceAdapter access above)
|
|
||||||
@@ -1,54 +0,0 @@
|
|||||||
apiVersion: gateway.riotpiao.com/v1
|
|
||||||
kind: ServiceAdapter
|
|
||||||
metadata:
|
|
||||||
name: memory-extended
|
|
||||||
namespace: api
|
|
||||||
spec:
|
|
||||||
serviceName: memory-extended
|
|
||||||
upstream:
|
|
||||||
url: http://poimen-memory.poimen.svc.cluster.local:8080
|
|
||||||
timeoutSeconds: 30
|
|
||||||
auth:
|
|
||||||
required: true
|
|
||||||
capability: memory:read
|
|
||||||
retryable: true
|
|
||||||
resources:
|
|
||||||
# Extended: notes resource (M3.5.6+)
|
|
||||||
- name: notes
|
|
||||||
methods:
|
|
||||||
- verb: GET
|
|
||||||
upstreamPath: /memory/projects/{id}/notes
|
|
||||||
responseSchema: "items: object"
|
|
||||||
auth:
|
|
||||||
required: true
|
|
||||||
capability: memory:read
|
|
||||||
|
|
||||||
# Extended: context resource (M3.7.7+, M3.7.8+)
|
|
||||||
- name: context
|
|
||||||
methods:
|
|
||||||
- verb: POST
|
|
||||||
upstreamPath: /memory/context
|
|
||||||
requestSchema: "tool: string"
|
|
||||||
responseSchema: "bundle: object"
|
|
||||||
auth:
|
|
||||||
required: true
|
|
||||||
capability: memory:read
|
|
||||||
|
|
||||||
# Extended: git-aware lookups (M3.5.9)
|
|
||||||
- name: nodes
|
|
||||||
methods:
|
|
||||||
- verb: POST
|
|
||||||
upstreamPath: /memory/nodes/by-git
|
|
||||||
requestSchema: "repo: string, ref: string"
|
|
||||||
responseSchema: "nodes: array"
|
|
||||||
- verb: POST
|
|
||||||
upstreamPath: /memory/nodes/by-commit
|
|
||||||
requestSchema: "commit: string"
|
|
||||||
responseSchema: "nodes: array"
|
|
||||||
- verb: POST
|
|
||||||
upstreamPath: /memory/nodes/by-author
|
|
||||||
requestSchema: "author: string"
|
|
||||||
responseSchema: "nodes: array"
|
|
||||||
auth:
|
|
||||||
required: true
|
|
||||||
capability: memory:read
|
|
||||||
Reference in New Issue
Block a user