Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
cd5a2fd
feat: setup react-email for html emails
cyyynthia Nov 12, 2023
a397c43
chore: upgrade email subproject
cyyynthia Nov 16, 2024
67bbb2f
feat: configure CLI, write quick extractor
cyyynthia Nov 17, 2024
3d0cffb
feat: rough first implementation of emails in backend
cyyynthia Nov 17, 2024
a5c9bb0
fix: lint, try to troubleshoot test failures
cyyynthia Nov 20, 2024
3d29218
fix: properly render strings using icu4j
cyyynthia Nov 23, 2024
05389da
feat: render icu xml as fragments
cyyynthia Jun 9, 2025
6db8b4d
feat: finalize working impl of react emails renderer
cyyynthia Jun 9, 2025
02c8a62
feat: implement global variables
cyyynthia Jun 9, 2025
5d785a1
fix: properly implement sanitization in Var
cyyynthia Jun 9, 2025
e2c64d3
chore: minor adjustments
cyyynthia Jun 16, 2025
3f2212f
chore: typo in CI config
cyyynthia Jun 16, 2025
d084fec
chore: fix accidentally introduced tab indents
cyyynthia Jun 16, 2025
bb75ab4
chore: fix typo part 2
cyyynthia Jun 16, 2025
ccd2637
chore: please the artificial rabbit
cyyynthia Jun 16, 2025
bb32c41
chore: misc fixes and improvements
cyyynthia Jun 17, 2025
f039a60
chore: lint
cyyynthia Jun 17, 2025
deebf6d
fix: proper path in gha config
cyyynthia Jun 17, 2025
c860b97
chore: refactor
cyyynthia Jun 17, 2025
54db769
chore: minor improvement of EmailTemplateConfig
cyyynthia Jun 17, 2025
40df87a
chore: gradle config
cyyynthia Jun 17, 2025
2441fa9
chore: gradle config pt. 2
cyyynthia Jun 17, 2025
76199dd
chore: gradle config pt. 3
cyyynthia Jun 18, 2025
0ad18bc
chore: gradle config pt. 3.1
cyyynthia Jun 18, 2025
24a75c4
chore: gradle config pt. 3.2
cyyynthia Jun 18, 2025
935bdfa
chore: gha tweaks (again)
cyyynthia Jun 20, 2025
4b60383
chore: silly gha mistakes
cyyynthia Jun 20, 2025
87e4d1b
ci: mixed up src/dest actions
cyyynthia Jun 20, 2025
2d7ad39
fix: a small typo for a file, a giant failure for gradle build
cyyynthia Jul 7, 2025
b1b9e12
feat: React Emails > default template (#3194)
JanCizmar Oct 17, 2025
7a8ce58
chore: rebase
dkrizan Oct 17, 2025
b16778a
fix: invitation link getter in cypress
dkrizan Oct 17, 2025
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
32 changes: 20 additions & 12 deletions .github/actions/download-backend-build/action.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
name: Download backend build
description: Download backend build from GitHub artifacts and decompress them

inputs:
target-directory:
description: Directory where the backend should be extracted to. Defaults to current working directory.
default: .

runs:
using: composite
steps:
Expand All @@ -10,16 +15,19 @@ runs:
name: backend
path: ~/

- name: Un-tar build results
shell: sh
- name: Decompress build results
shell: bash
env:
DEST_DIR: ${{ inputs.target-directory }}
run: |
tar --zstd -xf ~/backend-api.tar.zst ./backend/api/build
tar --zstd -xf ~/backend-app.tar.zst ./backend/app/build
tar --zstd -xf ~/backend-data.tar.zst ./backend/data/build
tar --zstd -xf ~/backend-misc.tar.zst ./backend/misc/build
tar --zstd -xf ~/backend-security.tar.zst ./backend/security/build
tar --zstd -xf ~/backend-testing.tar.zst ./backend/testing/build
tar --zstd -xf ~/backend-ktlint.tar.zst ./backend/ktlint/build
tar --zstd -xf ~/backend-development.tar.zst ./backend/development/build
tar --zstd -xf ~/ee-backend-app.tar.zst ./ee/backend/app/build
tar --zstd -xf ~/ee-backend-tests.tar.zst ./ee/backend/tests/build
tar --zstd -xf ~/backend-api.tar.zst $DEST_DIR/backend/api/build
tar --zstd -xf ~/backend-app.tar.zst $DEST_DIR/backend/app/build
tar --zstd -xf ~/backend-data.tar.zst $DEST_DIR/backend/data/build
tar --zstd -xf ~/backend-misc.tar.zst $DEST_DIR/backend/misc/build
tar --zstd -xf ~/backend-security.tar.zst $DEST_DIR/backend/security/build
tar --zstd -xf ~/backend-testing.tar.zst $DEST_DIR/backend/testing/build
tar --zstd -xf ~/backend-ktlint.tar.zst $DEST_DIR/backend/ktlint/build
tar --zstd -xf ~/backend-development.tar.zst $DEST_DIR/backend/development/build
tar --zstd -xf ~/ee-backend-app.tar.zst $DEST_DIR/ee/backend/app/build
tar --zstd -xf ~/ee-backend-tests.tar.zst $DEST_DIR/ee/backend/tests/build
tar --zstd -xf ~/backend-email.tar.zst $DEST_DIR/email/out
38 changes: 37 additions & 1 deletion .github/actions/setup-env/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,21 @@ inputs:
description: Whether to setup Node.js or not.
default: "true"
npm-cache:
description: Whether to setup npm cache or not.
description: Whether to setup npm cache or not. Irrelevant if node is disabled.
default: "true"
docker:
description: Whether to setup additional Docker build environment tools. Defaults to false.
default: "false"
docker-ghcr:
description: Whether to login to the GitHub Container Registry or not. Defaults to false.
default: "false"
docker-hub:
description: Whether to login to Docker Hub or not. Defaults to false.
default: "false"
docker-hub-username:
description: Username to use to authenticate to Docker Hub.
docker-hub-password:
description: Password to use to authenticate to Docker Hub.

runs:
using: composite
Expand Down Expand Up @@ -40,3 +53,26 @@ runs:
key: cache-node-modules-${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
cache-node-modules-${{ runner.os }}-

- name: Setup QEMU for Docker
if: "${{ inputs.docker == 'true' }}"
uses: docker/setup-qemu-action@v3

- name: Setup Docker Buildx
if: "${{ inputs.docker == 'true' }}"
uses: docker/setup-buildx-action@v3

- name: Login to Docker Hub
if: "${{ inputs.docker-hub == 'true' }}"
uses: docker/login-action@v3
with:
username: ${{ inputs.docker-hub-username }}
password: ${{ inputs.docker-hub-password }}

- name: Login to GitHub Container Registry
if: "${{ inputs.docker-ghcr == 'true' }}"
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ github.token }}
36 changes: 23 additions & 13 deletions .github/actions/upload-backend-build/action.yaml
Original file line number Diff line number Diff line change
@@ -1,24 +1,33 @@
name: Upload backend build
description: Compress and upload backend build result to GitHub artifacts

