Skip to content

Commit

Permalink
Merge branch 'master' into gladys-4-32-release
Browse files Browse the repository at this point in the history
  • Loading branch information
Pierre-Gilles committed Dec 11, 2023
2 parents 9ddbfef + d8bd69d commit 9488e17
Show file tree
Hide file tree
Showing 5 changed files with 105 additions and 55 deletions.
30 changes: 26 additions & 4 deletions docs/dev/1_mac-linux.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,18 @@ The server is a Node.js backend.

You'll need:

- Node.js 18 LTS ([Download](https://nodejs.org/en/download/))
- sqlite3 ([sqlite in Homebrew](https://formulae.brew.sh/formula/sqlite) on MacOS, `sudo apt install sqlite3` on Ubuntu/Debian)
- openssl ([OpenSSL 3 in Homebrew](https://formulae.brew.sh/formula/openssl@3) on MacOS, `sudo apt install openssl` on Ubuntu/Debian)
- Node.js 18 LTS ([Download](https://nodejs.org/en/download/) on MacOs).
- Node.js 18 LTS on Ubuntu/Debian:

```bash
curl -sLO https://deb.nodesource.com/nsolid_setup_deb.sh
sudo bash nsolid_setup_deb.sh 18
sudo apt install nodejs -y
```
Alternatively you can use [nvm](https://github.com/nvm-sh/nvm) to install and manage nodejs version.

- sqlite3 ([sqlite in Homebrew](https://formulae.brew.sh/formula/sqlite) on MacOS, `sudo apt install sqlite3` on Ubuntu/Debian).
- Openssl ([OpenSSL 3 in Homebrew](https://formulae.brew.sh/formula/openssl@3) on MacOS, `sudo apt install openssl` on Ubuntu/Debian).

### Clone Gladys Git repo

Expand All @@ -36,12 +45,25 @@ As you probaly don't need to run every single integration when developing, we re
INSTALL_SERVICES_SILENT_FAIL=true
```

Then run:
To create the `.env` file with the previous content:

```bash
echo "INSTALL_SERVICES_SILENT_FAIL=true" > .env
```

Then you can install server dependencies:

```
npm install
```


### Run DB migration

```
npm run db-migrate:dev
```

### Start the server

```
Expand Down
35 changes: 20 additions & 15 deletions docs/dev/2_windows.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,19 +39,18 @@ sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y

- Libraries installation:

```bash
sudo apt install sqlite3 make g++ git coreutils tzdata nmap openssl gzip udev -y
```
```bash
sudo apt install sqlite3 make g++ git coreutils tzdata nmap openssl gzip udev -y
```

- Node.js 18 Installation:

```bash
curl -sL https://deb.nodesource.com/setup_18.x -o nodesource_setup.sh
sudo bash nodesource_setup.sh
sudo apt install nodejs -y
```

Alternatively you can use [nvm](https://github.com/nvm-sh/nvm) to install and manage nodejs version.
```bash
curl -sLO https://deb.nodesource.com/nsolid_setup_deb.sh
sudo bash nsolid_setup_deb.sh 18
sudo apt install nodejs -y
```
Alternatively you can use [nvm](https://github.com/nvm-sh/nvm) to install and manage nodejs version.

## Server

Expand All @@ -75,13 +74,19 @@ As you probaly don't need to run every single integration when developing, we re
INSTALL_SERVICES_SILENT_FAIL=true
```

To create the `.env` file with the previous content:

```bash
echo "INSTALL_SERVICES_SILENT_FAIL=true" > .env
```

Then you can install server dependencies:

```
npm install
```

### Start DB migration
### Run DB migration

```
npm run db-migrate:dev
Expand Down Expand Up @@ -127,14 +132,14 @@ And run:
npm test
```

This will run Eslint + mocha tests. As it's painful to run eslint everytime, you can do:
This will run Mocha tests.

You can run the linter with:

```
npm run test-without-lint
npm run eslint
```

If you want to run only mocha tests.

## Start server tests only for a single service

To run the tests just for a single service, go to the `server` folder and run the command:
Expand Down
49 changes: 34 additions & 15 deletions i18n/fr/docusaurus-plugin-content-docs/current/dev/1_mac-linux.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,20 @@ Le backend est une serveur Node.js.

### Installer les dépendances systèmes nécessaires

Comme prérequis système, il vous faut:
Comme prérequis système, il vous faut :

- Node.js 18 LTS ([Télécharger](https://nodejs.org/en/download/))
- sqlite3 ([sqlite Homebrew](https://formulae.brew.sh/formula/sqlite) sur MacOS, `sudo apt install sqlite3` sur Ubuntu/Debian)
- openssl ([OpenSSL 3 Homebrew](https://formulae.brew.sh/formula/openssl@3) sur MacOS, `sudo apt install openssl` sur Ubuntu/Debian)
- Node.js 18 LTS ([Télécharger](https://nodejs.org/en/download/)) sur MacOs.
Sur Ubuntu/Debian :
```bash
curl -sLO https://deb.nodesource.com/nsolid_setup_deb.sh
sudo bash nsolid_setup_deb.sh 18
sudo apt install nodejs -y
```

Alternative, vous pouvez utilisez [nvm](https://github.com/nvm-sh/nvm) pour installer et gérer les versions de nodejs installées.

- sqlite3 ([sqlite Homebrew](https://formulae.brew.sh/formula/sqlite) sur MacOS, `sudo apt install sqlite3` sur Ubuntu/Debian).
- openssl ([OpenSSL 3 Homebrew](https://formulae.brew.sh/formula/openssl@3) sur MacOS, `sudo apt install openssl` sur Ubuntu/Debian).

### Cloner le repo Gladys

Expand All @@ -32,14 +41,18 @@ cd server

Lorsque vous installez les dépendances serveurs, Gladys va installer toutes les dépendances, y compris celles des intégrations.

Lorsque vous développez sur votre machine, vous n'avez pas forcément besoin d'installer toutes les intégrations car certaines ne sont que compatibles Linux (et vous développez probablement sur MacOS ou Windows).

Nous vous recommandons de créer un fichier `.env` dans le dossier `server` avec le contenu suivant :
Lorsque vous développez sur votre machine, vous n'avez pas forcément besoin d'installer toutes les intégrations, nous vous recommandons de créer un fichier `.env` dans le dossier `server` avec le contenu suivant :

```
INSTALL_SERVICES_SILENT_FAIL=true
```

Pour créer le fichier `.env` avec le contenu précédent :

```bash
echo "INSTALL_SERVICES_SILENT_FAIL=true" > .env
```

Ce qui va indiquer à Gladys que l'installation des intégrations n'est pas obligatoire pour développer.

Ensuite lancez :
Expand All @@ -48,17 +61,23 @@ Ensuite lancez :
npm install
```

### Lancer le serveur
### Lancer la migration de DB

```
npm run db-migrate:dev
```

### Démarrer le serveur

```
npm start
```

Le serveur devrait être accessible à http://localhost:1443.
Le serveur devrait être accessible à `http://localhost:1443`.

## Le frontend

A la racine du repo git, faites:
A la racine du repo git, faites :

```
cd front
Expand All @@ -70,35 +89,35 @@ cd front
npm install
```

### Lancer le frontend
### Démarrer le frontend

```
npm start
```

Le frontend devrait être accessible à http://localhost:1444.
Le frontend devrait être accessible à `http://localhost:1444`.

## Lancer les tests serveurs

Placez vous dans le dossier `server`.

Lancez:
Lancez :

```
npm test
```

Ce qui va lancer les tests mochas.

Pour faire tourner le linter:
Pour faire tourner le linter :

```
npm run eslint
```

## Lancer les tests d'un seul service

Pour lancer les tests d'un seul service, placez vous dans le dossier `server`, et lancez la commande:
Pour lancer les tests d'un seul service, placez vous dans le dossier `server`, et lancez la commande :

```
npm run test-service --service=tasmota
Expand Down
36 changes: 20 additions & 16 deletions i18n/fr/docusaurus-plugin-content-docs/current/dev/2_windows.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,13 +31,13 @@ La première fois Ubuntu vous demandera de créer un utilisateur.

### Dépendences systèmes

La première étape est de mettre à jour la distribution:
La première étape est de mettre à jour la distribution :

```bash
sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y
```

- Installation des outils/librairies:
- Installation des outils/librairies :

```bash
sudo apt install sqlite3 make g++ git coreutils tzdata nmap openssl gzip udev -y
Expand All @@ -46,8 +46,8 @@ sudo apt install sqlite3 make g++ git coreutils tzdata nmap openssl gzip udev -y
- Installation de Node.js 18:

```bash
curl -sL https://deb.nodesource.com/setup_18.x -o nodesource_setup.sh
sudo bash nodesource_setup.sh
curl -sLO https://deb.nodesource.com/nsolid_setup_deb.sh
sudo bash nsolid_setup_deb.sh 18
sudo apt install nodejs -y
```

Expand All @@ -71,14 +71,18 @@ cd server

Lorsque vous installez les dépendances serveurs, Gladys va installer toutes les dépendances, y compris celles des intégrations.

Lorsque vous développez sur votre machine, vous n'avez pas forcément besoin d'installer toutes les intégrations car certaines ne sont que compatibles Linux.

Nous vous recommandons de créer un fichier `.env` dans le dossier `server` avec le contenu suivant :
Lorsque vous développez sur votre machine, vous n'avez pas forcément besoin d'installer toutes les intégrations, nous vous recommandons de créer un fichier `.env` dans le dossier `server` avec le contenu suivant :

```
INSTALL_SERVICES_SILENT_FAIL=true
```

Pour créer le fichier `.env` avec le contenu précédent :

```bash
echo "INSTALL_SERVICES_SILENT_FAIL=true" > .env
```

Ce qui va indiquer à Gladys que l'installation des intégrations n'est pas obligatoire pour développer.

Ensuite lancez :
Expand All @@ -93,7 +97,7 @@ npm install
npm run db-migrate:dev
```

### Lancer le serveur
### Démarrer le serveur

```
npm start
Expand All @@ -103,7 +107,7 @@ Le serveur devrait être accessible à `http://localhost:1443`.

## Le frontend

A la racine du repo git, faites:
A la racine du repo git, faites :

```
cd front
Expand All @@ -115,7 +119,7 @@ cd front
npm install
```

### Lancer le frontend
### Démarrer le frontend

```
npm start
Expand All @@ -127,31 +131,31 @@ Le frontend devrait être accessible à `http://localhost:1444`.

Placez vous dans le dossier `server`.

Lancez:
Lancez :

```
npm test
```

Ce qui va lancer ESLint + les tests Mocha.
Ce qui va lancer les tests mochas.

Comme c'est un peu lourd de lancer ESLint à chaque fois que vous lancez un test, il est possible de lancer les tests Mocha uniquement avec la commande suivante :
Pour faire tourner le linter :

```
npm run test-without-lint
npm run eslint
```

## Lancer les tests d'un seul service

Pour lancer les tests d'un seul service, placez vous dans le dossier `server`, et lancez la commande:
Pour lancer les tests d'un seul service, placez vous dans le dossier `server`, et lancez la commande :

```
npm run test-service --service=tasmota
```

## Lancer VSCode

Vous pouvez lancer Visual Studio Code depuis ubuntu avec cette commande:
Vous pouvez lancer Visual Studio Code depuis ubuntu avec cette commande :

```
code .
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Nous utilisons [Cypress](https://www.cypress.io/) pour faire des tests frontend

## Lancer le backend

Dans le dossier `server`, exécutez:
Dans le dossier `server`, exécutez :

```
npm run cypress
Expand All @@ -18,27 +18,27 @@ Cela va créer une base de donnée SQlite vide et lancer un backend.

## Ouvrir Cypress

Dans le dossier `front`, lancez un front Gladys:
Dans le dossier `front`, lancez un front Gladys :

```
npm run start:cypress
```

Puis, vous pouvez lancer Cypress:
Puis, vous pouvez lancer Cypress :

```
npm run cypress:open
```

Ce qui va lancer l'application Electron Cypress.

Ensuite, vous pouvez lancer les tests dans votre navigateur:
Ensuite, vous pouvez lancer les tests dans votre navigateur :

![Cypress Electron app](../../../../../static/img/docs/en/dev/cypress-open.png)

## Lancer les tests en ligne de commande

Il est aussi possible de lancer Cypress en ligne de commande:
Il est aussi possible de lancer Cypress en ligne de commande :

```
npm run cypress:run
Expand Down

0 comments on commit 9488e17

Please sign in to comment.