promisify and housekeep