inputs:
source-directory:
description: Directory where the backend is. Defaults to current working directory.
default: .

runs:
using: composite
steps:
- name: Compress build assets
shell: sh
- name: Compress build results
shell: bash
env:
SRC_DIR: ${{ inputs.source-directory }}
run: |
tar --zstd -cf ~/backend-api.tar.zst ./backend/api/build
tar --zstd -cf ~/backend-app.tar.zst ./backend/app/build
tar --zstd -cf ~/backend-data.tar.zst ./backend/data/build
tar --zstd -cf ~/backend-misc.tar.zst ./backend/misc/build
tar --zstd -cf ~/backend-security.tar.zst ./backend/security/build
tar --zstd -cf ~/backend-testing.tar.zst ./backend/testing/build
tar --zstd -cf ~/backend-ktlint.tar.zst ./backend/ktlint/build
tar --zstd -cf ~/backend-development.tar.zst ./backend/development/build
tar --zstd -cf ~/ee-backend-app.tar.zst ./ee/backend/app/build
tar --zstd -cf ~/ee-backend-tests.tar.zst ./ee/backend/tests/build
tar --zstd -cf ~/backend-api.tar.zst $SRC_DIR/backend/api/build
tar --zstd -cf ~/backend-app.tar.zst $SRC_DIR/backend/app/build
tar --zstd -cf ~/backend-data.tar.zst $SRC_DIR/backend/data/build
tar --zstd -cf ~/backend-misc.tar.zst $SRC_DIR/backend/misc/build
tar --zstd -cf ~/backend-security.tar.zst $SRC_DIR/backend/security/build
tar --zstd -cf ~/backend-testing.tar.zst $SRC_DIR/backend/testing/build
tar --zstd -cf ~/backend-ktlint.tar.zst $SRC_DIR/backend/ktlint/build
tar --zstd -cf ~/backend-development.tar.zst $SRC_DIR/backend/development/build
tar --zstd -cf ~/ee-backend-app.tar.zst $SRC_DIR/ee/backend/app/build
tar --zstd -cf ~/ee-backend-tests.tar.zst $SRC_DIR/ee/backend/tests/build
tar --zstd -cf ~/backend-email.tar.zst $SRC_DIR/email/out
Comment on lines +12 to +27
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Guard tar calls; they fail when directories are absent.

