Avant de lancer le back, il est nécessaire d'installer les dépendances suivantes :
- Mettre à jour les packages
sudo apt update && sudo apt upgrade- installer php8.1
sudo apt install php8.1- installer les extensions mbstring, curl et postgresql
sudo apt install php8.1-mbstring php8.1-curl php8.1-pgsql php8.1-pdo-pgsql php8.1-dom php8.1-xmlPlus d'info : https://www.php.net/downloads
- Installer composer
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"- Le rendre accessible depuis n'importe quel directory :
sudo mv composer.phar /usr/local/bin/composerPlus d'info : https://getcomposer.org/download/
- Mise à jour de l'index des paquets apt et des paquets d'installation pour permettre à apt d'utiliser un dépôt via HTTPS :
$ sudo apt-get update
$ sudo apt-get install \
ca-certificates \
curl \
gnupg- Ajout des clé GPG officiel de docker :
$ sudo mkdir -m 0755 -p /etc/apt/keyrings
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg- Utilisez la commande suivante pour configurer le repo :
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullsudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginPlus d'info : https://docs.docker.com/engine/install/
cp .env.example .envPour cela, il est nécessaire de créer un compte mail sur n'importe quel plateforme et de modifier les informations du .env
MAIL_MAILER=smtp
MAIL_HOST=smtp.office365.com
MAIL_PORT=587
MAIL_USERNAME={test-mail@outlook.com}
MAIL_PASSWORD={MotDePasse}
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS={test-mail@domain.com}
MAIL_FROM_NAME="Votre nom"Assurez vous que le compte utilisé ne possède pas la double authentification
- Connectez-vous à la console des développeurs Google à l'adresse suivante : https://console.developers.google.com/
- Créez un nouveau projet en cliquant sur le bouton "Sélectionner un projet" en haut de la page et en cliquant sur "Nouveau projet" dans la fenêtre qui apparaît.
- Donnez un nom à votre projet et cliquez sur "Créer".
- Dans la colonne de gauche, cliquez sur "Identifiants".
- Dans l'onglet "Identifiants", cliquez sur le bouton "Créer des identifiants" et sélectionnez "ID client OAuth".
- Sélectionnez "Application Web" comme type de client.
- Dans la section "Origines autorisées", ajoutez l'URI de redirection pour votre application Laravel (http://localhost:80/auth/google/callback).
- Dans la section "URI de redirection autorisées", ajoutez l'URI de redirection pour votre application web (WEBAPP_REDIRECT_URI).
- Cliquez sur "Créer" pour créer votre ID client.
- Copiez l'ID client et le secret client et utilisez-les pour remplir les variables d'environnement GOOGLE_CLIENT_ID et GOOGLE_CLIENT_SECRET dans le fichier .env de votre application Laravel.
- Utilisez l'URI de redirection pour votre application Laravel (http://localhost:80/auth/google/callback) pour remplir la variable d'environnement GOOGLE_REDIRECT_URI dans le fichier .env de votre application Laravel.
- Utilisez l'URI de redirection pour votre application web (WEBAPP_REDIRECT_URI) pour remplir la variable d'environnement WEBAPP_REDIRECT_URI dans le fichier .env de votre application Laravel.
Les variables d'environnements à modifiés sont donc celles-ci :
GOOGLE_CLIENT_ID={GOOGLE_CLIENT_API}
GOOGLE_CLIENT_ID={GOOGLE_CLIENT_API}
GOOGLE_CLIENT_SECRET={GOOGLE_CLIENT_SECRET}
WEBAPP_REDIRECT_URI={WEBAPP_REDIRECT_URI}La variable d'environnement WEBAPP_REDIRECT_URI doit être set de la façon suivante :
WEBAPP_REDIRECT_URI=http://localhost:3000/REDIRECTED_URL_MAIL=http://localhost:3000/workspacesDB_CONNECTION=postgresql
DB_HOST=172.21.73.3
DB_PORT=5432
DB_DATABASE=simplyteam
DB_USERNAME=postgres
DB_PASSWORD=postgres**! EN CAS D'ERREUR **
169▕ // If the configuration doesn't exist, we'll throw an exception and bail.
170▕ $connections = $this->app['config']['database.connections'];
171▕
172▕ if (is_null($config = Arr::get($connections, $name))) {
➜ 173▕ throw new InvalidArgumentException("Database connection [{$name}] not configured.");
174▕ }
175▕
176▕ return (new ConfigurationUrlParser)
177▕ ->parseConfiguration($config);Remplacez :
DB_CONNECTION=postgresqlpar
DB_CONNECTION=pgsqlAfin d'installer toutes les dépendances nécessaire, il suffit simplement de lancer la commande :
composer installsudo docker compose up -dphp artisan migratephp artisan key:generatephp artisan passport:installphp artisan test --env=.env!ATTENTION A BIEN RELANCER LA COMMANDE PASSPORT:INSTALL APRES LE LANCEMENT DES TESTS!
POUR INFORMATION, LES TESTS ECRASENT LA BASE DE DONNEE SI CELLE-CI EST IDENTIQUE
Nous recommandons donc de créer un nouveau conteneur postgres de test dans docker-composer de façon à s'en servir pour tester les requêtes.
A cette version, il y a 3 erreurs qui peuvent apparaitre lors de l'exécution des tests, cela est dû à un merge d'une branche qui n'a pas mis à jour les tests. En aucun cas c'est une méthode qui ne marche pas. Les modifications devraient arrivé d'ici vendredi prochain
Se fier au fichier commandUseToFix.md