Cómo Correr Migraciones Durante Despliegue de Aplicación Rails en Heroku

Se sabe bien que subir aplicaciones web a Heroku es sencillo. En muchos casos es solo cuestión de correr comandos en la terminal y con una que otra configuración solo con subir los cambios al repositorio basta.

Y si bien tenemos esa facilidad, hay cosas que Heroku deja de hacer por conveniencia, ahorro o que sé yo. Tal es el caso de la ejecución de migraciones cuando se despliegan aplicaciones Ruby on Rails en este servicio.

seguir leyendo

Cómo Mandar Cambios a Heroku de una Rama Distinta a master

Cuando se trabaja con Heroku mandar cambios es bastante sencillo. Generalmente, consiste en ejecutar un comando de terminal:

$ git push heroku master

En todo caso, como Git promueve el uso de ramas cada que trabajamos en algo nuevo o cuando se quiere probar una idea, termina siendo contradictorio unir cambios en la rama master que no son fiables o definitivos.

SEGUIR LEYENDO

Cómo Reiniciar Base de Datos PostgreSQL en Heroku

Cuando se trabaja en aplicaciones Ruby on Rails es muy frecuente ir agregando campos a las tablas o nuevas tablas cada tanto tiempo en las etapas iniciales de los proyectos.

A medida que se llega a un punto estable o con muchas características implementadas, se reduce la cantidad de migraciones a generar.

También ocurre que al estar en etapas tempranas nos sentimos con mayor libertad de destruir la base de datos para facilitar el añadir nuevos campos o porque hay mucha información inservible que complica correr migraciones nuevas.

SEGUIR LEYENDO

Gestiona Varias Cuentas de Heroku desde una misma Terminal

Las aplicaciones web las podemos publicar normalmente en servidores web. Generalmente, un servidor Linux con algún sabor bien sea Ubuntu o CentOS.

Antes de poder empezar a usar la aplicación alojada en un servidor web, toca configurarlo con todo lo necesario para que el software se ejecute. En el caso de aplicaciones frontend(escritas en React o Angular) puede ser necesario instalar y configurar Nginx/Apache, NodeJS y uno podría darse por satisfecho.

Cuando nos vamos a otros frameworks, como el que escribo en este blog, Ruby on Rails, toca instalar más librerías y dependencias.

Con el tiempo uno se acostumbra y aprender a generar scripts que hagan estas configuraciones más rápido y con menores problemas. En todo caso, no deja de ser tedioso tener que mantener y actualizar dichos scripts o entornos en la nube.

sigue leyendo

Heroku y Sentry, Habilitar metadata del Dyno

Heroku es una muy buena plataforma para montar aplicaciones casi que sin despeinarse. Su modo de operar es denominado PaaS, es decir, Plataforma como Servicio(en inglés Platform as a Service). Ser una PaaS quiere decir que al usuario le das lo más que se pueda desmenuzado y listo para usar.

A diferencia de AWS que es una IaaS(Infrastructure as a Service) en Heroku, generalmente, hacer despliegue de aplicaciones solo implica un comando y casi cero configuraciones.

Leer más “Heroku y Sentry, Habilitar metadata del Dyno”

Heroku corre sobre Amazon EC2

No recuerdo bien si fue en Quora donde encontré el enlace pero lo importante es el contenido y no el medio. Tal hipervinculo me llevó a una entrevista de InfoQ(un sitio que cubre casi todo lo del mundo de desarrollo de software) a Adam Wiggins(co-fundador de Heroku). En la conversación, Wiggins explica muchos aspectos de los inicios de Heroku, sobre todo el por qué el servicio corre sobre otro servicio, Amazon Elastic Compute Cloud 2.

¿Es Heroku algo como Inception?

Yo creería que sí. Cuando ves esos servicios que ofrecen espacio en la nube, sea para almacenamiento de archivos o servidores, normalmente tienen sus propios servidores en un enorme centro de datos(data center) ubicados en un complejo de lo más cuidado. Servicios como Digital Ocean, Google, el mismo Amazon, tienen sus propios data centers. Leer más “Heroku corre sobre Amazon EC2”

Cómo Resolver el Error de Timeout del Heroku Toolbelt

Heroku es una plataforma genial. Para un desarrollador es importante poder contar con un servidor en ambiente producción o pruebas que se pueda configurar sin tanto rodeo.

Cuando desarrollas en PHP llega a ser muy fácil hacerse con un hospedaje gratuito un o servidor compartido, sin embargo, al ir a otros lenguajes como Python, Ruby o JavaScript, la cosa cambia. Leer más “Cómo Resolver el Error de Timeout del Heroku Toolbelt”

Depurando Errores de Rails 4, Mongoid en Heroku

Resulta que tengo una idea de app que estoy desarrollando poco a poco usando Rails 4 y MongoDB como base de datos. Para lograr esto no se debe usar Active Record, el ORM por defecto de Rails sino un ODM que sería Mongoid. Pues bien, hace ya muchos meses que había lanzado una primera versión de UniApp en Heroku, esto con el mero sentido de conocer cómo es subir una aplicación en esta plataforma. Si bien el proceso es bien sencillo, hay unos errores que toman tiempo depurar aunque la comunidad siempre tiene las respuestas, las cuales quiero compartir en este espacio. Leer más “Depurando Errores de Rails 4, Mongoid en Heroku”