Le site Planthoppers FLOW website date d'une trentaine d'années; suite à des départs de personnes et un manque de documentation, la maintenance n'est plus assurée.
Dans le cadre du projet DATAK, l'objectif est de parer au plus urgent en matière d'architecture et de documentation afin que le site puisse être déployé facilement sur des plateformes modernes.
Actuellement seule la page d'accueil est fonctionnelle. Reste à intégrer les multiples scripts dans les sous-répertoires de cgi-bin, ajuster les chemins, essayer de séparer les couches métier/javascript/database, etc.
TO BE CONTINUED -- WORK IN PROGRESS.
Un serveur Postgresql avec une database flow
et une database traduction_utf8
, chargées avec les
fichier SQL du répertoire dumps
.
Les credentials de connexion (login, passwd) sont dans le fichier flow_conf.yaml
à la racine du repository --
ajustez pour votre environnement.
Le fichier cpanfile
contient la liste des modules Perl nécessaires pour le fonctionnement de l'appli.
La commande ci-dessous installe toutes les dépendances.
cpanm --installdeps .
plackup flow.psgi # lance un serveur local, par défaut sur port 5000
Visiter la page http://localhost:5000/flow
Un autre port peut être spécifié :
plackup -p 4999 flow.psgi
To simplify the installation you can also use Docker containers.
Docker must be installed on you system.
To launch the database and the server containers:
docker-compose up -d
Create the databases:
# Create the databases
docker exec -it flow_postgres_container psql -U postgres -c "CREATE DATABASE flow;"
docker exec -it flow_postgres_container psql -U postgres -c "CREATE DATABASE traduction_utf8;"
# import the dumps
docker exec -i flow_postgres_container psql -U postgres -d flow < ./dumps/flow.sql
docker exec -i flow_postgres_container psql -U postgres -d traduction_utf8 < ./dumps/traduction_utf8.sql
Site can be found at
Example query (adapt url and port to your instance)
PGPASSWORD=[YOUR-PASSWORD] psql -h db.qykgrbswttjovptkiqtg.supabase.co -p 5432 -d postgres -U postgres -f ./dumps/flow.sql
At root add a file deploy.flow_conf.yaml
with config of the production environment.
Then flyctl deploy
will deploy to fly.io using the Dockerfile.
Fly documentation: https://fly.io/docs/languages-and-frameworks/dockerfile/