Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

💄 New client and New Server #109

Merged
merged 12 commits into from
Nov 8, 2024
Merged

💄 New client and New Server #109

merged 12 commits into from
Nov 8, 2024

Conversation

Carolinedanslesnuages
Copy link
Collaborator

@Carolinedanslesnuages Carolinedanslesnuages commented Oct 25, 2024

Lancer la branche feat/refacto_api

Étapes à suivre

1. Lancement des conteneurs Docker

Depuis la racine du projet, exécutez les commandes suivantes pour arrêter et reconstruire les conteneurs Docker :

docker-compose down
docker-compose up --build

2. Accès aux interfaces

3. Vérification de la configuration Keycloak

Avant de tester l'application, assurez-vous que votre realm est créé dans l'interface Keycloak. Le nom du realm doit être référentiel-applications.

Vérifiez également que l'utilisateur new-user existe dans le client : referentiel-applications de ce realm.

4. Tester l'ajout d'une application via Swagger

Pour tester l'ajout d'une nouvelle application, utilisez l'endpoint POST /api/v2/applications de l'API.

Exemple de corps de la requête :

{
  "label": "TEST",
  "shortname": "TST",
  "logo": "https://exemple.com/logo.png",
  "description": "Description de l'application",
  "url": "https://exemple.com",
  "uri": "application-uri",
  "purposes": ["Gestion des utilisateurs", "Collecte de données", "Recherche"],
  "tags": ["Sécurité", "Gestion"],
  "parentId": null,
  "lifecycle": {
    "status": "under_construction",
    "firstProductionDate": "2023-01-01",
    "plannedDecommissioningDate": "2025-12-31"
  },
  "acteurs": [
    {
      "role": "admin",
      "userId": "f15d1c13-8198-4ca5-a180-94656e20d568",
      "organizationId": null
    }
  ],
  "compliances": [
    {
      "type": "standard",
      "name": "Compliance Name",
      "status": "compliant",
      "validityStart": "2023-01-01",
      "validityEnd": "2023-12-31",
      "scoreValue": "85",
      "scoreUnit": "percent",
      "notes": "Conforme aux réglementations"
    }
  ],
  "ownerId": "of15d1c13-8198-4ca5-a180-94656e20d568"
}

5. Connexion à l'interface

Si l'utilisateur existe, connectez-vous à l'interface front-end à l'adresse http://localhost:5173/ en utilisant les identifiants suivants :

  • Nom d'utilisateur : new-user
  • Mot de passe : admin

Une fois connecté, vous pouvez effectuer des recherches au sein de l'application et acceder à une fiche produit de l'application.

{
name: routeNames.SIGNIN,
path: '/se-connecter',
component: () => import('@/views/login.vue'),
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
component: () => import('@/views/login.vue'),
component: () => import('@/views/Login.vue'),

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

ok je m'en occupe.
merci

KEYCLOAK_CLIENT_SECRET="client secret"
KEYCLOAK_PASSWORD_USR=password

KEYCLOAK_PUBLIC_KEY="keyckloak public key"
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
KEYCLOAK_PUBLIC_KEY="keyckloak public key"
KEYCLOAK_PUBLIC_KEY="keycloak public key"

volumes:
- .:/app
working_dir: /app
entrypoint: sh -c "sleep 10 && npm install -g pnpm && pnpm install && pnpm run start:dev"
Copy link
Collaborator

Choose a reason for hiding this comment

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

Il vaut mieux utiliser un healthcheck plutôt qu'un sleep 10 je pense

- my-network

frontend:
build:
Copy link
Collaborator

Choose a reason for hiding this comment

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

Peux-être un soucis d'indentation ici ?

volumes:
postgres_data:

networks:
Copy link
Collaborator

Choose a reason for hiding this comment

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

Je ne suis pas certain de l'utilité de ce network ? (exemple : https://github.com/dnum-mi/basegun/blob/develop/docker-compose.yml)

KEYCLOAK_ADMIN: admin
KEYCLOAK_ADMIN_PASSWORD: admin
KEYCLOAK_IMPORT: /realm.json
# Fixer la clé secrète
KEYCLOAK_CLIENT_SECRET: xrSK3UlEQcHhqmUXyhlKMKg0fEQPfQBI
ports:
- "8082:8080"
volumes:
- ./temp/realm.json:/realm.json
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
- ./temp/realm.json:/realm.json
- ./realm.json:/realm.json

le fichier realm.json est a la racine

@Carolinedanslesnuages Carolinedanslesnuages linked an issue Nov 6, 2024 that may be closed by this pull request
6 tasks
@Carolinedanslesnuages Carolinedanslesnuages added this to the API FACILE milestone Nov 6, 2024
@CMentG
Copy link
Collaborator

CMentG commented Nov 7, 2024

acteurs est en français il faudrait mettre actors

@thomashbrnrd
Copy link
Collaborator

thomashbrnrd commented Nov 7, 2024

Je vois un fichier client/Dockerfile, et un fichier server/dockerfile.app. Le standard est plutôt Dockerfile. Il faudrait renommer server/dockerfile.app en serveur/Dockerfile. Il faudrait aussi build et utiliser nos images pour le dev en local, et ne pas simplement utiliser des images du Dockerhub et une command d'installation de dépendances et de run.

Exemple de ce que l'on devrait avoir dans le fichier docker-compose.yml (l'adoption d'un fichier compose.yml est encouragée par Docker):

  backend:
    build:
      context: ./serveur
    command: pnpm run start:dev

@thomashbrnrd
Copy link
Collaborator

version: '3.8' dans le fichier docker-compose.yml est déprécié.

@Carolinedanslesnuages Carolinedanslesnuages merged commit 5002633 into dev Nov 8, 2024
@feraudt feraudt deleted the feat/refacto_api branch November 21, 2024 11:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Refactoriser l'api
4 participants