Project

General

Profile

1
#!/bin/bash -e
2

    
3
if false; then #### run script template:
4
#!/bin/bash -e
5
. "$(dirname "${BASH_SOURCE[0]}")"/path/to/table.run
6

    
7
func_override import__table_run
8
import()
9
{
10
	echo_func
11
	before_import_cmds
12
	self_make import__table_run "$@"
13
	after_import_cmds
14
}
15
fi ####
16

    
17
. "$(dirname "${BASH_SOURCE[0]}")"/import.run
18
.rel subdir.run
19
.rel ../sh/db_make.sh
20

    
21
if self_not_included; then
22

    
23
: "${table=$subdir}"; export table
24

    
25
table_make() { subdir_make "$@"; }
26

    
27
install_log_rel=logs/install.log.sql
28

    
29
table_make_install()
30
{
31
	echo_func; local install_log="${install_log-$top_dir/$install_log_rel}"
32
	local verbosity_min= # install logs require default verbosity
33
	set -- table_make "$@"
34
	if remaking || test ! -e "$install_log"; then "$@" # OK to clobber log
35
	else benign_error=1 noclobber=1 "$@" || true
36
	fi
37
}
38

    
39
map_table()
40
{
41
	echo_func; set_make_vars
42
	table_make map.csv
43
	psql <<EOF
44
SELECT util.reset_map_table('pg_temp.map');
45
\copy pg_temp.map FROM 'map.csv' CSV HEADER;
46
SELECT util.set_col_names('"$table"', 'pg_temp.map'::regclass);
47
EOF
48
}
49

    
50
mk_derived()
51
{ echo_func; set_make_vars; "$root_dir"/schemas/VegCore/mk_derived; }
52

    
53
remake_VegBIEN_mappings()
54
{
55
	echo_func; set_make_vars
56
	public_schema_exists || return 0
57
	rm header.csv map.csv # remake them
58
	yes|table_make test
59
}
60

    
61
postprocess() # overridable
62
{
63
	echo_func; set_make_vars
64
	local file="$top_dir"/postprocess.sql
65
	if test -e "$file"; then psql "$@"; fi
66
}
67

    
68
load_data()
69
{
70
	echo_func; set_make_vars
71
	table_make_install ${_remake:+re}install # just the table
72
}
73

    
74
import()
75
{
76
	echo_func; set_make_vars
77
	self_make load_data
78
	map_table
79
	postprocess
80
	mk_derived
81
}
82

    
83
fi
(5-5/6)