]> git.donarmstrong.com Git - debbugs-presentations.git/commitdiff
draw schema
authorDon Armstrong <don@donarmstrong.com>
Sat, 23 Aug 2014 23:56:01 +0000 (16:56 -0700)
committerDon Armstrong <don@donarmstrong.com>
Sat, 23 Aug 2014 23:56:01 +0000 (16:56 -0700)
debconf14/figures/.gitignore
debconf14/figures/Makefile
debconf14/figures/draw_schema.pl [new file with mode: 0644]

index 2e4cdbcfc7832fd18dda8ce2c590248b8d3af936..014ef70feefbae0c6b0596bc372b2fe689ec50b6 100644 (file)
@@ -1,2 +1,3 @@
 openlogo-crop.pdf
 bug_global_layout.pdf
+schema.png
index 8856cfb6f7a40c47f1e1a5fbcc157b8fb803d40d..4a04919d3a3f32026134779f4594f95b1fe17e0d 100644 (file)
@@ -12,3 +12,6 @@ all: openlogo-crop.pdf bug_global_layout.pdf
 %.png: %.svg
        inkscape -e $@ -d 300 $<
 
+
+schema.png: draw_schema.pl
+       perl -I ~/projects/debbugs/debbugs $< $@
diff --git a/debconf14/figures/draw_schema.pl b/debconf14/figures/draw_schema.pl
new file mode 100644 (file)
index 0000000..301e36a
--- /dev/null
@@ -0,0 +1,22 @@
+#!/usr/bin/perl
+
+use warnings;
+use strict;
+
+use SQL::Translator;
+use Debbugs::DB;
+
+my $s = Debbugs::DB->connect('dbi:Pg:service=debbugs');
+
+my $trans = SQL::Translator->new(
+    parser        => 'SQL::Translator::Parser::DBIx::Class',
+    parser_args   => { dbic_schema => $s },
+    producer      => 'Diagram',
+    producer_args => {
+        out_file         => $ARGV[0],
+        show_constraints => 1,
+        show_datatypes   => 1,
+        show_sizes       => 1,
+        show_fk_only     => 0,
+    } );
+$trans->translate();