Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
9 changes: 9 additions & 0 deletions compose.override.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,12 @@ services:
WATCHPACK_POLLING: "true"
# Development usage only
NODE_TLS_REJECT_UNAUTHORIZED: "0"
healthcheck:
test: [ "CMD-SHELL", "wget --no-verbose --tries=1 --spider http://127.0.0.1:3000 || exit 1" ]
start_period: 15s
interval: 5s
timeout: 3s
retries: 5

###> doctrine/doctrine-bundle ###
database:
Expand All @@ -55,6 +61,9 @@ services:

keycloak-config-cli:
image: bitnami/keycloak-config-cli:5-debian-12
depends_on:
keycloak:
condition: service_healthy
environment:
KEYCLOAK_URL: http://keycloak:8080/oidc/
KEYCLOAK_USER: ${KEYCLOAK_ADMIN_USER:-admin}
Expand Down
6 changes: 6 additions & 0 deletions compose.prod.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,12 @@ services:
NEXT_PUBLIC_OIDC_SERVER_URL: ${NEXT_PUBLIC_OIDC_SERVER_URL}
environment:
AUTH_SECRET: ${AUTH_SECRET}
healthcheck:
test: [ "CMD-SHELL", "wget --no-verbose --tries=1 --spider http://127.0.0.1:3000 || exit 1" ]
start_period: 5s
interval: 5s
timeout: 3s
retries: 5

database:
environment:
Expand Down
31 changes: 29 additions & 2 deletions compose.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,12 @@ services:
php:
image: ${IMAGES_PREFIX:-}app-php
depends_on:
- database
database:
condition: service_healthy
pwa:
condition: service_healthy
keycloak:
condition: service_healthy
restart: unless-stopped
environment:
PWA_UPSTREAM: pwa:3000
Expand Down Expand Up @@ -52,6 +57,12 @@ services:
# You should definitely change the password in production
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD:-!ChangeMe!}
- POSTGRES_USER=${POSTGRES_USER:-app}
healthcheck:
test: [ "CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-app}" ]
start_period: 1s
interval: 5s
timeout: 3s
retries: 3
volumes:
- db_data:/var/lib/postgresql/data
# you may use a bind-mounted host directory instead, so that it is harder to accidentally remove the volume and lose all your data!
Expand All @@ -69,6 +80,12 @@ services:
# You should definitely change the password in production
POSTGRES_PASSWORD: ${KEYCLOAK_POSTGRES_PASSWORD:-!ChangeMe!}
POSTGRES_USER: ${KEYCLOAK_POSTGRES_USER:-keycloak}
healthcheck:
test: [ "CMD-SHELL", "pg_isready -U ${KEYCLOAK_POSTGRES_USER:-keycloak}" ]
start_period: 1s
interval: 5s
timeout: 3s
retries: 3
volumes:
- keycloak_db_data:/var/lib/postgresql/data

