El Sistema de Información de Suelos del INTA es un SIG, hecho con PostGIS y Rails, para almacenar y procesar los datos de muestras de suelos del instituto.
Para contribuir a SiSINTA es importante leer la Guía de contribución.
-
PostgreSQL 9.1 (o superior)
Nos conectamos como el usuario postgres y creamos al usuario (por ejemplo sisinta), con password encriptado:
$ createuser -P -E -d sisinta
No hace falta que sea superusuario ni cree otros roles. Ahora configuramos los permisos de acceso para poder conectarse con este usuario en
pg_hba.conf
, agregando esta línea:local all sisinta md5
Luego reiniciamos o recargamos la configuración.
-
PostGIS 1.5 (o superior)
Siempre como el usuario postgres, creamos un template específico para la aplicación, con el que se crearán las bases de datos con postgis ya cargado:
$ createdb -O sisinta template_sisinta -E UTF-8
Instalamos el lenguaje plpgsql (si hace falta):
$ createlang plpgsql template_sisinta
Y las tablas de PostGIS (el path a los archivos depende del sistema):
$ psql -d template_sisinta -f /usr/share/postgresql/contrib/postgis-1.5/postgis.sql $ psql -d template_sisinta -f /usr/share/postgresql/contrib/postgis-1.5/spatial_ref_sys.sql
Después, hay que cambiar el propietario de esas tablas a sisinta, dado que un rol común no tiene permisos para crear las definiciones de funciones que usa PostGIS:
$ psql -d template_sisinta -c "ALTER TABLE geography_columns OWNER TO sisinta;" $ psql -d template_sisinta -c "ALTER TABLE geometry_columns OWNER TO sisinta;" $ psql -d template_sisinta -c "ALTER TABLE spatial_ref_sys OWNER TO sisinta;"
Finalmente, convertimos la base de datos en un template de verdad:
$ psql -c "UPDATE pg_database SET datistemplate = TRUE WHERE datname = 'template_sisinta';"
-
GEOS 3.2 (o superior)
Hay que configurar los archivos .dist
y sacarles esa extensión:
-
config/database.yml.dist
username, password y template como los creamos antes antes. Explicitamos port, si no está corriendo en el 5432.
-
config/environments/production.rb.dist
-
config/initializers/devise.rb.dist
-
config/initializers/secret_token.rb.dist
Configuramos el entorno en producción
$ export RAILS_ENV=production
Instalamos las dependencias
$ bundle install
Creamos la base de datos
$ rake db:reset
Precompilamos los archivos estáticos
$ rake assets:precompile
El usuario default es admin global. Se loguea con [email protected] y el password cambiame