Skip to content

Commit

Permalink
feat: generate java crds
Browse files Browse the repository at this point in the history
  • Loading branch information
jeremylvln committed Mar 5, 2022
1 parent 62dba66 commit 11aae37
Show file tree
Hide file tree
Showing 74 changed files with 12,476 additions and 5 deletions.
9 changes: 4 additions & 5 deletions support/shulker-crds/generate-crds.sh
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
#!/bin/bash

CRDS_IN=../../config/crd/bases
CRDS_OUT=./src/main/java

mkdir -p $CRDS_OUT
CRDS=$(find $CRDS_IN -type f -name "*.yaml")

function generateCrd() {
Expand All @@ -13,17 +10,19 @@ function generateCrd() {
docker run \
--rm \
-v "$(realpath $CRD_PATH)":"/tmp/${CRD_FILE_NAME}" \
-v "$(realpath $CRDS_OUT)":"/tmp/out" \
-v "$(pwd)":"$(pwd)" \
-v /var/run/docker.sock:/var/run/docker.sock \
--network host \
docker.pkg.github.com/kubernetes-client/java/crd-model-gen:v1.0.6 \
/generate.sh \
-u /tmp/${CRD_FILE_NAME} \
-n io.shulkermc \
-p io.shulkermc \
-o "/tmp/out"
-o "$(pwd)"
}

for crd in $CRDS; do
generateCrd $crd
done

rm -Rf src/main/java/gen
Original file line number Diff line number Diff line change
@@ -0,0 +1,218 @@
/*
* Kubernetes
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
*
* The version of the OpenAPI document: v1.21.1
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/


package io.shulkermc.models;

import java.util.Objects;
import java.util.Arrays;
import com.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import io.kubernetes.client.openapi.models.V1ObjectMeta;
import io.shulkermc.models.V1alpha1MinecraftClusterStatus;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;

/**
* MinecraftCluster is the Schema for the MinecraftCluster API
*/
@ApiModel(description = "MinecraftCluster is the Schema for the MinecraftCluster API")
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2022-03-05T15:49:50.494Z[Etc/UTC]")
public class V1alpha1MinecraftCluster implements io.kubernetes.client.common.KubernetesObject {
public static final String SERIALIZED_NAME_API_VERSION = "apiVersion";
@SerializedName(SERIALIZED_NAME_API_VERSION)
private String apiVersion;

public static final String SERIALIZED_NAME_KIND = "kind";
@SerializedName(SERIALIZED_NAME_KIND)
private String kind;

public static final String SERIALIZED_NAME_METADATA = "metadata";
@SerializedName(SERIALIZED_NAME_METADATA)
private V1ObjectMeta metadata = null;

public static final String SERIALIZED_NAME_SPEC = "spec";
@SerializedName(SERIALIZED_NAME_SPEC)
private Object spec;

public static final String SERIALIZED_NAME_STATUS = "status";
@SerializedName(SERIALIZED_NAME_STATUS)
private V1alpha1MinecraftClusterStatus status;


public V1alpha1MinecraftCluster apiVersion(String apiVersion) {

this.apiVersion = apiVersion;
return this;
}

/**
* 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/sig-architecture/api-conventions.md#resources
* @return apiVersion
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "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/sig-architecture/api-conventions.md#resources")

public String getApiVersion() {
return apiVersion;
}


public void setApiVersion(String apiVersion) {
this.apiVersion = apiVersion;
}


public V1alpha1MinecraftCluster kind(String kind) {

this.kind = kind;
return this;
}

/**
* 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/sig-architecture/api-conventions.md#types-kinds
* @return kind
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "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/sig-architecture/api-conventions.md#types-kinds")

public String getKind() {
return kind;
}


public void setKind(String kind) {
this.kind = kind;
}


public V1alpha1MinecraftCluster metadata(V1ObjectMeta metadata) {

this.metadata = metadata;
return this;
}

/**
* Get metadata
* @return metadata
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")

public V1ObjectMeta getMetadata() {
return metadata;
}


public void setMetadata(V1ObjectMeta metadata) {
this.metadata = metadata;
}


public V1alpha1MinecraftCluster spec(Object spec) {

this.spec = spec;
return this;
}

/**
* Defines the defired state of a MinecraftCluster. Most, to not say all, fields configurable in a Minecraft Cluster can be configured in this CRD.
* @return spec
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "Defines the defired state of a MinecraftCluster. Most, to not say all, fields configurable in a Minecraft Cluster can be configured in this CRD.")

public Object getSpec() {
return spec;
}


public void setSpec(Object spec) {
this.spec = spec;
}


public V1alpha1MinecraftCluster status(V1alpha1MinecraftClusterStatus status) {

this.status = status;
return this;
}

/**
* Get status
* @return status
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")

public V1alpha1MinecraftClusterStatus getStatus() {
return status;
}


public void setStatus(V1alpha1MinecraftClusterStatus status) {
this.status = status;
}


@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
V1alpha1MinecraftCluster v1alpha1MinecraftCluster = (V1alpha1MinecraftCluster) o;
return Objects.equals(this.apiVersion, v1alpha1MinecraftCluster.apiVersion) &&
Objects.equals(this.kind, v1alpha1MinecraftCluster.kind) &&
Objects.equals(this.metadata, v1alpha1MinecraftCluster.metadata) &&
Objects.equals(this.spec, v1alpha1MinecraftCluster.spec) &&
Objects.equals(this.status, v1alpha1MinecraftCluster.status);
}

@Override
public int hashCode() {
return Objects.hash(apiVersion, kind, metadata, spec, status);
}


@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class V1alpha1MinecraftCluster {\n");
sb.append(" apiVersion: ").append(toIndentedString(apiVersion)).append("\n");
sb.append(" kind: ").append(toIndentedString(kind)).append("\n");
sb.append(" metadata: ").append(toIndentedString(metadata)).append("\n");
sb.append(" spec: ").append(toIndentedString(spec)).append("\n");
sb.append(" status: ").append(toIndentedString(status)).append("\n");
sb.append("}");
return sb.toString();
}

/**
* Convert the given object to string with each line indented by 4 spaces
* (except the first line).
*/
private String toIndentedString(Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}

}

Loading

0 comments on commit 11aae37

Please sign in to comment.