(Feat): Initial Commit
This commit is contained in:
1
docs/schemacrawler/.gitignore
vendored
Normal file
1
docs/schemacrawler/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
schema.*
|
||||
31
docs/schemacrawler/README.md
Normal file
31
docs/schemacrawler/README.md
Normal file
@@ -0,0 +1,31 @@
|
||||
# `/docs/schemacrawler`
|
||||
|
||||
To locally (re-)generate a schemacrawler diagramm, execute any of the following commands from your **host** machine.
|
||||
|
||||
```bash
|
||||
# Note that the project must be already running within docker-compose (and the "spec" database should already be migrated via "make sql" or "make all").
|
||||
# First find out under which docker network the "allaboutapps.dev/aw/go-starter" project is available (as started via ./docker-helper.sh --up).
|
||||
# Typically it's "<dir_name>_default".
|
||||
docker network ls
|
||||
# [...]
|
||||
# go-starter_default
|
||||
|
||||
# Ensure you are within the /docs/schemacrawler directory
|
||||
cd docs/schemacrawler
|
||||
pwd
|
||||
# [...]/docs/schemacrawler
|
||||
|
||||
# Generate a png (exchange --network="..." with your docker network before executing this command)
|
||||
docker run --network=go-starter_default -v $(pwd):/home/schcrwlr/share -v $(pwd)/schemacrawler.config.properties:/opt/schemacrawler/config/schemacrawler.config.properties --entrypoint=/opt/schemacrawler/bin/schemacrawler.sh schemacrawler/schemacrawler --server=postgresql --host=postgres --port=5432 --database=spec --schemas=public --user=dbuser --password=dbpass --info-level=standard --command=schema --portable-names --title "allaboutapps.dev/aw/go-starter" --output-format=png --output-file=/home/schcrwlr/share/schema.png
|
||||
|
||||
# Generate a pdf (exchange --network="..." with your docker network before executing this command)
|
||||
docker run --network=go-starter_default -v $(pwd):/home/schcrwlr/share -v $(pwd)/schemacrawler.config.properties:/opt/schemacrawler/config/schemacrawler.config.properties --entrypoint=/opt/schemacrawler/bin/schemacrawler.sh schemacrawler/schemacrawler --server=postgresql --host=postgres --port=5432 --database=spec --schemas=public --user=dbuser --password=dbpass --info-level=standard --command=schema --portable-names --title "allaboutapps.dev/aw/go-starter" --output-format=pdf --output-file=/home/schcrwlr/share/schema.pdf
|
||||
|
||||
# Feel free to override schemacrawler configuration settings in "./schemacrawler.config.properties".
|
||||
```
|
||||
|
||||
For further information see:
|
||||
- Latest [Dockerfile](https://github.com/schemacrawler/SchemaCrawler/blob/master/schemacrawler-docker/Dockerfile) of schemacrawler
|
||||
- [SchemaCrawler Database Diagramming](https://www.schemacrawler.com/diagramming.html) (intro to most diagramming options)
|
||||
- [Docker Image for SchemaCrawler](https://www.schemacrawler.com/docker-image.html) (about running schemacrawler in Docker)
|
||||
- [DockerHub `schemacrawler/schemacrawler`](https://hub.docker.com/r/schemacrawler/schemacrawler/) (available version of this Docker image)
|
||||
181
docs/schemacrawler/schemacrawler.config.properties
Normal file
181
docs/schemacrawler/schemacrawler.config.properties
Normal file
@@ -0,0 +1,181 @@
|
||||
# --=----=----=----=----=----=----=----=----=----=----=----=----=----=----=----=
|
||||
# - SchemaCrawler: Configuration Options
|
||||
# --=----=----=----=----=----=----=----=----=----=----=----=----=----=----=----=
|
||||
#
|
||||
# - Metadata Retrieval Options
|
||||
# ------------------------------------------------------------------------------
|
||||
# - Override the metadata retrieval strategy
|
||||
# - This can affect speed, so they are commented out in order to use database
|
||||
# - specific defaults
|
||||
# - Default: Hard-coded into each database plugin, otherwise metadata
|
||||
# - Possible values for each property are metadata or data_dictionary_all
|
||||
#schemacrawler.schema.retrieval.strategy.typeinfo=metadata
|
||||
#schemacrawler.schema.retrieval.strategy.tables=metadata
|
||||
#schemacrawler.schema.retrieval.strategy.tablecolumns=metadata
|
||||
#schemacrawler.schema.retrieval.strategy.primarykeys=metadata
|
||||
#schemacrawler.schema.retrieval.strategy.indexes=metadata
|
||||
#schemacrawler.schema.retrieval.strategy.foreignkeys=metadata
|
||||
#schemacrawler.schema.retrieval.strategy.procedures=metadata
|
||||
#schemacrawler.schema.retrieval.strategy.procedurecolumns=metadata
|
||||
#schemacrawler.schema.retrieval.strategy.functions=metadata
|
||||
#schemacrawler.schema.retrieval.strategy.functioncolumns=metadata
|
||||
#
|
||||
# - Limit Options - inclusion rules for database objects
|
||||
# ------------------------------------------------------------------------------
|
||||
# - Regular expression schema pattern to filter
|
||||
# - schema names
|
||||
# - Default: .* for include, <none> for exclude
|
||||
# - IMPORTANT: Please uncomment the follow patterns only for
|
||||
# - database that support schemas. SQLite for example does
|
||||
# - not support schemas
|
||||
#schemacrawler.schema.pattern.include=.*
|
||||
#schemacrawler.schema.pattern.exclude=
|
||||
# - Regular expression table and column name pattern to filter table
|
||||
# - and column names
|
||||
# - Column regular expression to match fully qualified column names,
|
||||
# - in the form "CATALOGNAME.SCHEMANAME.TABLENAME.COLUMNNAME"
|
||||
# - Default: .* for include, <none> for exclude
|
||||
#schemacrawler.table.pattern.include=.*
|
||||
#schemacrawler.table.pattern.exclude=
|
||||
#schemacrawler.column.pattern.include=.*
|
||||
#schemacrawler.column.pattern.exclude=
|
||||
# - Regular expression routine and routine parameter name pattern to filter
|
||||
# - routine and routine parameter names
|
||||
# - Default: .* for include, <none> for exclude
|
||||
#schemacrawler.routine.pattern.include=
|
||||
#schemacrawler.routine.pattern.exclude=.*
|
||||
#schemacrawler.routine.inout.pattern.include=.*
|
||||
#schemacrawler.routine.inout.pattern.exclude=
|
||||
# - Regular expression synonym pattern to filter
|
||||
# - synonym names
|
||||
# - Default: <none> for include, .* for exclude
|
||||
#schemacrawler.synonym.pattern.include=
|
||||
#schemacrawler.synonym.pattern.exclude=.*
|
||||
# - Regular expression sequence pattern to filter
|
||||
# - sequence names
|
||||
# - Default: <none> for include, .* for exclude
|
||||
#schemacrawler.sequence.pattern.include=
|
||||
#schemacrawler.sequence.pattern.exclude=.*
|
||||
#
|
||||
# - Grep Options - inclusion rules
|
||||
# ------------------------------------------------------------------------------
|
||||
# - Include patterns for table columns
|
||||
# - Default: .* for include, <none> for exclude
|
||||
#schemacrawler.grep.column.pattern.include=.*
|
||||
#schemacrawler.grep.column.pattern.exclude=
|
||||
# - Include patterns for routine parameters
|
||||
# - Default: .* for include, <none> for exclude
|
||||
#schemacrawler.grep.routine.inout.pattern.include=.*
|
||||
#schemacrawler.grep.routine.inout.pattern.exclude=
|
||||
# - Include patterns for table and routine definitions
|
||||
# - Default: .* for include, <none> for exclude
|
||||
#schemacrawler.grep.definition.pattern.include=.*
|
||||
#schemacrawler.grep.definition.pattern.exclude=
|
||||
#
|
||||
# - Sorting Options
|
||||
# ------------------------------------------------------------------------------
|
||||
# - Sort orders for objects
|
||||
#schemacrawler.format.sort_alphabetically.tables=true
|
||||
#schemacrawler.format.sort_alphabetically.table_columns=false
|
||||
#schemacrawler.format.sort_alphabetically.table_foreignkeys=false
|
||||
#schemacrawler.format.sort_alphabetically.table_indexes=false
|
||||
#schemacrawler.format.sort_alphabetically.routines=true
|
||||
#schemacrawler.format.sort_alphabetically.routine_columns=false
|
||||
#
|
||||
# - Show Options - text output formatting
|
||||
# ------------------------------------------------------------------------------
|
||||
# - Controls generation of the SchemaCrawler header and footer in output
|
||||
# - Default: false
|
||||
#schemacrawler.format.no_header=false
|
||||
#schemacrawler.format.no_footer=false
|
||||
schemacrawler.format.no_schemacrawler_info=true
|
||||
schemacrawler.format.show_database_info=true
|
||||
#schemacrawler.format.show_jdbc_driver_info=false
|
||||
# - Controls display of remarks for tables and columns in output
|
||||
# - Default: false
|
||||
#schemacrawler.format.hide_remarks=false
|
||||
# - Shows all object names with the catalog and schema names, for easier comparison
|
||||
# - across different schemas
|
||||
# - Default: false
|
||||
#schemacrawler.format.show_unqualified_names=false
|
||||
# - Shows standard column names instead of database specific column names
|
||||
# - Default: false
|
||||
#schemacrawler.format.show_standard_column_type_names=false
|
||||
# - Shows ordinal numbers for columns
|
||||
# - Default: false
|
||||
#schemacrawler.format.show_ordinal_numbers=false
|
||||
# - Shows table row counts - use with --info-level=maximum
|
||||
# - Default: false
|
||||
#schemacrawler.format.show_row_counts=false
|
||||
# - If foreign key names, constraint names, trigger names,
|
||||
# - specific names for routines, or index and primary key names
|
||||
# - are not explicitly provided while creating a schema, most
|
||||
# - database systems assign default names. These names can show
|
||||
# - up as spurious diffs in SchemaCrawler output.
|
||||
# - All of these are hidden with the --portable-names
|
||||
# - command-line option. For more control, use the following
|
||||
# - options.
|
||||
# - Hides foreign key names, constraint names, trigger names,
|
||||
# - specific names for routines, index and primary key names
|
||||
# - Default: false
|
||||
#schemacrawler.format.hide_primarykey_names=false
|
||||
#schemacrawler.format.hide_foreignkey_names=false
|
||||
#schemacrawler.format.hide_index_names=false
|
||||
#schemacrawler.format.hide_trigger_names=false
|
||||
#schemacrawler.format.hide_routine_specific_names=false
|
||||
#schemacrawler.format.hide_constraint_names=false
|
||||
#schemacrawler.format.show_weak_associations=false
|
||||
# Specifies how to quote (delimit) database object names in text output
|
||||
# Options are
|
||||
# - quote_none - Do not quote any database object names
|
||||
# - quote_all - Always quote database object names
|
||||
# - quote_if_special_characters - Only quote database object names
|
||||
# if they contain special characters
|
||||
# - quote_if_special_characters_and_reserved_words - Quote database object names
|
||||
# if they contain special characters or SQL 2003 reserved words
|
||||
# - Default: quote_if_special_characters_and_reserved_words
|
||||
#schemacrawler.format.identifier_quoting_strategy=quote_if_special_characters_and_reserved_words
|
||||
# - Does not color-code catalog and schema names.
|
||||
# - Default: false
|
||||
#schemacrawler.format.no_schema_colors=false
|
||||
# - Encoding of input files, such as Apache Velocity templates
|
||||
# - Default: UTF-8
|
||||
#schemacrawler.encoding.input=UTF-8
|
||||
# - Encoding of SchemaCrawler output files
|
||||
# - Default: UTF-8
|
||||
#schemacrawler.encoding.output=UTF-8
|
||||
#
|
||||
# - Graphing Options
|
||||
# - (some graphing options may be controlled by text formatting options)
|
||||
# ------------------------------------------------------------------------------
|
||||
# - Show a crow's foot symbol to indicate cardinality
|
||||
# - Default: true
|
||||
#schemacrawler.graph.show.primarykey.cardinality=true
|
||||
#schemacrawler.graph.show.foreignkey.cardinality=true
|
||||
#
|
||||
# - Graph attributes for Graphviz, supporting graph, node and edge
|
||||
# - See https://www.graphviz.org/doc/info/attrs.html
|
||||
schemacrawler.graph.graphviz.graph.rankdir=RL
|
||||
schemacrawler.graph.graphviz.graph.labeljust=r
|
||||
schemacrawler.graph.graphviz.graph.fontname=Helvetica
|
||||
schemacrawler.graph.graphviz.node.fontname=Helvetica
|
||||
schemacrawler.graph.graphviz.node.shape=none
|
||||
schemacrawler.graph.graphviz.edge.fontname=Helvetica
|
||||
|
||||
# schemacrawler.graph.graphviz.graph.splines=ortho
|
||||
|
||||
# - Additional options for Graphviz, to control diagram generation
|
||||
# - See https://www.graphviz.org/doc/info/command.html
|
||||
# schemacrawler.graph.graphviz_opts=-Gdpi=150
|
||||
# - Data Output Options
|
||||
# ------------------------------------------------------------------------------
|
||||
# - Whether to show data from CLOB and BLOB objects
|
||||
# - Default: false
|
||||
#schemacrawler.data.show_lobs=false
|
||||
# --=----=----=----=----=----=----=----=----=----=----=----=----=----=----=----=
|
||||
# Queries
|
||||
# --=----=----=----=----=----=----=----=----=----=----=----=----=----=----=----=
|
||||
# Define your own named queries, which then become SchemaCrawler command
|
||||
hsqldb.tables=SELECT * FROM INFORMATION_SCHEMA.SYSTEM_TABLES
|
||||
tables.select=SELECT ${columns} FROM ${table} ORDER BY ${columns}
|
||||
tables.drop=DROP ${tabletype} ${table}
|
||||
Reference in New Issue
Block a user