Skip to content

Commit 80ee56d

Browse files
committed
first version of the Database CRD
1 parent fb81c36 commit 80ee56d

13 files changed

Lines changed: 538 additions & 17 deletions

File tree

generated/build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ jooq {
3636
| pg_class
3737
| pg_database
3838
| pg_db_role_setting
39+
| pg_get_userbyid
3940
| pg_namespace
4041
| shobj_description
4142
""".trimIndent()

generated/src/main/java/it/aboutbits/postgresql/core/infrastructure/persistence/Routines.java

Lines changed: 39 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

generated/src/main/java/it/aboutbits/postgresql/core/infrastructure/persistence/routines/PgGetUserbyid.java

Lines changed: 70 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package it.aboutbits.postgresql.core;
2+
3+
import com.fasterxml.jackson.annotation.JsonValue;
4+
import lombok.RequiredArgsConstructor;
5+
import org.jspecify.annotations.NullMarked;
6+
7+
@NullMarked
8+
@RequiredArgsConstructor
9+
public enum ReclaimPolicy {
10+
RETAIN("Retain"),
11+
DELETE("Delete");
12+
13+
private final String policy;
14+
15+
@JsonValue
16+
public String toValue() {
17+
return policy;
18+
}
19+
}

operator/src/main/java/it/aboutbits/postgresql/crd/database/.gitkeep

Whitespace-only changes.
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
package it.aboutbits.postgresql.crd.database;
2+
3+
import io.fabric8.crd.generator.annotation.AdditionalPrinterColumn;
4+
import io.fabric8.kubernetes.api.model.Namespaced;
5+
import io.fabric8.kubernetes.client.CustomResource;
6+
import io.fabric8.kubernetes.model.annotation.Group;
7+
import io.fabric8.kubernetes.model.annotation.Version;
8+
import it.aboutbits.postgresql.core.CRStatus;
9+
import it.aboutbits.postgresql.core.Named;
10+
import org.jspecify.annotations.NullMarked;
11+
12+
@NullMarked
13+
@Version("v1")
14+
@Group("postgresql.aboutbits.it")
15+
@AdditionalPrinterColumn(
16+
name = "Name",
17+
jsonPath = ".status.name",
18+
type = AdditionalPrinterColumn.Type.STRING
19+
)
20+
@AdditionalPrinterColumn(
21+
name = "Phase",
22+
jsonPath = ".status.phase",
23+
type = AdditionalPrinterColumn.Type.STRING
24+
)
25+
@AdditionalPrinterColumn(
26+
name = "Message",
27+
jsonPath = ".status.message",
28+
type = AdditionalPrinterColumn.Type.STRING
29+
)
30+
@AdditionalPrinterColumn(
31+
name = "Since",
32+
jsonPath = ".status.lastPhaseTransitionTime",
33+
type = AdditionalPrinterColumn.Type.DATE
34+
)
35+
@AdditionalPrinterColumn(
36+
name = "Age",
37+
jsonPath = ".metadata.creationTimestamp",
38+
type = AdditionalPrinterColumn.Type.DATE
39+
)
40+
public class Database
41+
extends CustomResource<DatabaseSpec, CRStatus>
42+
implements Namespaced, Named {
43+
@Override
44+
public String getName() {
45+
return getSpec().getName();
46+
}
47+
}

0 commit comments

Comments
 (0)