Author: acheype Date: 2017-08-09 09:34:34 +0200 (Wed, 09 Aug 2017) New Revision: 279 Url: http://forge.codelutin.com/projects/cantharella/repository/revisions/279 Log: Improve the docker deployment and update this section in the README.md Added: trunk/docker/docker-compose-prod.yml Removed: trunk/docker/cantharella-db/create_db.sql trunk/docker/cantharella-db/docker-entrypoint-initdb.d/sql/ Modified: trunk/README.md trunk/README.txt trunk/cantharella.data/README.txt trunk/cantharella.service/README.txt trunk/cantharella.utils/README.txt trunk/cantharella.web/README.txt trunk/docker/cantharella-db/docker-entrypoint-initdb.d/init-cantharella-db.sh trunk/docker/docker-compose.yml trunk/sql/create_db.sql Modified: trunk/README.md =================================================================== --- trunk/README.md 2017-08-03 03:12:39 UTC (rev 278) +++ trunk/README.md 2017-08-09 07:34:34 UTC (rev 279) @@ -1,11 +1,10 @@ # Cantharella -*The GitHub repository in only a mirror of [the one hosted by Code Lutin](https://forge.codelutin -.com/projects/cantharella).* +*The GitHub repository in only a mirror of [the one hosted by Code Lutin](https://forge.codelutin.com/projects/cantharella).* The information system (IS) Cantharella: Pharmacochemical database of natural substances, designed and developed by -IRD (www.ird.fr), share and sustain pharmacochemical data of all organisms collected for the study of their natural -substances, with a controlled access via internet. +[IRD](http://www.ird.fr), share and sustain pharmacochemical data of all organisms collected for the study of their +natural substances, with a controlled access via internet. The IS provides access to harvest and taxonomic data, monitor various chemical processes of extraction and purification, and finally centralize all biological activities. The database is progressive according to the extraction and purification methods needed and the biological tests performed. @@ -36,20 +35,20 @@ Cantharella is dependent to some librairies from another open source projects. This is the list of the dependencies and their licenses. - - Apache Commons (http://commons.apache.org), under the Apache License 2.0 - - JUnit (www.junit.org), under the Common Public License 1.0 - - ICU4J (http://www.icu-project.org), under the ICU License (compatible with GNU GPL) - - Log4j (http://logging.apache.org/log4j), under the Apache License 2.0 - - SFL4J (http://www.slf4j.org), under the MIT license - - AspectJ (http://www.eclipse.org/aspectj), under the Common Public License 1.0 - - Spring (http://www.springsource.org), under the Apache License 2.0 - - Javassist (http://www.jboss.org/javassist), under the GNU Lesser General Public License 2.1 - - Cglib (http://cglib.sourceforge.net), under the Apache License 1.1 - - Hibernate (http://www.hibernate.org), under the GNU Lesser General Public License 2.1 - - POI (http://poi.apache.org), under the Apache License 2.0 - - Wicket (http://wicket.apache.org), under the Apache License 2.0 - - PostgreSQL JDBC Driver (http://jdbc.postgresql.org), under the BSD License (same as the SGBD) - - ChemDoodle Web Components (http://web.chemdoodle.com), under GNU General Public License, version 3.0 + - [Apache Commons](http://commons.apache.org), under the Apache License 2.0 + - [JUnit](www.junit.org), under the Common Public License 1.0 + - [ICU4J](http://www.icu-project.org), under the ICU License (compatible with GNU GPL) + - [Log4j](http://logging.apache.org/log4j), under the Apache License 2.0 + - [SFL4J](http://www.slf4j.org), under the MIT license + - [AspectJ](http://www.eclipse.org/aspectj), under the Common Public License 1.0 + - [Spring](http://www.springsource.org), under the Apache License 2.0 + - [Javassist](http://www.jboss.org/javassist), under the GNU Lesser General Public License 2.1 + - [Cglib](http://cglib.sourceforge.net), under the Apache License 1.1 + - [Hibernate](http://www.hibernate.org), under the GNU Lesser General Public License 2.1 + - [POI](http://poi.apache.org), under the Apache License 2.0 + - [Wicket](http://wicket.apache.org), under the Apache License 2.0 + - [PostgreSQL JDBC Driver](http://jdbc.postgresql.org), under the BSD License (same as the SGBD) + - [ChemDoodle Web Components](http://web.chemdoodle.com), under GNU General Public License, version 3.0 You can refer to the licenses folder of the project to see each license conditions. The dependency libraries are managed by the the Maven build tool (http://maven.apache.org). The Maven's dependency @@ -66,8 +65,10 @@ - https://docs.docker.com/engine/installation/ - https://docs.docker.com/compose/install/ -### Building +### In dev environment +#### Building + First construct the war from the project sources with mvn (from the project root) mvn clean package @@ -82,9 +83,9 @@ cd docker docker-compose build -### Starting the application +#### Starting the application -Launch the application with the docker-compose command : +Go into the docker directory and launch the application with the docker-compose command : docker-compose up @@ -95,3 +96,57 @@ To stop properly the application (with the delete of the containers), execute this command : docker-compose down + +### In production environment + +### Starting the application + +In the production environment, the compose configuration file is the `docker-compose-prod.yml` in the docker directory. + +Only this file is needed to start the application, the two containers (cantharella.db and cantharella.web) are +created from version-tagged image downloaded from the Docker Hub. + +First next to the `docker-compose-prod.yml`, create two config files necessary to define your passwords. The first one +`cantharella-db.env` must have this content : + + POSTGRES_PASSWORD=thePasswordForTheAdminCountOfTheDB + CANTHARELLA_PASSWORD=thePasswordOfTheCantharellaUser + +And the second one `cantharella-web.env` has this one : + + DB.PASSWORD=thePasswordOfTheCantharellaUserUsedConnectingTheWebAppToTheDB + +In the latter, you can also define other variables of the web application configuration file (see the documentation +file /src/site/rst/configuration.rst for more details). + +When the configuration file are set, you can launch the application with the docker-compose command : + + docker-compose -f docker-compose-prod.yml + +### Autostart using Systemd + +For linux system which rely on systemd, the followed configuration will automatically execute a Cantharella service +at system startup. + +First create the service file and add the followed content with `vi /etc/systemd/system/cantharella.service` : + +``` +[Unit] +Description=cantharella +Requires=docker.service +After=docker.service + +[Service] +User=root +ExecStartPre=-/usr/local/bin/docker-compose -f /data/cantharella.git/docker/docker-compose-prod.yml down +ExecStart=/usr/local/bin/docker-compose -f /data/cantharella.git/docker/docker-compose-prod.yml up +ExecStop=/usr/local/bin/docker-compose -f /data/cantharella.git/docker/docker-compose-prod.yml stop + +[Install] +WantedBy=multi-user.target +``` +(adapt the path for the docker-compose.yml according to your situation) + +Then enable the start at startup : + + systemctl enable cantharella \ No newline at end of file Modified: trunk/README.txt =================================================================== --- trunk/README.txt 2017-08-03 03:12:39 UTC (rev 278) +++ trunk/README.txt 2017-08-09 07:34:34 UTC (rev 279) @@ -1,49 +1 @@ -Cantharella -=========== - -This is the readme file for the Cantharella projet. - -The information system (IS) Cantharella: Pharmacochemical database of natural substances, designed and developed by -IRD (www.ird.fr), share and sustain pharmacochemical data of all organisms collected for the study of their natural -substances, with a controlled access via internet. -The IS provides access to harvest and taxonomic data, monitor various chemical processes of extraction and -purification, and finally centralize all biological activities. The database is progressive according to the extraction -and purification methods needed and the biological tests performed. - -Cantharella is an open source information system based on Java components and a PostgreSQL database. - -License -------- - -Cantharella is distributed under the terms of the under the terms of the GNU General Public License, version 3.0. The -text is included in the file LICENSE iq in the root of the project. - -Java and database servers requirements -------------------------------------------------- - -Cantharella requires at least Java 1.6. The application server for running your web application should adhere to the -servlet specification version 2.5 or newer. Tomcat 6 or newer is recommended. -For the database, the IS requires a PostgreSQL database (version 8.0 or newer). - -Dependencies ------------- -Cantharella is dependent to some librairies from another open source projects. This is the list of the dependencies and -their licenses. - - Apache Commons (http://commons.apache.org), under the Apache License 2.0 - - JUnit (www.junit.org), under the Common Public License 1.0 - - ICU4J (http://www.icu-project.org), under the ICU License (compatible with GNU GPL) - - Log4j (http://logging.apache.org/log4j), under the Apache License 2.0 - - SFL4J (http://www.slf4j.org), under the MIT license - - AspectJ (http://www.eclipse.org/aspectj), under the Common Public License 1.0 - - Spring (http://www.springsource.org), under the Apache License 2.0 - - Javassist (http://www.jboss.org/javassist), under the GNU Lesser General Public License 2.1 - - Cglib (http://cglib.sourceforge.net), under the Apache License 1.1 - - Hibernate (http://www.hibernate.org), under the GNU Lesser General Public License 2.1 - - POI (http://poi.apache.org), under the Apache License 2.0 - - Wicket (http://wicket.apache.org), under the Apache License 2.0 - - PostgreSQL JDBC Driver (http://jdbc.postgresql.org), under the BSD License (same as the server) - -You can refer to the licenses folder of the project to see each license conditions. -The dependency libraries are managed by the the Maven build tool (http://maven.apache.org). The Maven's dependency -mechanism will download all the necessary libraries automatically. You can see the dependencies declared in the -pom.xml files to known each library version. \ No newline at end of file +please refer to the README.md in the project root directory \ No newline at end of file Modified: trunk/cantharella.data/README.txt =================================================================== --- trunk/cantharella.data/README.txt 2017-08-03 03:12:39 UTC (rev 278) +++ trunk/cantharella.data/README.txt 2017-08-09 07:34:34 UTC (rev 279) @@ -1,49 +1 @@ -Cantharella -=========== - -This is the readme file for the Cantharella projet. - -The information system (IS) Cantharella: Pharmacochemical database of natural substances, designed and developed by -IRD (www.ird.fr), share and sustain pharmacochemical data of all organisms collected for the study of their natural -substances, with a controlled access via internet. -The IS provides access to harvest and taxonomic data, monitor various chemical processes of extraction and -purification, and finally centralize all biological activities. The database is progressive according to the extraction -and purification methods needed and the biological tests performed. - -Cantharella is an open source information system based on Java components and a PostgreSQL database. - -License -------- - -Cantharella is distributed under the terms of the under the terms of the GNU General Public License, version 3.0. The -text is included in the file LICENSE iq in the root of the project. - -Java and database servers requirements -------------------------------------------------- - -Cantharella requires at least Java 1.6. The application server for running your web application should adhere to the -servlet specification version 2.5 or newer. Tomcat 6 or newer is recommended. -For the database, the IS requires a PostgreSQL database (version 8.0 or newer). - -Dependencies ------------- -Cantharella is dependent to some librairies from another open source projects. This is the list of the dependencies and -their licenses. - - Apache Commons (http://commons.apache.org), under the Apache License 2.0 - - JUnit (www.junit.org), under the Common Public License 1.0 - - ICU4J (http://www.icu-project.org), under the ICU License (compatible with GNU GPL) - - Log4j (http://logging.apache.org/log4j), under the Apache License 2.0 - - SFL4J (http://www.slf4j.org), under the MIT license - - AspectJ (http://www.eclipse.org/aspectj), under the Common Public License 1.0 - - Spring (http://www.springsource.org), under the Apache License 2.0 - - Javassist (http://www.jboss.org/javassist), under the GNU Lesser General Public License 2.1 - - Cglib (http://cglib.sourceforge.net), under the Apache License 1.1 - - Hibernate (http://www.hibernate.org), under the GNU Lesser General Public License 2.1 - - POI (http://poi.apache.org), under the Apache License 2.0 - - Wicket (http://wicket.apache.org), under the Apache License 2.0 - - PostgreSQL JDBC Driver (http://jdbc.postgresql.org), under the BSD License (same as the server) - -You can refer to the licenses folder of the project to see each license conditions. -The dependency libraries are managed by the the Maven build tool (http://maven.apache.org). The Maven's dependency -mechanism will download all the necessary libraries automatically. You can see the dependencies declared in the -pom.xml files to known each library version. \ No newline at end of file +please refer to the README.md in the project root directory \ No newline at end of file Modified: trunk/cantharella.service/README.txt =================================================================== --- trunk/cantharella.service/README.txt 2017-08-03 03:12:39 UTC (rev 278) +++ trunk/cantharella.service/README.txt 2017-08-09 07:34:34 UTC (rev 279) @@ -1,49 +1 @@ -Cantharella -=========== - -This is the readme file for the Cantharella projet. - -The information system (IS) Cantharella: Pharmacochemical database of natural substances, designed and developed by -IRD (www.ird.fr), share and sustain pharmacochemical data of all organisms collected for the study of their natural -substances, with a controlled access via internet. -The IS provides access to harvest and taxonomic data, monitor various chemical processes of extraction and -purification, and finally centralize all biological activities. The database is progressive according to the extraction -and purification methods needed and the biological tests performed. - -Cantharella is an open source information system based on Java components and a PostgreSQL database. - -License -------- - -Cantharella is distributed under the terms of the under the terms of the GNU General Public License, version 3.0. The -text is included in the file LICENSE iq in the root of the project. - -Java and database servers requirements -------------------------------------------------- - -Cantharella requires at least Java 1.6. The application server for running your web application should adhere to the -servlet specification version 2.5 or newer. Tomcat 6 or newer is recommended. -For the database, the IS requires a PostgreSQL database (version 8.0 or newer). - -Dependencies ------------- -Cantharella is dependent to some librairies from another open source projects. This is the list of the dependencies and -their licenses. - - Apache Commons (http://commons.apache.org), under the Apache License 2.0 - - JUnit (www.junit.org), under the Common Public License 1.0 - - ICU4J (http://www.icu-project.org), under the ICU License (compatible with GNU GPL) - - Log4j (http://logging.apache.org/log4j), under the Apache License 2.0 - - SFL4J (http://www.slf4j.org), under the MIT license - - AspectJ (http://www.eclipse.org/aspectj), under the Common Public License 1.0 - - Spring (http://www.springsource.org), under the Apache License 2.0 - - Javassist (http://www.jboss.org/javassist), under the GNU Lesser General Public License 2.1 - - Cglib (http://cglib.sourceforge.net), under the Apache License 1.1 - - Hibernate (http://www.hibernate.org), under the GNU Lesser General Public License 2.1 - - POI (http://poi.apache.org), under the Apache License 2.0 - - Wicket (http://wicket.apache.org), under the Apache License 2.0 - - PostgreSQL JDBC Driver (http://jdbc.postgresql.org), under the BSD License (same as the server) - -You can refer to the licenses folder of the project to see each license conditions. -The dependency libraries are managed by the the Maven build tool (http://maven.apache.org). The Maven's dependency -mechanism will download all the necessary libraries automatically. You can see the dependencies declared in the -pom.xml files to known each library version. \ No newline at end of file +please refer to the README.md in the project root directory \ No newline at end of file Modified: trunk/cantharella.utils/README.txt =================================================================== --- trunk/cantharella.utils/README.txt 2017-08-03 03:12:39 UTC (rev 278) +++ trunk/cantharella.utils/README.txt 2017-08-09 07:34:34 UTC (rev 279) @@ -1,33 +1 @@ -Module.utils -============ - -This is the readme file for the utils module of the Cantharella projet. -This module gathers tools usable in common Java projects. - -The information system (IS) Cantharella: Pharmacochemical database of natural substances, designed and developed by -IRD (www.ird.fr), share and sustain pharmacochemical data of all organisms collected for the study of their natural -substances, with a controlled access via internet. -The IS provides access to harvest and taxonomic data, monitor various chemical processes of extraction and -purification, and finally centralize all biological activities. The database is progressive according to the extraction -and purification methods needed and the biological tests performed. - -Cantharella is an open source information system based on Java components and a PostgreSQL database. - -License -------- - -Cantharella is distributed under the terms of the under the terms of the GNU General Public License, version 3.0. The -text is included in the file LICENSE is in the root of the project. - -Dependencies ------------- -Module.utils is dependent to some librairies from another open source projects. This is the list of the dependencies and -their licenses. - - Apache Commons (http://commons.apache.org), under the Apache License 2.0 - - JUnit (www.junit.org), under the Common Public License 1.0 - - ICU4J (http://www.icu-project.org), under the ICU License (compatible with GNU GPL) - -You can refer to the licenses folder of the project to see each license conditions. -The dependency libraries are managed by the the Maven build tool (http://maven.apache.org). The Maven's dependency -mechanism will download all the necessary libraries automatically. You can see the dependencies declared in the -pom.xml files to known each library version. \ No newline at end of file +please refer to the README.md in the project root directory \ No newline at end of file Modified: trunk/cantharella.web/README.txt =================================================================== --- trunk/cantharella.web/README.txt 2017-08-03 03:12:39 UTC (rev 278) +++ trunk/cantharella.web/README.txt 2017-08-09 07:34:34 UTC (rev 279) @@ -1,49 +1 @@ -Cantharella -=========== - -This is the readme file for the Cantharella projet. - -The information system (IS) Cantharella: Pharmacochemical database of natural substances, designed and developed by -IRD (www.ird.fr), share and sustain pharmacochemical data of all organisms collected for the study of their natural -substances, with a controlled access via internet. -The IS provides access to harvest and taxonomic data, monitor various chemical processes of extraction and -purification, and finally centralize all biological activities. The database is progressive according to the extraction -and purification methods needed and the biological tests performed. - -Cantharella is an open source information system based on Java components and a PostgreSQL database. - -License -------- - -Cantharella is distributed under the terms of the under the terms of the GNU General Public License, version 3.0. The -text is included in the file LICENSE iq in the root of the project. - -Java and database servers requirements -------------------------------------------------- - -Cantharella requires at least Java 1.6. The application server for running your web application should adhere to the -servlet specification version 2.5 or newer. Tomcat 6 or newer is recommended. -For the database, the IS requires a PostgreSQL database (version 8.0 or newer). - -Dependencies ------------- -Cantharella is dependent to some librairies from another open source projects. This is the list of the dependencies and -their licenses. - - Apache Commons (http://commons.apache.org), under the Apache License 2.0 - - JUnit (www.junit.org), under the Common Public License 1.0 - - ICU4J (http://www.icu-project.org), under the ICU License (compatible with GNU GPL) - - Log4j (http://logging.apache.org/log4j), under the Apache License 2.0 - - SFL4J (http://www.slf4j.org), under the MIT license - - AspectJ (http://www.eclipse.org/aspectj), under the Common Public License 1.0 - - Spring (http://www.springsource.org), under the Apache License 2.0 - - Javassist (http://www.jboss.org/javassist), under the GNU Lesser General Public License 2.1 - - Cglib (http://cglib.sourceforge.net), under the Apache License 1.1 - - Hibernate (http://www.hibernate.org), under the GNU Lesser General Public License 2.1 - - POI (http://poi.apache.org), under the Apache License 2.0 - - Wicket (http://wicket.apache.org), under the Apache License 2.0 - - PostgreSQL JDBC Driver (http://jdbc.postgresql.org), under the BSD License (same as the server) - -You can refer to the licenses folder of the project to see each license conditions. -The dependency libraries are managed by the the Maven build tool (http://maven.apache.org). The Maven's dependency -mechanism will download all the necessary libraries automatically. You can see the dependencies declared in the -pom.xml files to known each library version. \ No newline at end of file +please refer to the README.md in the project root directory \ No newline at end of file Deleted: trunk/docker/cantharella-db/create_db.sql =================================================================== --- trunk/docker/cantharella-db/create_db.sql 2017-08-03 03:12:39 UTC (rev 278) +++ trunk/docker/cantharella-db/create_db.sql 2017-08-09 07:34:34 UTC (rev 279) @@ -1,29 +0,0 @@ ---- --- #%L --- Cantharella :: Data --- $Id: create_db.sql 133 2013-02-19 11:02:25Z acheype $ --- $HeadURL: https://svn.codelutin.com/cantharella/trunk/cantharella.data/src/main/sql/cr... $ --- %% --- Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) --- %% --- This program is free software: you can redistribute it and/or modify --- it under the terms of the GNU Affero General Public License as published by --- the Free Software Foundation, either version 3 of the License, or --- (at your option) any later version. --- --- This program is distributed in the hope that it will be useful, --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --- GNU General Public License for more details. --- --- You should have received a copy of the GNU Affero General Public License --- along with this program. If not, see <http://www.gnu.org/licenses/>. --- #L% ---- -CREATE ROLE cantharella LOGIN PASSWORD 'ctrl4'; -CREATE DATABASE cantharella WITH ENCODING='UTF8' OWNER=cantharella; -GRANT ALL ON DATABASE cantharella TO cantharella; -\connect cantharella -ALTER SCHEMA public OWNER TO cantharella; -GRANT ALL ON SCHEMA public TO cantharella; -\q Modified: trunk/docker/cantharella-db/docker-entrypoint-initdb.d/init-cantharella-db.sh =================================================================== --- trunk/docker/cantharella-db/docker-entrypoint-initdb.d/init-cantharella-db.sh 2017-08-03 03:12:39 UTC (rev 278) +++ trunk/docker/cantharella-db/docker-entrypoint-initdb.d/init-cantharella-db.sh 2017-08-09 07:34:34 UTC (rev 279) @@ -10,9 +10,8 @@ trap onexit EXIT echo "--- Init Cantharella DB ---" -echo "$SCRIPT_DIR" echo "No 'cantharella' database found. The database is going to be created." -psql --username "$POSTGRES_USER" -f "$SCRIPT_DIR/sql/create_db.sql" +psql --username "$POSTGRES_USER" --set=cantharella_password=$CANTHARELLA_PASSWORD -f "$SCRIPT_DIR/sql/create_db.sql" echo "* create_db.sql imported *" psql --username cantharella -d cantharella -f $SCRIPT_DIR/sql/cantharella_schema_1.2.sql echo "* cantharella_schema_1.2.sql imported *" Copied: trunk/docker/docker-compose-prod.yml (from rev 277, trunk/docker/docker-compose.yml) =================================================================== --- trunk/docker/docker-compose-prod.yml (rev 0) +++ trunk/docker/docker-compose-prod.yml 2017-08-09 07:34:34 UTC (rev 279) @@ -0,0 +1,28 @@ +version: '3' +services: + tomcat: + container_name: cantharella-web + image: acheype/cantharella-web:1.2.2 + ports: + - "80:8080" + links: + - "postgres" + env_file: ./cantharella-web.env + # please define the variable DB.PASSWORD in the cantharella-db.env file. You can also define other variables + # of the configuration file (see the documentation file /src/site/rst/configuration.rst for more details) + # example of the environment file content : + # DB.PASSWORD=ctrl4 + + postgres: + container_name: cantharella-db + image: acheype/cantharella-db:1.2 + volumes: + - /data/postgresql:/var/lib/postgresql/data + ports: + - "5432:5432" + env_file: ./cantharella-db.env + # please define the variables POSTGRES_PASSWORD and CANTHARELLA_PASSWORD (same value as DB.PASSWORD) in the + # cantharella-db .env file + # example of the environment file content : + # POSTGRES_PASSWORD=postgres + # CANTHARELLA_PASSWORD=ctrl4 \ No newline at end of file Modified: trunk/docker/docker-compose.yml =================================================================== --- trunk/docker/docker-compose.yml 2017-08-03 03:12:39 UTC (rev 278) +++ trunk/docker/docker-compose.yml 2017-08-09 07:34:34 UTC (rev 279) @@ -18,4 +18,6 @@ ports: - "5432:5432" environment: - - POSTGRES_PASSWORD=CHANGE_PASSWORD \ No newline at end of file + - POSTGRES_PASSWORD=postgres + # password of the user cantharella, only useful for db creation (if no data in /data/postgresql) + - CANTHARELLA_PASSWORD=ctrl4 \ No newline at end of file Modified: trunk/sql/create_db.sql =================================================================== --- trunk/sql/create_db.sql 2017-08-03 03:12:39 UTC (rev 278) +++ trunk/sql/create_db.sql 2017-08-09 07:34:34 UTC (rev 279) @@ -20,10 +20,10 @@ -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- #L% --- -CREATE ROLE cantharella LOGIN PASSWORD 'ctrl4'; +CREATE ROLE cantharella LOGIN PASSWORD :'cantharella_password'; CREATE DATABASE cantharella WITH ENCODING='UTF8' OWNER=cantharella; GRANT ALL ON DATABASE cantharella TO cantharella; \connect cantharella ALTER SCHEMA public OWNER TO cantharella; GRANT ALL ON SCHEMA public TO cantharella; -\q +\q \ No newline at end of file