Должен ли программист выполнять роль девопса на сервере заказчика?
По-моему, ответ простой - что было записано в договоре, то и обязан.
Т.е. если речь шла о коде - то только код. Если договаривались о "запустить на сервере" - то надо ставить на сервер. Но вот о том, что для вебсервера используют Мак, я еще не слышал :-)
Ну жесть, совсем обленились)) Какой девопс для банальной настройки?))

Вопрос и выеденного яйца не стоит. Все очень просто. 

Если в договоре вы прописывали, что проект должен работать конкретно с его окружением - то это ваши проблемы - мучайтесь. Если же не прописано - значит уточните заказчику, что его окружение не подходит под ваш проект совсем, надо другое, новое. Если он вам до этого говорил, что у него только такое и поменять не может - опять же ваши проблемы, будьте человеком и настройте. 

Я вообще всегда клиентам все сам настраиваю, ибо я должен сдать рабочий проект, а не архив с которым он не будет знать что делать. Но у меня никогда заказчики не диктовали какое будет окружение, напротив интересовались, какой лучше ВПС арендовать и где. Поэтому все банально упирается в то, говорили ли вы ранее с заказчиком об его окружении или нет. Если нет - просто попросите его подобрать другое окружение, или обратитесь в саппорт, если таковой предоставляется на арендованном серве. Если заказчик неадекват и будет гнуть мол запускайте мне на моем старье и никак иначе, при этом ранее вы это не оговаривали и в договоре не описывали - шлите его лесом.