If any of these paths don’t exist (e.g., SKIP_EMAIL_BUILD=true), tar exits non-zero and the step fails.

Apply:

-    - name: Compress build results
-      shell: bash
-      env:
-        SRC_DIR: ${{ inputs.source-directory }}
-      run: |
-        tar --zstd -cf ~/backend-api.tar.zst $SRC_DIR/backend/api/build
-        tar --zstd -cf ~/backend-app.tar.zst $SRC_DIR/backend/app/build
-        tar --zstd -cf ~/backend-data.tar.zst $SRC_DIR/backend/data/build
-        tar --zstd -cf ~/backend-misc.tar.zst $SRC_DIR/backend/misc/build
-        tar --zstd -cf ~/backend-security.tar.zst $SRC_DIR/backend/security/build
-        tar --zstd -cf ~/backend-testing.tar.zst $SRC_DIR/backend/testing/build
-        tar --zstd -cf ~/backend-ktlint.tar.zst $SRC_DIR/backend/ktlint/build
-        tar --zstd -cf ~/backend-development.tar.zst $SRC_DIR/backend/development/build
-        tar --zstd -cf ~/ee-backend-app.tar.zst $SRC_DIR/ee/backend/app/build
-        tar --zstd -cf ~/ee-backend-tests.tar.zst $SRC_DIR/ee/backend/tests/build
-        tar --zstd -cf ~/backend-email.tar.zst $SRC_DIR/email/out
+    - name: Compress build results
+      shell: bash
+      env:
+        SRC_DIR: ${{ inputs.source-directory }}
+      run: |
+        set -euo pipefail
+        pack_if_exists() {
+          local out="$1"; shift
+          local dir="$1"; shift
+          if [[ -d "$dir" ]]; then
+            tar --zstd -cf "$out" "$dir"
+          else
+            echo "Skipping: $dir does not exist"
+          fi
+        }
+        pack_if_exists "$HOME/backend-api.tar.zst"        "$SRC_DIR/backend/api/build"
+        pack_if_exists "$HOME/backend-app.tar.zst"        "$SRC_DIR/backend/app/build"
+        pack_if_exists "$HOME/backend-data.tar.zst"       "$SRC_DIR/backend/data/build"
+        pack_if_exists "$HOME/backend-misc.tar.zst"       "$SRC_DIR/backend/misc/build"
+        pack_if_exists "$HOME/backend-security.tar.zst"   "$SRC_DIR/backend/security/build"
+        pack_if_exists "$HOME/backend-testing.tar.zst"    "$SRC_DIR/backend/testing/build"
+        pack_if_exists "$HOME/backend-ktlint.tar.zst"     "$SRC_DIR/backend/ktlint/build"
+        pack_if_exists "$HOME/backend-development.tar.zst" "$SRC_DIR/backend/development/build"
+        pack_if_exists "$HOME/ee-backend-app.tar.zst"     "$SRC_DIR/ee/backend/app/build"
+        pack_if_exists "$HOME/ee-backend-tests.tar.zst"   "$SRC_DIR/ee/backend/tests/build"
+        pack_if_exists "$HOME/backend-email.tar.zst"      "$SRC_DIR/email/out"
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- name: Compress build results
shell: bash
env:
SRC_DIR: ${{ inputs.source-directory }}
run: |
tar --zstd -cf ~/backend-api.tar.zst ./backend/api/build
tar --zstd -cf ~/backend-app.tar.zst ./backend/app/build
tar --zstd -cf ~/backend-data.tar.zst ./backend/data/build
tar --zstd -cf ~/backend-misc.tar.zst ./backend/misc/build
tar --zstd -cf ~/backend-security.tar.zst ./backend/security/build
tar --zstd -cf ~/backend-testing.tar.zst ./backend/testing/build
tar --zstd -cf ~/backend-ktlint.tar.zst ./backend/ktlint/build
tar --zstd -cf ~/backend-development.tar.zst ./backend/development/build
tar --zstd -cf ~/ee-backend-app.tar.zst ./ee/backend/app/build
tar --zstd -cf ~/ee-backend-tests.tar.zst ./ee/backend/tests/build
tar --zstd -cf ~/backend-api.tar.zst $SRC_DIR/backend/api/build
tar --zstd -cf ~/backend-app.tar.zst $SRC_DIR/backend/app/build
tar --zstd -cf ~/backend-data.tar.zst $SRC_DIR/backend/data/build
tar --zstd -cf ~/backend-misc.tar.zst $SRC_DIR/backend/misc/build
tar --zstd -cf ~/backend-security.tar.zst $SRC_DIR/backend/security/build
tar --zstd -cf ~/backend-testing.tar.zst $SRC_DIR/backend/testing/build
tar --zstd -cf ~/backend-ktlint.tar.zst $SRC_DIR/backend/ktlint/build
tar --zstd -cf ~/backend-development.tar.zst $SRC_DIR/backend/development/build
tar --zstd -cf ~/ee-backend-app.tar.zst $SRC_DIR/ee/backend/app/build
tar --zstd -cf ~/ee-backend-tests.tar.zst $SRC_DIR/ee/backend/tests/build
tar --zstd -cf ~/backend-email.tar.zst $SRC_DIR/email/out
- name: Compress build results
shell: bash
env:
SRC_DIR: ${{ inputs.source-directory }}
run: |
set -euo pipefail
pack_if_exists() {
local out="$1"; shift
local dir="$1"; shift
if [[ -d "$dir" ]]; then
tar --zstd -cf "$out" "$dir"
else
echo "Skipping: $dir does not exist"
fi
}
pack_if_exists "$HOME/backend-api.tar.zst" "$SRC_DIR/backend/api/build"
pack_if_exists "$HOME/backend-app.tar.zst" "$SRC_DIR/backend/app/build"
pack_if_exists "$HOME/backend-data.tar.zst" "$SRC_DIR/backend/data/build"
pack_if_exists "$HOME/backend-misc.tar.zst" "$SRC_DIR/backend/misc/build"
pack_if_exists "$HOME/backend-security.tar.zst" "$SRC_DIR/backend/security/build"
pack_if_exists "$HOME/backend-testing.tar.zst" "$SRC_DIR/backend/testing/build"
pack_if_exists "$HOME/backend-ktlint.tar.zst" "$SRC_DIR/backend/ktlint/build"
pack_if_exists "$HOME/backend-development.tar.zst" "$SRC_DIR/backend/development/build"
pack_if_exists "$HOME/ee-backend-app.tar.zst" "$SRC_DIR/ee/backend/app/build"
pack_if_exists "$HOME/ee-backend-tests.tar.zst" "$SRC_DIR/ee/backend/tests/build"
pack_if_exists "$HOME/backend-email.tar.zst" "$SRC_DIR/email/out"
🤖 Prompt for AI Agents
.github/actions/upload-backend-build/action.yaml around lines 12 to 27: the tar
commands will cause the step to fail if any source directory is missing; guard
each tar invocation by first checking the target path exists (e.g. test with [
-e ] or [ -d ]) and only run tar when it does, or alternatively use a tar option
that ignores missing inputs if available; ensure the step still creates or skips
artifacts deterministically and preserves exit codes for real failures.


- uses: actions/upload-artifact@v4
- name: Upload backend build result
uses: actions/upload-artifact@v4
with:
name: backend
path: |
Expand All @@ -32,3 +41,4 @@ runs:
~/backend-development.tar.zst
~/ee-backend-app.tar.zst
~/ee-backend-tests.tar.zst
~/backend-email.tar.zst
2 changes: 1 addition & 1 deletion .github/workflows/inactive-issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
issues: write
pull-requests: write
steps:
- uses: actions/stale@v5
- uses: actions/stale@v9
with:
days-before-issue-stale: 30
days-before-issue-close: 14
Expand Down
103 changes: 0 additions & 103 deletions .github/workflows/prerelease-alpha.yml

This file was deleted.

61 changes: 0 additions & 61 deletions .github/workflows/preview.yml

This file was deleted.

Loading
Loading