Initial commit
This commit is contained in:
76
crds/cluster-harbor-project-member.yaml
Normal file
76
crds/cluster-harbor-project-member.yaml
Normal file
@@ -0,0 +1,76 @@
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: clusterharborprojectmembers.codemowers.io
|
||||
spec:
|
||||
group: codemowers.io
|
||||
names:
|
||||
plural: clusterharborprojectmembers
|
||||
singular: clusterharborprojectmember
|
||||
kind: ClusterHarborProjectMember
|
||||
shortNames:
|
||||
- clusterharborprojectmember
|
||||
scope: Cluster
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
additionalPrinterColumns:
|
||||
- name: State
|
||||
jsonPath: .status.memberCreation.state
|
||||
type: string
|
||||
- name: Errors
|
||||
jsonPath: .status.kopf.progress.memberCreation.message
|
||||
type: string
|
||||
- name: Membership ID
|
||||
jsonPath: .status.memberCreation.id
|
||||
type: integer
|
||||
- name: Project
|
||||
jsonPath: .spec.project
|
||||
type: string
|
||||
- name: Username
|
||||
jsonPath: .spec.username
|
||||
type: string
|
||||
- name: Role
|
||||
jsonPath: .spec.role
|
||||
type: string
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
status:
|
||||
type: object
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
properties:
|
||||
memberCreation:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
project_id:
|
||||
type: integer
|
||||
state:
|
||||
type: string
|
||||
spec:
|
||||
type: object
|
||||
required:
|
||||
- project
|
||||
- username
|
||||
- role
|
||||
properties:
|
||||
project:
|
||||
type: string
|
||||
username:
|
||||
type: string
|
||||
role:
|
||||
type: string
|
||||
enum:
|
||||
- PROJECT_ADMIN
|
||||
- DEVELOPER
|
||||
- GUEST
|
||||
- MAINTAINER
|
71
crds/cluster-harbor-project.yaml
Normal file
71
crds/cluster-harbor-project.yaml
Normal file
@@ -0,0 +1,71 @@
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: clusterharborprojects.codemowers.io
|
||||
spec:
|
||||
group: codemowers.io
|
||||
names:
|
||||
plural: clusterharborprojects
|
||||
singular: clusterharborproject
|
||||
kind: ClusterHarborProject
|
||||
shortNames:
|
||||
- clusterharborproject
|
||||
scope: Cluster
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
additionalPrinterColumns:
|
||||
- name: Status
|
||||
jsonPath: .status.projectCreation.state
|
||||
type: string
|
||||
- name: Errors
|
||||
jsonPath: .status.kopf.progress.projectCreation.message
|
||||
type: string
|
||||
- name: Project ID
|
||||
jsonPath: .status.projectCreation.id
|
||||
type: integer
|
||||
- name: Quota
|
||||
jsonPath: .spec.quota
|
||||
type: integer
|
||||
- name: Public
|
||||
jsonPath: .spec.public
|
||||
type: boolean
|
||||
- name: Cache
|
||||
jsonPath: .spec.cache
|
||||
type: boolean
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
type: object
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
properties:
|
||||
projectCreation:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
state:
|
||||
type: string
|
||||
spec:
|
||||
type: object
|
||||
properties:
|
||||
public:
|
||||
type: boolean
|
||||
default: false
|
||||
description: Whether this project is publicly readable
|
||||
cache:
|
||||
type: boolean
|
||||
default: false
|
||||
description: Whether this project enables caching from
|
||||
upstream Docker registry
|
||||
quota:
|
||||
type: integer
|
||||
default: 2147483648
|
||||
required:
|
||||
- spec
|
72
crds/cluster-harbor-registry.yaml
Normal file
72
crds/cluster-harbor-registry.yaml
Normal file
@@ -0,0 +1,72 @@
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: clusterharborregistries.codemowers.io
|
||||
spec:
|
||||
group: codemowers.io
|
||||
names:
|
||||
plural: clusterharborregistries
|
||||
singular: clusterharborregistry
|
||||
kind: ClusterHarborRegistry
|
||||
shortNames:
|
||||
- clusterharborregistry
|
||||
scope: Cluster
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
additionalPrinterColumns:
|
||||
- name: Status
|
||||
jsonPath: .status.registryCreation.state
|
||||
type: string
|
||||
- name: Errors
|
||||
jsonPath: .status.kopf.progress.registryCreation.message
|
||||
type: string
|
||||
- name: Registry ID
|
||||
jsonPath: .status.registryCreation.id
|
||||
type: string
|
||||
- name: Type
|
||||
jsonPath: .spec.type
|
||||
type: string
|
||||
- name: Endpoint
|
||||
jsonPath: .spec.endpoint
|
||||
type: string
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
status:
|
||||
type: object
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
properties:
|
||||
registryCreation:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
state:
|
||||
type: string
|
||||
spec:
|
||||
type: object
|
||||
required:
|
||||
- type
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum:
|
||||
- azure-acr
|
||||
- aws-ecr
|
||||
- docker-hub
|
||||
- docker-registry
|
||||
- google-gcr
|
||||
- harbor
|
||||
- quay
|
||||
description: Registry provider
|
||||
endpoint:
|
||||
type: string
|
||||
description: Registry endpoint
|
77
crds/harbor-credential.yaml
Normal file
77
crds/harbor-credential.yaml
Normal file
@@ -0,0 +1,77 @@
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: harborcredentials.codemowers.io
|
||||
spec:
|
||||
group: codemowers.io
|
||||
names:
|
||||
plural: harborcredentials
|
||||
singular: harborcredential
|
||||
kind: HarborCredential
|
||||
shortNames:
|
||||
- harborcredential
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
additionalPrinterColumns:
|
||||
- name: State
|
||||
jsonPath: .status.credentialCreation.state
|
||||
type: string
|
||||
- name: Errors
|
||||
jsonPath: .status.kopf.progress.credentialCreation.message
|
||||
type: string
|
||||
- name: Robot ID
|
||||
jsonPath: .status.credentialCreation.id
|
||||
type: integer
|
||||
- name: Project
|
||||
jsonPath: .spec.project
|
||||
type: string
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
status:
|
||||
type: object
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
properties:
|
||||
credentialCreation:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
project:
|
||||
type: string
|
||||
state:
|
||||
type: string
|
||||
spec:
|
||||
type: object
|
||||
required:
|
||||
- key
|
||||
- project
|
||||
- permissions
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
key:
|
||||
type: string
|
||||
project:
|
||||
type: string
|
||||
permissions:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
required:
|
||||
- resource
|
||||
- action
|
||||
properties:
|
||||
resource:
|
||||
type: string
|
||||
action:
|
||||
type: string
|
Reference in New Issue
Block a user