Loading bin/README.md +3 −1 Original line number Diff line number Diff line Loading @@ -11,10 +11,12 @@ Les scripts générés dans le répertoire temporaire `/tmp/sygal-doc/database` - `02-inserts/oracle-data-insert-from-SYGAL.*-into-SYGAL.sql` - `03-oracle-generate-ref-constraints-SYGAL.sql` Les autres scripts gérés, eux, à la main sont : Les autres scripts sont gérés à la main : - [`00-crea-users.sql`](../database/00-crea-users.sql) - [`01-bootstrap.sql`](../database/01-bootstrap.sql) - [`04-crea-comue.sql`](../database/04-crea-comue.sql) - [`05-init.sql`](../database/05-init.sql) - [`06-test.sql`](../database/06-test.sql) Usage : ```bash Loading bin/docker/gen-db-scripts.sh +24 −5 Original line number Diff line number Diff line #!/usr/bin/env bash # # Script de génération d'une partie des scripts SQL permettant de créer de zéro la base de données de SyGAL. # # Arguments : # $1 : Nom du schéma de base de données. Ex: "SYGAL". Obligatoire. # # NB: Attention, cet argument n'a pas la vocation de "sélectionner" le schéma de base de données à utiliser, # il est simplement exploité pour les noms de fichiers SQL générés. # Le schéma de base de données utilisé est celui spécifié dans la config Doctrine de l'appli # (cf. fichier `config/autoload/*.secret.local.php` de l'appli). # # Exemple d'usage : # bash gen-db-scripts.sh "SYGAL" # [[ -z "$1" ]] && echo "Le nom du schéma de base de données doit être spécifié, ex: SYGAL." && exit 1 SCHEMA=$1 # fonction mettant en commentaire certains options de création de séquence dans le(s) fichier(s) spécifié(s) commentSeqOptionsInFile() { for f in $1; do Loading @@ -9,8 +28,8 @@ commentSeqOptionsInFile() { # fonction remplaçant 'SYGAL.' par '/*SYGAL.*/' et '"SYGAL".' par '/*"SYGAL".*/' dans le(s) fichier(s) spécifié(s) commentPrefixInFile() { for f in $1; do sed -i 's/\(SYGAL\.\)/\/*\1*\//ig' ${f} sed -i 's/\("SYGAL"\.\)/\/*\1*\//ig' ${f} sed -i "s/\(${SCHEMA}\.\)/\/*\1*\//ig" ${f} sed -i "s/\(\"${SCHEMA}\"\.\)/\/*\1*\//ig" ${f} done } # fonction remplaçant par exemple "/*HISTO::*/1234" par "$2/*SUBSTIT*/" dans le(s) fichier(s) spécifié(s) en $1 Loading @@ -20,10 +39,10 @@ replaceHistoIdInFile() { done } FROM_FILE_PATH_CLEAR="/tmp/oracle-clear-schema-SYGAL.sql" FROM_FILE_PATH_SCHEMA="/tmp/oracle-generate-schema-SYGAL-from-SYGAL.sql" FROM_FILE_PATH_CLEAR="/tmp/oracle-clear-schema-${SCHEMA}.sql" FROM_FILE_PATH_SCHEMA="/tmp/oracle-generate-schema-${SCHEMA}-from-${SCHEMA}.sql" FROM_FILE_PATH_INSERTS="/tmp/inserts" FROM_FILE_PATH_REF="/tmp/oracle-generate-ref-constraints-SYGAL-from-SYGAL.sql" FROM_FILE_PATH_REF="/tmp/oracle-generate-ref-constraints-${SCHEMA}-from-${SCHEMA}.sql" TABLES="CATEGORIE_PRIVILEGE,DOMAINE_SCIENTIFIQUE,IMPORT_OBSERV,INFORMATION,NATURE_FICHIER,PRIVILEGE,PROFIL,PROFIL_PRIVILEGE,TYPE_STRUCTURE,TYPE_VALIDATION,VERSION_FICHIER,WF_ETAPE" HISTO_ID_SUBSTIT=1 # valeur forcée pour les colonnes d'historique Loading bin/generate-database-scripts.sh +18 −7 Original line number Diff line number Diff line #!/usr/bin/env bash # # Script de génération d'une partie des scripts SQL permettant de créer de zéro la base de données de SyGAL. # # Arguments : # Aucun. # # Exemple d'usage : # bash generate-database-scripts.sh # echo " #################################################################################################### # Loading @@ -8,6 +18,7 @@ echo " ####################################################################################################" THIS_DIR=$(cd `dirname $0` && pwd) SCHEMA="SYGAL" # répertoire de destination des résultats OUTPUT_DIR=/tmp/sygal-doc/database Loading @@ -16,18 +27,18 @@ mkdir -p ${OUTPUT_DIR} # copie et lancement du script dans le container docker docker cp ${THIS_DIR}/docker/gen-db-scripts.sh sygal-container:/app && \ docker exec -it -w /app sygal-container bash gen-db-scripts.sh && \ docker exec -it -w /app sygal-container bash gen-db-scripts.sh ${SCHEMA} && \ docker exec -it -w /app sygal-container rm gen-db-scripts.sh FROM_FILE_PATH_CLEAR="/tmp/oracle-clear-schema-SYGAL.sql" FROM_FILE_PATH_SCHEMA="/tmp/oracle-generate-schema-SYGAL-from-SYGAL.sql" FROM_FILE_PATH_CLEAR="/tmp/oracle-clear-schema-${SCHEMA}.sql" FROM_FILE_PATH_SCHEMA="/tmp/oracle-generate-schema-${SCHEMA}-from-${SCHEMA}.sql" FROM_FILE_PATH_INSERTS="/tmp/inserts" FROM_FILE_PATH_REF="/tmp/oracle-generate-ref-constraints-SYGAL-from-SYGAL.sql" FROM_FILE_PATH_REF="/tmp/oracle-generate-ref-constraints-${SCHEMA}-from-${SCHEMA}.sql" TO_FILE_PATH_CLEAR="${OUTPUT_DIR}/00-oracle-clear-schema-SYGAL.sql" TO_FILE_PATH_SCHEMA="${OUTPUT_DIR}/00-oracle-generate-schema-SYGAL.sql" TO_FILE_PATH_CLEAR="${OUTPUT_DIR}/00-oracle-clear-schema-${SCHEMA}.sql" TO_FILE_PATH_SCHEMA="${OUTPUT_DIR}/00-oracle-generate-schema-${SCHEMA}.sql" TO_FILE_PATH_INSERTS="${OUTPUT_DIR}/02-inserts" TO_FILE_PATH_REF="${OUTPUT_DIR}/03-oracle-generate-ref-constraints-SYGAL.sql" TO_FILE_PATH_REF="${OUTPUT_DIR}/03-oracle-generate-ref-constraints-${SCHEMA}.sql" # récupération des scripts SQL générés docker cp sygal-container:${FROM_FILE_PATH_CLEAR} ${TO_FILE_PATH_CLEAR} && \ Loading Loading
bin/README.md +3 −1 Original line number Diff line number Diff line Loading @@ -11,10 +11,12 @@ Les scripts générés dans le répertoire temporaire `/tmp/sygal-doc/database` - `02-inserts/oracle-data-insert-from-SYGAL.*-into-SYGAL.sql` - `03-oracle-generate-ref-constraints-SYGAL.sql` Les autres scripts gérés, eux, à la main sont : Les autres scripts sont gérés à la main : - [`00-crea-users.sql`](../database/00-crea-users.sql) - [`01-bootstrap.sql`](../database/01-bootstrap.sql) - [`04-crea-comue.sql`](../database/04-crea-comue.sql) - [`05-init.sql`](../database/05-init.sql) - [`06-test.sql`](../database/06-test.sql) Usage : ```bash Loading
bin/docker/gen-db-scripts.sh +24 −5 Original line number Diff line number Diff line #!/usr/bin/env bash # # Script de génération d'une partie des scripts SQL permettant de créer de zéro la base de données de SyGAL. # # Arguments : # $1 : Nom du schéma de base de données. Ex: "SYGAL". Obligatoire. # # NB: Attention, cet argument n'a pas la vocation de "sélectionner" le schéma de base de données à utiliser, # il est simplement exploité pour les noms de fichiers SQL générés. # Le schéma de base de données utilisé est celui spécifié dans la config Doctrine de l'appli # (cf. fichier `config/autoload/*.secret.local.php` de l'appli). # # Exemple d'usage : # bash gen-db-scripts.sh "SYGAL" # [[ -z "$1" ]] && echo "Le nom du schéma de base de données doit être spécifié, ex: SYGAL." && exit 1 SCHEMA=$1 # fonction mettant en commentaire certains options de création de séquence dans le(s) fichier(s) spécifié(s) commentSeqOptionsInFile() { for f in $1; do Loading @@ -9,8 +28,8 @@ commentSeqOptionsInFile() { # fonction remplaçant 'SYGAL.' par '/*SYGAL.*/' et '"SYGAL".' par '/*"SYGAL".*/' dans le(s) fichier(s) spécifié(s) commentPrefixInFile() { for f in $1; do sed -i 's/\(SYGAL\.\)/\/*\1*\//ig' ${f} sed -i 's/\("SYGAL"\.\)/\/*\1*\//ig' ${f} sed -i "s/\(${SCHEMA}\.\)/\/*\1*\//ig" ${f} sed -i "s/\(\"${SCHEMA}\"\.\)/\/*\1*\//ig" ${f} done } # fonction remplaçant par exemple "/*HISTO::*/1234" par "$2/*SUBSTIT*/" dans le(s) fichier(s) spécifié(s) en $1 Loading @@ -20,10 +39,10 @@ replaceHistoIdInFile() { done } FROM_FILE_PATH_CLEAR="/tmp/oracle-clear-schema-SYGAL.sql" FROM_FILE_PATH_SCHEMA="/tmp/oracle-generate-schema-SYGAL-from-SYGAL.sql" FROM_FILE_PATH_CLEAR="/tmp/oracle-clear-schema-${SCHEMA}.sql" FROM_FILE_PATH_SCHEMA="/tmp/oracle-generate-schema-${SCHEMA}-from-${SCHEMA}.sql" FROM_FILE_PATH_INSERTS="/tmp/inserts" FROM_FILE_PATH_REF="/tmp/oracle-generate-ref-constraints-SYGAL-from-SYGAL.sql" FROM_FILE_PATH_REF="/tmp/oracle-generate-ref-constraints-${SCHEMA}-from-${SCHEMA}.sql" TABLES="CATEGORIE_PRIVILEGE,DOMAINE_SCIENTIFIQUE,IMPORT_OBSERV,INFORMATION,NATURE_FICHIER,PRIVILEGE,PROFIL,PROFIL_PRIVILEGE,TYPE_STRUCTURE,TYPE_VALIDATION,VERSION_FICHIER,WF_ETAPE" HISTO_ID_SUBSTIT=1 # valeur forcée pour les colonnes d'historique Loading
bin/generate-database-scripts.sh +18 −7 Original line number Diff line number Diff line #!/usr/bin/env bash # # Script de génération d'une partie des scripts SQL permettant de créer de zéro la base de données de SyGAL. # # Arguments : # Aucun. # # Exemple d'usage : # bash generate-database-scripts.sh # echo " #################################################################################################### # Loading @@ -8,6 +18,7 @@ echo " ####################################################################################################" THIS_DIR=$(cd `dirname $0` && pwd) SCHEMA="SYGAL" # répertoire de destination des résultats OUTPUT_DIR=/tmp/sygal-doc/database Loading @@ -16,18 +27,18 @@ mkdir -p ${OUTPUT_DIR} # copie et lancement du script dans le container docker docker cp ${THIS_DIR}/docker/gen-db-scripts.sh sygal-container:/app && \ docker exec -it -w /app sygal-container bash gen-db-scripts.sh && \ docker exec -it -w /app sygal-container bash gen-db-scripts.sh ${SCHEMA} && \ docker exec -it -w /app sygal-container rm gen-db-scripts.sh FROM_FILE_PATH_CLEAR="/tmp/oracle-clear-schema-SYGAL.sql" FROM_FILE_PATH_SCHEMA="/tmp/oracle-generate-schema-SYGAL-from-SYGAL.sql" FROM_FILE_PATH_CLEAR="/tmp/oracle-clear-schema-${SCHEMA}.sql" FROM_FILE_PATH_SCHEMA="/tmp/oracle-generate-schema-${SCHEMA}-from-${SCHEMA}.sql" FROM_FILE_PATH_INSERTS="/tmp/inserts" FROM_FILE_PATH_REF="/tmp/oracle-generate-ref-constraints-SYGAL-from-SYGAL.sql" FROM_FILE_PATH_REF="/tmp/oracle-generate-ref-constraints-${SCHEMA}-from-${SCHEMA}.sql" TO_FILE_PATH_CLEAR="${OUTPUT_DIR}/00-oracle-clear-schema-SYGAL.sql" TO_FILE_PATH_SCHEMA="${OUTPUT_DIR}/00-oracle-generate-schema-SYGAL.sql" TO_FILE_PATH_CLEAR="${OUTPUT_DIR}/00-oracle-clear-schema-${SCHEMA}.sql" TO_FILE_PATH_SCHEMA="${OUTPUT_DIR}/00-oracle-generate-schema-${SCHEMA}.sql" TO_FILE_PATH_INSERTS="${OUTPUT_DIR}/02-inserts" TO_FILE_PATH_REF="${OUTPUT_DIR}/03-oracle-generate-ref-constraints-SYGAL.sql" TO_FILE_PATH_REF="${OUTPUT_DIR}/03-oracle-generate-ref-constraints-${SCHEMA}.sql" # récupération des scripts SQL générés docker cp sygal-container:${FROM_FILE_PATH_CLEAR} ${TO_FILE_PATH_CLEAR} && \ Loading