Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
d5c888e
first version
ThoSap Dec 17, 2025
e5df81f
trigger the RoleReconciler if the referenced secret changes
ThoSap Jan 7, 2026
035d5bf
add a test to check if the password changes if the Role secretRef cha…
ThoSap Jan 7, 2026
b35354f
use a random PostgreSQL Dev Service port
ThoSap Jan 7, 2026
69fcdfa
test if the boolean role flags work
ThoSap Jan 7, 2026
7e11c98
test the connection limit
ThoSap Jan 7, 2026
2020658
test the VALID UNTIL flag
ThoSap Jan 7, 2026
92ab045
test the ClusterConnectionReconciler error cases
ThoSap Jan 8, 2026
cde4784
add a test for the login passwordSecretRef updates
ThoSap Jan 8, 2026
c55c6b5
add .gitattributes file to not render generated files in PR reviews b…
ThoSap Jan 8, 2026
8cbbe0b
add tests for flags ROLE and IN_ROLE
ThoSap Jan 8, 2026
fe5cd98
add tests for the Role comment
ThoSap Jan 8, 2026
3db4900
cleanup and use a CloseableDSLContext
ThoSap Jan 8, 2026
ee9f1ec
implement the PostgreSQLInstanceReadinessCheck
ThoSap Jan 8, 2026
5a4669a
add NullAway and fix issues
ThoSap Jan 8, 2026
5a03d6c
update to Quarkus 3.30.6, Checkstyle 13.0.0 and ErrorProne Gradle Plu…
ThoSap Jan 8, 2026
288656a
fix small issues
ThoSap Jan 8, 2026
6fb668f
remove outdated comment
ThoSap Jan 8, 2026
6f98910
Revert "remove outdated comment"
ThoSap Jan 8, 2026
8616b99
use UBI9 OpenJDK 25 runtime
ThoSap Jan 8, 2026
a131ea9
implement the review feedback and implement the role cleanup when a R…
ThoSap Jan 9, 2026
a5d3081
add some additional CRStatus printer columns and Role#name validation…
ThoSap Jan 9, 2026
358aee1
implement RoleCreate and update the related tests
ThoSap Jan 9, 2026
f8e539d
add a test to check if the Role CR instance deletion works and delete…
ThoSap Jan 9, 2026
020797c
add example using the existing Dev Services in the README.md
ThoSap Jan 9, 2026
97629dd
fix trailing ? bug in the CRStatus .status.name
ThoSap Jan 9, 2026
9db67e1
always set the .status.name
ThoSap Jan 9, 2026
9b0cccd
rename package it.aboutbits.postgresql.crd.connection to it.aboutbits…
ThoSap Jan 12, 2026
8d64cfe
remove the native Dockerfiles
ThoSap Jan 12, 2026
46ef0ae
remove the AI slop
ThoSap Jan 12, 2026
1343797
the Java Operator SDK apparently does not like underscores in package…
ThoSap Jan 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
*
!build/*-runner
!build/*-runner.jar
!build/lib/*
!build/quarkus-app/*
23 changes: 23 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
root = true

[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = space
insert_final_newline = true
max_line_length = 120
tab_width = 4
ij_continuation_indent_size = 8

[*.yml]
indent_size = 2

[*.md]
max_line_length = off

[Makefile*]
indent_style = tab

[src/main/resources/default_banner.txt]
insert_final_newline = false
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
src/generated/** linguist-generated
6 changes: 6 additions & 0 deletions .githooks/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#!/bin/bash

set -e
set -o pipefail

./gradlew --console=colored checkstyleMain checkstyleTest
15 changes: 15 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Test
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here you used the structure/approach of our project pipelines. But wouldn't it be more appropriate to build this repository similar to a package where we have the publishing workflows?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, this makes sense. I will switch it to a publishing workflow, as we did it for other Java libs.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left it for now as is. I will change this workflow in a follow-up PR.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Makes sense.


on:
pull_request:
types: [ opened, reopened, synchronize ]

concurrency:
group: ${{ github.ref }}
cancel-in-progress: true

jobs:
test:
name: Tests
uses: ./.github/workflows/test.yml
secrets: inherit
25 changes: 25 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Tests

on:
workflow_call:

jobs:
test:
name: Tests
runs-on: ubuntu-24.04
timeout-minutes: 5
steps:
- uses: actions/checkout@v5
- uses: aboutbits/github-actions-java/setup-with-gradle@v4
with:
java-version: 25
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
- name: Build & Test
run: >-
./gradlew
--console=colored
test
--fail-fast
env:
GITHUB_USER_NAME: ${{ github.actor }}
GITHUB_ACCESS_TOKEN: ${{ secrets.GITHUB_TOKEN }}
62 changes: 62 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
### PostgreSQL Operator ###
config/

### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache

### IntelliJ IDEA ###
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
.idea/*
!.idea/codeStyles
!.idea/.gitignore
!.idea/checkstyle-idea.xml
!.idea/encodings.xml
!.idea/misc.xml
!.idea/sqldialects.xml
!.idea/vcs.xml

*.iml
*.ipr
*.iws

### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/

### VS Code ###
.vscode/

### Mac ###
.DS_Store

### Gradle ###
# Reference: https://github.com/github/gitignore/blob/main/Gradle.gitignore
.gradle
**/build/
!**/src/**/build/
gradle-app.setting
!gradle-wrapper.jar
!gradle-wrapper.properties
.gradletasknamecache

### Quarkus ###
# Local environment
.env

# Plugin directory
/.quarkus/cli/plugins/

# Quinoa
.quinoa/
23 changes: 23 additions & 0 deletions .idea/checkstyle-idea.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

32 changes: 32 additions & 0 deletions .idea/codeStyles/Project.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 5 additions & 0 deletions .idea/codeStyles/codeStyleConfig.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 10 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/sqldialects.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

19 changes: 19 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
### SETUP

init:
$(MAKE) install

install:
./gradlew --console=colored quarkusBuild


### EXECUTION

run:
./gradlew --console=colored quarkusDev

test:
./gradlew --console=colored clean test

# Flag targets as phony, to tell `make` that these are no file targets
.PHONY: init install run test
Loading