-
Notifications
You must be signed in to change notification settings - Fork 0
Aprovisionamiento (Manual)
Estos son los pasos para realizar el aprovisionamiento manual (utilizando Ansible) del entorno de desarrollo:
- Debemos asegurarnos tener instalado Ansible 2.2.2.0 o superior instalada:
sudo apt install ansible
- Ansible es interpretado por python2.7, por lo que debemos asegurarnos que tenemos la versión indicada instalada en el servidor:
sudo lxc-attach -n "$name" -- sudo apt update
sudo lxc-attach -n "$name" -- sudo apt install -y python2.7
- Instalar las dependencias de los playbooks en la máquina desde la que ejecutaremos Ansible. Dentro del repositorio de instalación:
bin/setup
- Ejecutamos el playbook de playbook/development.yml indicando el inventory file inventory/dev, el usuario e indicando que solo debe coger los hosts de lxc. Asegurarnos que el intérprete que se usa sea el de python2.7 para ello añadimos al comando:
ansible-playbook playbook/development.yml -u openfoodnetwork -i inventory/dev --limit=lxc -e ‘ansible_python_interpreter=/usr/bin/python2.7’ --ask-sudo-pass
Donde:
-u | Indica el usuario. |
-i | El fichero donde se indican los hosts sobre los que realizar las acciones. |
--limit | Para indicar que solo debe aprovisionar los hosts bajo el tag indicado. |
-e | Indicando variables extras. En este caso se usa para indicar el intérprete de ansible. |
Una vez tenemos todas las tareas completadas satisfactoriamente, esta aprovisionado el container. Podemos comprobar que tenemos postgresql, ruby, bundler, las dependencias y usuarios que necesitamos para nuestra aplicación.
Ahora queda deployar la aplicación (instalar las Gems o librerías de Ruby y crear y rellenar las bases de datos con datos de prueba). Entramos mediante una conexión ssh:
- Instalamos las gems dependencias de la aplicación:
cd openfoodnetwork
bundle install
- Crear la base de datos usando las especificaciones del fichero config/database.yml, la poblamos utilizando el esquema y la seed:
rake db:setup
- Cargamos datos de prueba en la base de datos para poder realizar las acciones mínimas en la aplicación:
rake openfoodnetwork:dev:load_sample_data
Staging and production provisioning
OFN-DevEnv-Quick-Start - english
Crear entorno
Aprovisionamiento del entorno