add some control api pocs

This commit is contained in:
Tobias Brunner 2021-11-09 09:33:55 +01:00
parent 4c2010098b
commit 339439529f
4 changed files with 120 additions and 0 deletions

View File

@ -0,0 +1,26 @@
openapi: "3.0.2"
info:
title: CRD
version: 1.0.0
components:
schemas:
CRD:
type: object
properties:
spec:
type: object
properties:
displayName:
type: string
username:
type: string
email:
type: string
defaultOrganizationRef:
type: string
paths:
/:
get:
responses:
"200":
description: OK

View File

@ -0,0 +1,47 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: d9050409-b5a2-4058-815e-b5dbead893ed-owner
rules:
- apiGroups: ["appuio.io"]
resources: ["users"]
resourceNames: ["d9050409-b5a2-4058-815e-b5dbead893ed"]
verbs: ["get", "update", "patch", "delete"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: d9050409-b5a2-4058-815e-b5dbead893ed-owner
subjects:
- kind: User
name: appuio#d9050409-b5a2-4058-815e-b5dbead893ed
apiGroup: rbac.authorization.k8s.io
roleRef:
kind: ClusterRole
name: d9050409-b5a2-4058-815e-b5dbead893ed-owner
apiGroup: rbac.authorization.k8s.io
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: acme-corp-members-viewer
rules:
- apiGroups: ["appuio.io"]
resources: ["users"]
resourceNames:
- d9050409-b5a2-4058-815e-b5dbead893ed
- bec0d928-2ae2-4cec-94a0-5f72f12b8b39
verbs: ["get", "list"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: acme-corp-members
subjects:
- kind: Group
name: developer
apiGroup: rbac.authorization.k8s.io
roleRef:
kind: ClusterRole
name: acme-corp-members-viewer
apiGroup: rbac.authorization.k8s.io

28
control-api/user-xrd.yaml Normal file
View File

@ -0,0 +1,28 @@
apiVersion: apiextensions.crossplane.io/v1
kind: CompositeResourceDefinition
metadata:
name: users.appuio.io
spec:
group: appuio.io
names:
kind: User
plural: users
versions:
- name: v1
served: true
referenceable: true
schema:
openAPIV3Schema:
type: object
properties:
spec:
type: object
properties:
displayName:
type: string
username:
type: string
email:
type: string
defaultOrganizationRef:
type: string

19
control-api/users.yaml Normal file
View File

@ -0,0 +1,19 @@
apiVersion: appuio.io/v1
kind: User
metadata:
name: bec0d928-2ae2-4cec-94a0-5f72f12b8b39
spec:
displayName: Kate Demo
username: kate.demo
email: kate@demo.com
defaultOrganizationRef: acme-corp
---
apiVersion: appuio.io/v1
kind: User
metadata:
name: d9050409-b5a2-4058-815e-b5dbead893ed
spec:
displayName: Fredi Hinz
username: fredi.hinz
email: fredi@demo.com
defaultOrganizationRef: acme-corp