From f4213c1cfc86e95e6bde2ba3842cb648a72821d9 Mon Sep 17 00:00:00 2001 From: lionsdev Date: Fri, 24 Apr 2026 18:08:02 +0000 Subject: [PATCH] =?UTF-8?q?docs:=20Quarkus=203.15.1=E2=86=923.27.3=20LTS,?= =?UTF-8?q?=20Java=2017=E2=86=9221,=20section=20D=C3=A9ploiement=20lionsct?= =?UTF-8?q?l=20pipeline=20(repo=20btpxpress-backend,=20uber-jar,=20probes?= =?UTF-8?q?=20longues)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 40 +++++++++++++++++++++++++++++++++------- 1 file changed, 33 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 62d3b47..aa9af41 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ **Backend REST API pour la gestion complète d'entreprises BTP** -[![Quarkus](https://img.shields.io/badge/Quarkus-3.15.1-blue)](https://quarkus.io/) -[![Java](https://img.shields.io/badge/Java-17-orange)](https://openjdk.org/) +[![Quarkus](https://img.shields.io/badge/Quarkus-3.27.3_LTS-blue)](https://quarkus.io/) +[![Java](https://img.shields.io/badge/Java-21-orange)](https://openjdk.org/) [![PostgreSQL](https://img.shields.io/badge/PostgreSQL-15-blue)](https://www.postgresql.org/) [![License](https://img.shields.io/badge/License-MIT-green)](../LICENSE) @@ -44,9 +44,10 @@ BTPXpress Backend est une **API REST complète** construite avec **Quarkus** pou ## 🛠️ Technologies ### **Framework & Runtime** -- **Quarkus 3.15.1** - Framework Java supersonic subatomic -- **Java 17 LTS** - Langage de programmation +- **Quarkus 3.27.3 LTS** - Framework Java supersonic subatomic +- **Java 21 LTS** - Langage de programmation - **Maven 3.9.6** - Gestion des dépendances +- **Packaging** : `quarkus.package.type=uber-jar` (voir `src/main/resources/application.properties`) ### **Persistance** - **Hibernate ORM Panache** - ORM simplifié @@ -119,7 +120,7 @@ btpxpress-server/ ### **Prérequis** -- ✅ **Java 17** ou supérieur ([OpenJDK](https://openjdk.org/)) +- ✅ **Java 21** ou supérieur ([OpenJDK](https://openjdk.org/)) - ✅ **Maven 3.9+** ([Apache Maven](https://maven.apache.org/)) - ✅ **PostgreSQL 15** (production) ou H2 (dev) - ✅ **Keycloak** (pour l'authentification) @@ -127,7 +128,7 @@ btpxpress-server/ ### **Vérifier les prérequis** ```bash -java -version # Doit afficher Java 17+ +java -version # Doit afficher Java 21+ mvn -version # Doit afficher Maven 3.9+ psql --version # Doit afficher PostgreSQL 15+ ``` @@ -341,6 +342,31 @@ MIT License - Voir [LICENSE](../LICENSE) --- +## 🚀 Déploiement (lionsctl) + +Le repo Gitea est publié sous le nom **`btpxpress-backend`** (pas `btpxpress-server`). + +```bash +lionsctl pipeline \ + -u https://git.lions.dev/lionsdev/btpxpress-backend \ + -b main -j 21 -e production -c k1 -p prod +``` + +**Pipeline** : clone → `mvn package -P prod` → `docker build -f Dockerfile` → push `registry.lions.dev` → `kubectl apply` → health check + +**URL prod** : `https://api.lions.dev/btpxpress` + +**Pré-requis infrastructure** (migration Helm → lionsctl) : +- `Dockerfile` racine (uber-jar : `FROM ubi8/openjdk-21:1.21` + `COPY target/*-runner.jar`, UID 1001) +- `.dockerignore` : `target/*` + `!target/*-runner.jar` +- Secret K8s `btpxpress-server-db-secret` (créé depuis `lions-shared-db-secret` : user `lionsuser`, DB `btpxpress` owned by `lionsuser`) +- `QUARKUS_DATASOURCE_JDBC_URL=jdbc:postgresql://postgresql-service.postgresql.svc.cluster.local:5432/btpxpress` override +- Probes longues : `initialDelaySeconds=120`, `failureThreshold=6` (startup ~82s) +- Deployment Helm existant supprimé au préalable (selector immutable) +- Service selector à repatcher après pipeline (retirer labels `app.kubernetes.io/*`) + +--- + ## 👥 Auteurs **BTPXpress Team** @@ -356,6 +382,6 @@ MIT License - Voir [LICENSE](../LICENSE) --- -**Dernière mise à jour**: 2025-09-30 +**Dernière mise à jour**: 2026-04-24 (Quarkus 3.27.3 LTS + lionsctl pipeline migration) **Version**: 1.0.0