Skip to content

Latest commit

 

History

History
127 lines (93 loc) · 3.47 KB

INSTALL.md

File metadata and controls

127 lines (93 loc) · 3.47 KB

Prérequis

Vous devez au préalable avoir correctement installé les logiciels suivants :

⚠️ Les versions indiquées sont celles utilisées et préconisées par l'équipe de développement. Il est possible que l'application fonctionne avec des versions différentes.

Airtable

Pix Editor utilise Airtable. La structure de la base peut être fournie en contactant l'équipe de développement.

Naviguer dans votre "developer hub". Générer un access token avec les droits suivant :

data.records:read
data.records:write

Donner l'accès à la base qui contient votre schéma dupliqué. Une fois la base dupliquée, utilisez un compte nominatif pour générer un personal access token.

Récupérer le code source

git clone git@github.com:1024pix/pix-editor.git && cd pix-editor

Initialiser la configuration (fichier .env)

Initialiser la configuration à partir du template :

cp api/sample.env api/.env

Modifier la configuration en modifiant le fichier .env:

  • renseigner les variables obligatoires, illustrées d'un 🔴 ;
  • prendre connaissance des autres et les modifier si besoin.

Installer les dépendances

Se placer sur la bonne version de Node en utilisant nvm :

nvm use

Puis, depuis la racine du projet :

(cd api && npm ci)
(cd pix-editor && npm ci)

Base de données et cache

Lancer, configurer et initialiser la base de données :

docker-compose up -d
(cd api && npm run db:reset)

Lancer l'application

Dans un premier processus ou terminal, depuis le répertoire racine :

(cd api && npm start)

Dans un second processus ou terminal, toujours depuis le répertoire racine :

(cd pix-editor && npm start)

Accéder à l'application

Récupérer l'un des 2 tokens de connexion disponibles dans le fichier de seeds :

  • defaultEditorUserApiKey : rôle éditeur;
  • adminUserApiKey : rôle administrateur.

Accéder à l'IHM. Renseigner le token de connexion et vérifier que la page d'accueil s'affiche.

Créer un utilisateur

CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
INSERT INTO users (name, trigram, "apiKey", access) VALUES ('Compte de service', 'ADM',  uuid_generate_v1(), 'admin');
select "apiKey" from users where trigram = 'ADM';

Vous obtenez un token, ici b00d647e-1cb2-11ee-adb2-0242ac11003e

Activer les attachments (image, fichier)

OVH

Créer un bucket Swift sur OVH (les buckets S3 ne sont pas supportés)

Lui ajouter la métadonnée permettant d'honorer la politique CORS, en ligne de commande uniquement https://help.ovhcloud.com/csm/fr-public-cloud-storage-pcs-cors?id=kb_article_view&sysparm_article=KB0047095

Exemple sur le bucket lcms-attachments-swift

swift post -H 'X-Container-Meta-Access-Control-Allow-Origin: *' lcms-attachments-swift
swift stat lcms-attachments-swift

Vérifier

Container: lcms-attachments-swift
(..)
Sync Key: Meta Access-Control-Allow-Origin: *
(..)

Configurer l'API via les variables d'environnement

STORAGE_POST=
STORAGE_TENANT=
STORAGE_USER=
STORAGE_PASSWORD=
STORAGE_AUTH=
STORAGE_BUCKET=