Expand All @@ -88,8 +105,18 @@ services:
KC_HOSTNAME_ADMIN_URL: https://${SERVER_NAME:-localhost}/oidc/
# https://www.keycloak.org/server/features
KC_FEATURES: "scripts"
# https://github.com/bitnami/containers/pull/40893
KEYCLOAK_ENABLE_HEALTH_ENDPOINTS: "true"
# https://www.keycloak.org/server/all-config#category-health
healthcheck:
test: [ "CMD-SHELL", "curl http://127.0.0.1:8080/oidc/health || exit 1"]
start_period: 15s
interval: 5s
timeout: 3s
retries: 15
depends_on:
- keycloak-database
keycloak-database:
condition: service_healthy
ports:
- target: 8080
published: 8080
Expand Down
2 changes: 1 addition & 1 deletion pwa/components/admin/book/BookInput.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ export const BookInput = (props: BookInputProps) => {
} = useInput({ ...props, source: "book" });
const title = useWatch({ name: "title" });
const author = useWatch({ name: "author" });
const controller = useRef<AbortController | undefined>();
const controller = useRef<AbortController | undefined>(undefined);
const [searchQuery, setSearchQuery] = useState<string>("");
const [value, setValue] = useState<Result | null | undefined>(
!!title && !!author && !!field.value
Expand Down
2 changes: 1 addition & 1 deletion pwa/next-env.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
/// <reference types="next/image-types/global" />

// NOTE: This file should not be edited
// see https://nextjs.org/docs/app/building-your-application/configuring/typescript for more information.
// see https://nextjs.org/docs/app/api-reference/config/typescript for more information.
62 changes: 29 additions & 33 deletions pwa/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,48 +12,44 @@
"dependencies": {
"@api-platform/admin": "^4.0.3",
"@api-platform/api-doc-parser": "^0.16.6",
"@auth/core": "^0.37.3",
"@fontsource/poppins": "^5.1.0",
"@mui/icons-material": "^5.16.7",
"@mui/material": "^5.16.7",
"@tailwindcss/forms": "^0.5.9",
"@tanstack/react-query": "^5.59.20",
"@tanstack/react-query-devtools": "^5.59.20",
"@tanstack/react-query-next-experimental": "^5.59.20",
"@auth/core": "^0.37.4",
"@fontsource/poppins": "^5.1.1",
"@mui/icons-material": "latest-v5",
"@mui/material": "latest-v5",
"@tailwindcss/forms": "^0.5.10",
"@tanstack/react-query": "^5.64.2",
"@tanstack/react-query-devtools": "^5.64.2",
"@tanstack/react-query-next-experimental": "^5.64.2",
"autoprefixer": "^10.4.20",
"formik": "^2.4.6",
"next": "^15.1.2",
"next-auth": "5.0.0-beta.16",
"next": "^15.1.5",
"next-auth": "5.0.0-beta.25",
"picocolors": "^1.1.1",
"postcss": "^8.4.47",
"ra-i18n-polyglot": "^5.3.3",
"ra-language-english": "^5.3.3",
"ra-language-french": "^5.3.3",
"ra-ui-materialui": "^5.3.3",
"react": "^18.3.1",
"react-admin": "^5.3.3",
"react-dom": "^18.3.1",
"react-hook-form": "^7.53.2",
"react-spinners": "^0.14.1",
"postcss": "^8.5.1",
"ra-i18n-polyglot": "^5.4.4",
"ra-language-english": "^5.4.4",
"ra-language-french": "^5.4.4",
"ra-ui-materialui": "^5.4.4",
"react": "^19.0.0",
"react-admin": "^5.4.4",
"react-dom": "^19.0.0",
"react-hook-form": "^7.54.2",
"react-spinners": "^0.15.0",
"sharp": "^0.33.5",
"slugify": "^1.6.6",
"tailwindcss": "^3.4.14",
"yup": "^1.4.0"
"tailwindcss": "^3.4.17",
"yup": "^1.6.1"
},
"devDependencies": {
"@babel/core": "^7.26.0",
"@playwright/test": "^1.48.2",
"@playwright/test": "^1.49.1",
"@popperjs/core": "^2.11.8",
"@types/node": "^22.9.0",
"@types/react": "^18.3.12",
"@types/react-dom": "^18.3.1",
"eslint": "^9.14.0",
"eslint-config-next": "^15.0.3",
"typescript": "^5.6.3"
},
"peerDependencies": {
"@babel/core": "^7.19.0",
"@popperjs/core": "^2.11.6"
"@types/node": "^22.10.7",
"@types/react": "^19.0.7",
"@types/react-dom": "^19.0.3",
"eslint": "^9.18.0",
"eslint-config-next": "^15.1.5",
"typescript": "^5.7.3"
},
"packageManager": "[email protected]+sha512.cce0f9de9c5a7c95bef944169cc5dfe8741abfb145078c0d508b868056848a87c81e626246cb60967cbd7fd29a6c062ef73ff840d96b3c86c40ac92cf4a813ee"
}
Loading
Loading