Convertisseur Drupal 6 vers SPIP pour le site web libre à lire
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
François Poulain 41e7200fc1 fix(convert): le champs article.date dans spip doit prendre le champs node.created 3 months ago
drupal2spip_lal fix(convert): le champs article.date dans spip doit prendre le champs node.created 3 months ago
requirements fix(deps): corrige les deps pour une debian buster nue 3 months ago
.editorconfig commit initial 4 months ago
.gitattributes commit initial 4 months ago
.gitignore feat(build): introspecte le schéma de base de donnée de spip 4 months ago
CHANGELOG.md commit initial 4 months ago
CONTRIBUTORS.txt commit initial 4 months ago
LICENSE commit initial 4 months ago
Makefile feat(spip): ajoute la prise en compte d un préfixe de tables 4 months ago
README.md ref(convert): filtrage html directement via le module drupal 3 months ago
config.env.example feat(doc): Dégraissage du README et MaJ du config.env 4 months ago
manage.py commit initial 4 months ago
pyproject.toml feat(lint): configuration des linters 4 months ago
requirements.txt commit initial 4 months ago
setup.cfg feat(lint): configuration des linters 4 months ago

README.md

drupal2spip_lal

Convertisseur Drupal 6 vers SPIP pour le site web libre à lire

Table of content

Installation

Requirements

On a Debian-based host - running at least Debian Stretch, you will need the following packages:

  • python3
  • virtualenv
  • make
  • git (recommended for getting the source)
  • python3-mysqldb (optional, in case of a MySQL / MariaDB database)
  • python3-psycopg2 (optional, in case of a PostgreSQL database)

Let’s go

On a Debian-based host - running at least Debian Stretch:

$ sudo apt install python3 virtualenv git make
$ git clone https://forge.april.org/siteweb/drupal2spip_lal
$ cd drupal2spip_lal/
$ make init

A configuration will be created interactively; uncomment

ENV=development

And set:

  • DRUPAL_FQDN
  • DRUPAL_DATABASE_URL
  • SPIP_DATABASE_URL
  • SPIP_TABLES_PREFIX
  • SPIP_LOGO_DIR

Then try:

$ make inspectdb
$ make check

Usage

See:

$ venv/bin/python manage.py import --help

That’s it!

Structure

Overview

All the application files - e.g. Django code including settings, templates and statics - are located into drupal2spip_lal/.

Two environments are defined - either for requirements and settings:

  • development: for local application development and testing. It uses a SQLite3 database and enable debugging by default, add some useful settings and applications for development purpose - i.e. the django-debug-toolbar.
  • production: for production. Unused here.

Local changes

You can override and extend statics and templates locally. This can be useful if you have to change the logo for a specific instance for example. For that, just put your files under the local/static/ and local/templates/ folders.

Regarding the statics, do not forget to collect them after that. Note also that the local/ folder is ignored by git.

Variable content

All the variable content - e.g. user-uploaded media, collected statics - are stored inside the var/ folder. It is also ignored by git as it’s specific to each application installation.

So, you will have to configure your Web server to serve the var/media/ and var/static/ folders, which should point to /media/ and /static/, respectively.

Development

The easiest way to deploy a development environment is by using the Makefile.

Before running make init, ensure that you have either set ENV=development in the config.env file or have this environment variable. Note that you can still change this variable later and run make init again.

There is some additional rules when developing, which are mainly wrappers for manage.py. You can list all of them by running make help. Here are the main ones:

  • make serve: run a development server
  • make test: test the whole application
  • make lint: check the Python code syntax

License

drupal2spip_lal is developed by François Poulain (April) and licensed under the AGPLv3+. Its basis comes from https://forge.cliss21.org/cliss21/cookiecutter-django/

It embed code from Drupal 6 in drupal2spip_lal/base/php. This code is licensed under the GPLv2+.