Найти тему
Проект OpenNet

Удаление Gem-пакета в знак протеста привело к проблемам в ряде систем на базе Chef

Сет Варго (Seth Vargo), бывший сотрудник компании Chef, развивающей одноимённую свободную систему управления конфигурацией, в знак протеста против заключения контракта с иммиграционной и таможенной полицией США (ICE), удалил свои Gem-пакеты и перевёл в архивное состояние связанные с ними репозитории на GitHub. Следствием такого шага стало нарушение работы информационных систем некоторых клиентов компании Chef, которые использовали удалённые Ruby-модули в качестве зависимостей в своих проектах.

Наиболее популярный из удалённых пакетов Chef-Sugar насчитывал более 20 млн загрузок, из которых почти 4 млн приходятся на последний выпуск. Другой удалённый пакет chef-api насчитывал почти 600 тысяч загрузок (132 тысячи последней версии). Разработчики Chef попытались оперативно создать форк старой версии кода и продолжить поддержку пакета своими силами.

Администрации репозитория Ruby Gems было направлено письмо с просьбой передать управление пакетами chef-api, chef-sugar, community-zero и stove компании Chef Software с приведением документов, подтверждающих права на эти пакеты. Имущественные права на код принадлежит Chef Software, так как модули развивались Сетом Варго во время его работы в компании. Сет был лишь одним из сопровождающих gem-пакеты и перед проведением чистки удалил остальных сотрудников из списков доступа. Заявления было рассмотрено и пакеты переданы под управление Chef Software.

В процессе создания форка пакета chef-sugar в коде попутно были заменены упоминания Сета Варго на "Chef Software, Inc", что вызвало резонные возражения о нарушении авторских прав. Разработчики Chef вернули упоминание Сета Варго и извинились, указав, что замена была совершена случайно из-за спешки в попытке как можно быстрее восстановить работу систем, оказавшихся неработоспособными после удаления пакета. Инцидент повторяет случай с NPM-пакетом left-pad, в результате которого оказались неработоспособными многие крупные проекты, связанные зависимостями.

Пакеты были удалены Сетом Варго в знак солидарности с протестующими против иммиграционной политики США, а именно практики разделения детей и их родителей после задержания нелегальных эмигрантов. Акция была проведена после того как стало известно о годовом контракте, который компания Chef заключила с ICE (размер контракта составил $95500). Вместо кода в переведённых в архив репозиториях Сет Варго разместил пояснение, в котором указал, что он имеет моральное и этическое право не допустить использование своего кода во имя зла. Также была выражена готовность вернуть доступ к пакетам в случае разрыва контракта с ICE.

Руководитель компании Chef пояснил, что работа с ICE началась в 2014 году и велась ещё с прошлой президентской администрацией, до введения мер, осуждаемых протестующими. Он также пояснил, что несмотря на то, что некоторые представители сообщества не хотели, чтобы компания Chef имела деловые отношения с ICE, изначально было решено работать с правительственными учреждениями независимо от личного отношения к их политике, так как целью является поддержание платформы Chef на плаву. Но сейчас позиция изменилась и после внутренних обсуждений компания приняла решение не продлевать контракт в следующем году. При этом все ранее заключённые договорённости будут исполнены в полном объёме, но полученные от них деньги будут направлены на благотворительность.