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
	import__table_run "$@"
13
	after_import_cmds
14
}
15
fi ####
16

    
17
. "$(dirname "${BASH_SOURCE[0]}")"/import.run
18
. "$(dirname "${BASH_SOURCE[0]}")"/../sh/local.sh
19

    
20
if self_not_included; then
21

    
22
: "${schema="$(cd "$top_dir"/..; basename "$PWD")"}"
23
mk_esc_name schema
24
: "${table="$( cd "$top_dir"   ; basename "$PWD")"}"
25
mk_esc_name table
26
export schema table
27

    
28
input_make() # requires Makefile in datasrc dir with `include ../input.Makefile`
29
{ echo_func; make --directory="$top_dir"/.. "${@/#/$table/}"; }
30
	# "${@/#/$table/}": replaces empty str at beginning of str (/#) with $table/
31

    
32
map_table()
33
{
34
	echo_func
35
	input_make map.csv
36
	psql <<EOF
37
SELECT util.reset_map_table('pg_temp.map');
38
\copy pg_temp.map FROM 'map.csv' CSV HEADER;
39
SELECT util.set_col_names('"$table"', 'pg_temp.map'::regclass);
40
EOF
41
}
42

    
43
mk_derived() { echo_func; "$root_dir"/schemas/VegCore/mk_derived; }
44

    
45
remake_VegBIEN_mappings()
46
{
47
	echo_func
48
	public_schema_exists || return 0
49
	rm header.csv map.csv # remake them
50
	yes|input_make test
51
}
52

    
53
postprocess() # overridable
54
{
55
	echo_func
56
	local file="$top_dir"/postprocess.sql
57
	if test -e "$file"; then psql "$@"; fi
58
}
59

    
60
import()
61
{
62
	echo_func
63
	map_table
64
	postprocess
65
	mk_derived
66
}
67

    
68
fi
(2-2/3)