Skip to content

Commit 6c5ae0a

Browse files
committed
old schema files for v1.0
1 parent 4a71f25 commit 6c5ae0a

File tree

11 files changed

+372
-9
lines changed

11 files changed

+372
-9
lines changed

site/v1.0/design.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,14 @@ The operator is designed to avoid imposing any arbitrary restriction on how WebL
2525
The operator learns of WebLogic domains through instances of a domain Kubernetes resource. When the operator is installed, it creates a Kubernetes [Custom Resource Definition](https://kubernetes.io/docs/concepts/api-extension/custom-resources/). This custom resource definition defines the domain resource type. After this type is defined, you can manage domain resources using `kubectl` just like any other resource type. For instance, `kubectl get domain` or `kubectl edit domain domain1`.
2626

2727
Schema for domain resources:
28-
* [Domain](/model/src/main/resources/schema/domain.json)
29-
* [DomainSpec](/model/src/main/resources/schema/spec.json)
30-
* [ServerStartup](/model/src/main/resources/schema/serverstartup.json)
31-
* [ClusterStartup](/model/src/main/resources/schema/clusterstartup.json)
32-
* [DomainStatus](/model/src/main/resources/schema/status.json)
33-
* [DomainCondition](/model/src/main/resources/schema/condition.json)
34-
* [ServerStatus](/model/src/main/resources/schema/serverstatus.json)
35-
* [ServerHealth](/model/src/main/resources/schema/serverhealth.json)
36-
* [SubsystemHealth](/model/src/main/resources/schema/subsystemhealth.json)
28+
* [Domain](model/src/main/resources/schema/domain.json)
29+
* [DomainSpec](model/src/main/resources/schema/spec.json)
30+
* [ServerStartup](model/src/main/resources/schema/serverstartup.json)
31+
* [ClusterStartup](model/src/main/resources/schema/clusterstartup.json)
32+
* [DomainStatus](model/src/main/resources/schema/status.json)
33+
* [DomainCondition](model/src/main/resources/schema/condition.json)
34+
* [ServerStatus](model/src/main/resources/schema/serverstatus.json)
35+
* [ServerHealth](model/src/main/resources/schema/serverhealth.json)
36+
* [SubsystemHealth](model/src/main/resources/schema/subsystemhealth.json)
3737

3838
The schema for the domain resource is designed to be as sparse as possible. It includes the connection details for the Administration Server, but all of the other content is operational details about which servers should be started, environment variables, and details about what should be exposed outside the Kubernetes cluster. This way, the WebLogic domain's configuration remains the normative configuration.
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
{
2+
"type": "object",
3+
"javaType": "oracle.kubernetes.weblogic.domain.v1.ClusterStartup",
4+
"description": "ClusterStarup describes the desired startup state and passed environment variables for a specific cluster.",
5+
"required": [
6+
"clusterName"
7+
],
8+
"properties": {
9+
"desiredState": {
10+
"description": "Desired startup state for any managed server started in this cluster. Legal values are RUNNING or ADMIN.",
11+
"type": "string"
12+
},
13+
"clusterName": {
14+
"description": "Name of specific cluster to start. Managed servers in the cluster will be started beginning with replicas instances.",
15+
"type": "string"
16+
},
17+
"replicas": {
18+
"description": "Replicas is the desired number of managed servers running for this cluster.",
19+
"type": "integer",
20+
"format": "int32"
21+
},
22+
"env": {
23+
"description": "Environment variables to pass while starting managed servers in this cluster.",
24+
"type": "array",
25+
"items": {
26+
"javaType": "io.kubernetes.client.models.V1EnvVar",
27+
"type": "object"
28+
}
29+
}
30+
}
31+
}
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
{
2+
"type": "object",
3+
"javaType": "oracle.kubernetes.weblogic.domain.v1.DomainCondition",
4+
"description": "DomainCondition contains details for the current condition of this domain.",
5+
"required": [
6+
"type",
7+
"status"
8+
],
9+
"properties": {
10+
"lastProbeTime": {
11+
"description": "Last time we probed the condition.",
12+
"type": "date-time",
13+
"javaType": "org.joda.time.DateTime"
14+
},
15+
"lastTransitionTime": {
16+
"description": "Last time the condition transitioned from one status to another.",
17+
"type": "date-time",
18+
"javaType": "org.joda.time.DateTime"
19+
},
20+
"message": {
21+
"description": "Human-readable message indicating details about last transition.",
22+
"type": "string"
23+
},
24+
"reason": {
25+
"description": "Unique, one-word, CamelCase reason for the condition's last transition.",
26+
"type": "string"
27+
},
28+
"status": {
29+
"description": "Status is the status of the condition. Can be True, False, Unknown.",
30+
"type": "string"
31+
},
32+
"type": {
33+
"description": "Type is the type of the condition. Currently, valid types are Progressing, Available, and Failure.",
34+
"type": "string"
35+
}
36+
}
37+
}
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
{
2+
"info": {
3+
"title": "WebLogicDomain",
4+
"version": "v1"
5+
},
6+
"type": "object",
7+
"javaType": "oracle.kubernetes.weblogic.domain.v1.Domain",
8+
"description": "Domain represents a WebLogic domain and how it will be realized in the Kubernetes cluster.",
9+
"properties": {
10+
"apiVersion": {
11+
"description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources",
12+
"type": "string"
13+
},
14+
"kind": {
15+
"description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds",
16+
"type": "string"
17+
},
18+
"metadata": {
19+
"description": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
20+
"javaType": "io.kubernetes.client.models.V1ObjectMeta",
21+
"type": "object"
22+
},
23+
"spec": {
24+
"description": "Specification of the desired behavior of the domain. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status",
25+
"$ref": "spec.json"
26+
},
27+
"status": {
28+
"description": "Most recently observed status of the domain. This data may not be up to date. Populated by the operator. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status",
29+
"$ref": "status.json"
30+
}
31+
},
32+
"x-kubernetes-group-version-kind": [
33+
{
34+
"group": "weblogic.oracle",
35+
"kind": "Domain",
36+
"version": "v1"
37+
}
38+
]
39+
}
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
{
2+
"type": "object",
3+
"javaType": "oracle.kubernetes.weblogic.domain.v1.DomainList",
4+
"description": "DomainList is a list of Domains.",
5+
"required": [
6+
"items"
7+
],
8+
"properties": {
9+
"apiVersion": {
10+
"description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources",
11+
"type": "string"
12+
},
13+
"items": {
14+
"description": "List of domains. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md",
15+
"type": "array",
16+
"items": {
17+
"$ref": "domain.json"
18+
}
19+
},
20+
"kind": {
21+
"description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds",
22+
"type": "string"
23+
},
24+
"metadata": {
25+
"description": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds",
26+
"javaType": "io.kubernetes.client.models.V1ListMeta",
27+
"type": "object"
28+
}
29+
},
30+
"x-kubernetes-group-version-kind": [
31+
{
32+
"group": "weblogic.oracle",
33+
"kind": "DomainList",
34+
"version": "v1"
35+
}
36+
]
37+
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
{
2+
"type": "object",
3+
"javaType": "oracle.kubernetes.weblogic.domain.v1.ServerHealth",
4+
"description": "ServerHealth describes the current status and health of a specific WebLogic server.",
5+
"properties": {
6+
"activationTime": {
7+
"description": "RFC 3339 date and time at which the server started.",
8+
"type": "date-time",
9+
"javaType": "org.joda.time.DateTime"
10+
},
11+
"overallHealth": {
12+
"description": "Server health of this WebLogic server.",
13+
"type": "string"
14+
},
15+
"subsystems": {
16+
"description": "Status of unhealthy subsystems, if any.",
17+
"type": "array",
18+
"items": {
19+
"$ref": "subsystemhealth.json"
20+
}
21+
}
22+
}
23+
}
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
{
2+
"type": "object",
3+
"javaType": "oracle.kubernetes.weblogic.domain.v1.ServerStartup",
4+
"description": "ServerStarup describes the desired startup state and passed environment variables for a specific managed server.",
5+
"required": [
6+
"serverName"
7+
],
8+
"properties": {
9+
"desiredState": {
10+
"description": "Desired startup state. Legal values are RUNNING or ADMIN.",
11+
"type": "string"
12+
},
13+
"serverName": {
14+
"description": "Managed server name of instance to start.",
15+
"type": "string"
16+
},
17+
"nodePort": {
18+
"description": "Managed server NodePort port. The port on each node on which this managed server will be exposed. If specified, this value must be an unused port. By default, the server will not be exposed outside the Kubernetes cluster.",
19+
"type": "integer"
20+
},
21+
"env": {
22+
"description": "Environment variables to pass while starting this managed server.",
23+
"type": "array",
24+
"items": {
25+
"javaType": "io.kubernetes.client.models.V1EnvVar",
26+
"type": "object"
27+
}
28+
}
29+
}
30+
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
{
2+
"type": "object",
3+
"javaType": "oracle.kubernetes.weblogic.domain.v1.ServerStatus",
4+
"description": "ServerStatus describes the current status of a specific WebLogic server.",
5+
"required": [
6+
"serverName",
7+
"state"
8+
],
9+
"properties": {
10+
"serverName": {
11+
"description": "WebLogic server name.",
12+
"type": "string"
13+
},
14+
"state": {
15+
"description": "Current state of this WebLogic server.",
16+
"type": "string"
17+
},
18+
"clusterName": {
19+
"description": "WebLogic cluster name, if the server is part of a cluster",
20+
"type": "string"
21+
},
22+
"nodeName": {
23+
"description": "Name of node that is hosting the Pod containing this WebLogic server.",
24+
"type": "string"
25+
},
26+
"health": {
27+
"description": "State and health of the server.",
28+
"$ref": "serverhealth.json"
29+
}
30+
}
31+
}
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
{
2+
"type": "object",
3+
"javaType": "oracle.kubernetes.weblogic.domain.v1.DomainSpec",
4+
"description": "DomainSpec is a description of a domain.",
5+
"required": [
6+
"domainUID",
7+
"domainName",
8+
"adminSecret",
9+
"asName",
10+
"asPort"
11+
],
12+
"properties": {
13+
"domainUID": {
14+
"description": "Domain unique identifier. Must be unique across the Kubernetes cluster.",
15+
"type": "string"
16+
},
17+
"domainName": {
18+
"description": "Domain name",
19+
"type": "string"
20+
},
21+
"image": {
22+
"description": "WebLogic Docker image. Defaults to store/oracle/weblogic:12.2.1.3",
23+
"type": "string"
24+
},
25+
"imagePullPolicy": {
26+
"description": "Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images",
27+
"type": "string"
28+
},
29+
"adminSecret": {
30+
"description": "Reference to secret containing domain administrator username and password. Secret must contain keys names 'username' and 'password'",
31+
"javaType": "io.kubernetes.client.models.V1SecretReference",
32+
"type": "object"
33+
},
34+
"asName": {
35+
"description": "Admin server name. Note: Possibly temporary as we could find this value through domain home inspection.",
36+
"type": "string"
37+
},
38+
"asPort": {
39+
"description": "Administration server port. Note: Possibly temporary as we could find this value through domain home inspection.",
40+
"type": "integer"
41+
},
42+
"exportT3Channels": {
43+
"description": "List of specific T3 channels to export. Named T3 Channels will be exposed using NodePort Services. The internal and external ports must match; therefore, it is required that the channel's port in the WebLogic configuration be a legal and unique value in the Kubernetes cluster's legal NodePort port range.",
44+
"type": "array",
45+
"items": {
46+
"type": "string"
47+
}
48+
},
49+
"startupControl": {
50+
"description": "Controls which managed servers will be started. Legal values are NONE, ADMIN, ALL, SPECIFIED or AUTO. Defaults to AUTO. NONE indicates that no servers, including the administration server, will be started. ADMIN indicates that only the administration server is started. ALL indicates that all servers in the domain will be started. SPECIFIED indicates that the administration server is started and then additionally only those servers listed under serverStartup or managed servers belonging to clusters listed under clusterStartup up to the cluster's replicas field will be started. AUTO indicates that servers will be started exactly as with SPECIFIED, but then managed servers belonging to clusters not listed under clusterStartup will be started up to the replicas field.",
51+
"type": "string"
52+
},
53+
"serverStartup": {
54+
"description": "List of server startup details for selected servers.",
55+
"type": "array",
56+
"items": {
57+
"$ref": "serverstartup.json"
58+
}
59+
},
60+
"clusterStartup": {
61+
"description": "List of server startup details for selected clusters",
62+
"type": "array",
63+
"items": {
64+
"$ref": "clusterstartup.json"
65+
}
66+
},
67+
"replicas": {
68+
"description": "Replicas is the desired number of managed servers running in each WebLogic cluster that is not configured under clusterStartup. Provided so that administrators can scale the Domain resource. Ignored if startupControl is not AUTO.",
69+
"type": "integer",
70+
"format": "int32"
71+
}
72+
}
73+
}
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
{
2+
"type": "object",
3+
"javaType": "oracle.kubernetes.weblogic.domain.v1.DomainStatus",
4+
"description": "DomainStatus represents information about the status of a domain. Status may trail the actual state of a system.",
5+
"properties": {
6+
"conditions": {
7+
"description": "Current service state of domain.",
8+
"type": "array",
9+
"items": {
10+
"$ref": "condition.json"
11+
},
12+
"x-kubernetes-patch-merge-key": "type",
13+
"x-kubernetes-patch-strategy": "merge"
14+
},
15+
"message": {
16+
"description": "A human readable message indicating details about why the domain is in this condition.",
17+
"type": "string"
18+
},
19+
"reason": {
20+
"description": "A brief CamelCase message indicating details about why the domain is in this state.",
21+
"type": "string"
22+
},
23+
"servers": {
24+
"description": "Status of WebLogic servers in this domain.",
25+
"type": "array",
26+
"items": {
27+
"$ref": "serverstatus.json"
28+
}
29+
},
30+
"startTime": {
31+
"description": "RFC 3339 date and time at which the operator started the domain. This will be when the operator begins processing and will precede when the various servers or clusters are available.",
32+
"type": "date-time",
33+
"javaType": "org.joda.time.DateTime"
34+
}
35+
}
36+
}

0 commit comments

Comments
 (0)