¿Cómo puedo ejecutar una serie de promesas en orden secuencial?

Tengo una serie de promesas que deben ejecutarse en orden secuencial. var promises = [promise1, promise2, ..., promiseN]; Llamar a RSVP.all los ejecutará en paralelo: RSVP.all(promises).then(...); Pero, ¿cómo puedo ejecutarlos en secuencia? Puedo apilarlos manualmente