Cities struggle to shelter migrants