-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.rb
67 lines (58 loc) · 2.59 KB
/
setup.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# frozen_string_literal: true
def system_call(cmd)
puts "Running #{cmd}"
system cmd
puts
end
setup :secret_key_base
env 'HOST', provide('Host', default: 'localhost:3000')
env 'ASSET_HOST', provide('Asset host', default: '//localhost:3000')
env 'DEFAULT_EMAIL', provide(
'Default email address used by Rails mailer.',
default: 'user@example.com'
)
env 'CAL_BASE_URL', provide(
'URL for local Squarespace server', default: 'http://localhost:9000'
)
env 'IMPORT_GIS_BASE', provide(
'Local path to ERSI shp files. Used when importing data for places table.',
default: 'import_data/places'
)
env 'KOBO_TOKEN', provide('Kobo API key. Used for importing data from Kobo.')
env 'KOBO_MEDIA_URL', provide(
'KoBo media URL. Used for copying photos from Kobo.',
default: 'https://kc.kobotoolbox.org/attachment/original?media_file='
)
env 'IUCN_TOKEN', provide('IUCN API token. Used for updating IUCN status.')
env 'S3_ACCESS_KEY_ID', provide('S3 access key ID. S3 is used for storing ' \
'uploaded images and files.')
env 'S3_SECRET_ACCESS_KEY', provide('S3 secret access key.')
env 'S3_REGION', provide('S3 region.')
env 'S3_BUCKET', provide('S3 bucket.')
data_url = 'https://media.githubusercontent.com/media/wykhuh/caledna_seed_data/main'
puts 'download taxa files'
system_call "curl -o import_data/taxa_1.zip #{data_url}/taxa_1.zip"
system_call 'unzip import_data/taxa_1 -d import_data/'
system_call "curl -o import_data/taxa_2.zip #{data_url}/taxa_2.zip"
system_call 'unzip import_data/taxa_2 -d import_data/'
puts 'download places files'
system_call "curl -o import_data/places.zip #{data_url}/places.zip"
system_call 'unzip import_data/places -d import_data/'
puts 'setting up database'
rake 'db:drop db:create db:migrate'
puts 'importing taxa'
# rubocop:disable Metrics/LineLength
system_call 'psql -d caledna_development -c "\copy external.ncbi_versions from ./import_data/ncbi_versions.csv delimiter \',\' csv header;" '
system_call 'psql -d caledna_development -c "\copy ncbi_divisions from ./import_data/ncbi_divisions.csv delimiter \',\' csv header;" '
system_call 'psql -d caledna_development -c "\copy ncbi_nodes from ./import_data/ncbi_nodes.csv delimiter \',\' csv header;" '
system_call 'psql -d caledna_development -c "\copy ncbi_names from ./import_data/ncbi_names.csv delimiter \',\' csv header;" '
# rubocop:enable Metrics/LineLength
puts 'importing places'
rake 'mapgrid:import_hex_1500'
rake 'import_places:import_watersheds'
rake 'import_places:import_la_river'
rake 'import_places:import_ucnrs'
rake 'import_places:import_pour_locations'
puts 'seed database'
rake 'db:seed'
system_call 'rm -rf import_data/*'