Как стать автором
Поиск
Написать публикацию
Обновить

Комментарии 10

Это прекрасно. Особенно на фоне того как сама IBM, своим маркетингом, убивает замечательную платформу.
Ага. Чего только стоит журналирование во встроенной БД, и вообще все возможные системные логирования. И командная строка — просто огонь.
Раньше адоптед авторити не работала только для библиотек сервис програм (ну и не беда), потом яву из ядра выпили, а разработчики начали ее активно юзать, потом еще что-то из под адоптед авторити выпало и такая красивая схема наследования прав в итоге полетела в тартарары ((
Новый подход нравился службе поддержки и бизнесу
— потому что все легло на плечи разработчиков, а где же devops?

Некоторые проблемы так и остались нерешенными. Протестированное ПО не всегда соответствовало тому, что ставили в продуктив. Разработчик всегда мог в последний момент что-то поменять в подготовленной программе, руководствуюсь своим видением правильности работы системы
— а как насчет ставить протестированные сборки?

В экстренных ситуациях даже служба поддержки может внести небольшие изменения в код и отправить исправление в продуктив, не обладая ценными знаниями о компиляции, сборке и установке ПО.
— а как же кровавый ынтэрпрайз! служба поддержки вносит изменения, а эти изменения нигде не отраженны в документации и тп, а потом гадай зачем это сделали и возникают старые проблемы — Протестированное ПО не всегда соответствовало тому, что ставили в продуктив
спасибо за коммент :)
потому что все легло на плечи разработчиков, а где же devops?

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

Старались, но поставку для «боя», готовил разработчик только после тестирования и под конкретную среду. В этот момент и могли происходить чудесные изменения.

Но теперь, как я уже писал в статье, сборка проходит все стадии и все среды. Внезапно изменить её после тестирования, практически невозможно.
Намного проще и быстрее провести её через весь процесс. Это займет от пары минут до пары часов (в зависимости от сложности ПО и кол-ва тестов).
служба поддержки вносит изменения, а эти изменения нигде не отраженны в документации и тп

Мелкими изменения от поддержки, это чаще всего «хот-фиксы», если разработчик в данный момент недоступен. Изменения отражаются и в хранилище кода с соответствующими комментариями, и в Jira и в artifactory и т.д. Это скорее некоторое исключение из процесса, про которое всегда узнают и аналитики и разработчики.

Мы вместо CL для установщиков в одном крупном банке использовали REXX — интерпретируемый встроенный язык. Сделали для себя стандартный почти всемогущий шаблон инсталлятора — и стало весьма хорошо.
То есть админам оставалось взять подписанный savf, отресторить его и запустить REXX. Ну, кроме совсем уж сложных случаев.

В другом крупном банке для сборки и деплоя частично прикрутили gradle при помощи кучи java и открытого toolbox'а. Но по моим ощущениям для разработчиков это не зверски удобно. Из того, что я видел, наша подготовка инсталлятора была проще подготовки скрипта для gradle. Но не знаю, сам не пробовал.
Да, gradle java и jt400 видели на imbi meetup в этом году. Довольно интересная идея, но однозначно поднимает порог вхождения для разработчиков.

Я хотел написать инсталлятор на CL, но потом отошел от установки обновлений и как-то остыл.
А вообще у мне для своих нужд очень много на CL и даже с вызовами системного API. Слава богу возможностей CL вполне хватает разобрать бинарные результаты и юзер спейсы. А когда IBM штатно добавил вызов SQL прямо из командной строки, так вообще открылся простор для скриптования.
Кстати, мы добавляем значения в User Defined Information с помощью вызова API (QLICOBJD) из CL сборщика.

Если говорить про возможность вызова системного API, то IBM тут конечно очень сильно выступил и облегчил нам жизнь. У нас в Ops написано много вспомогательных тулов на SQL (функций и хранимок) с вызовами различных системных «апишек».

Бобик жив ещё? Помнится когда я админил в Пенсионном фонде и ещё была жива OS/2 (на которой тоже есть REXX), в качестве клиента к AS/400, я операторам багоисправитель пачек документов, от работодателей написал. Та багованная досовая софтина от погромистов (это не опечатка) пенсионного фонда частенько делала дупы, в результате чего бедным женщинам приходилось глазками эти дупы выискивать и ручками удалять. А потом ещё и индексы исправлять и в заголовке правильное количество не забывать прописывать. Недавно вспомнил, что подарил этот нехитрый скрипт в коллекцию одного фаната REXX. И да. Этот артефакт ушедшей эпохи до сих пор есть в интернете. Сейчас-бы конечно, я-б вместо LineIn использовал-бы СharIn, засасывая файл целиком в память, да парсил-бы по строкам. Но тогда молодой был. ;-)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий