Разработка системных гранул переведена на GitHub, версионированные сборки — на Artifactory

6 views
Skip to first unread message

Ivan Ponomarev

unread,
Apr 22, 2018, 1:09:22 PM4/22/18
to curs-group
Всем привет,

разработка системных гранул (common.sys) переведена на GitHub, проект доступен по адресу: https://github.com/CourseOrchestra/syslib. Соответствующий репозиторий Subversion переведён в Read-only режим. Кроме того, добавлена выкладка на Artifactory, версионированные сборки доступны здесь: https://artifactory.corchestra.ru/artifactory/syslib/


— Как теперь использовать системные гранулы?

Можно как и прежде — через SVN Externals, указывая в качестве URL ссылку на проект GitHub. (Disclaimer: в интернете пишут,  что так должно работать, но лично я не пробовал :-)

Если вы используете Ansible для развёртывания решений, предпочтительным вариантом является закачивание версионированной сборки с Artifactory с помощью примерно такого таска:

- name: get common.sys from Artifactory
  unarchive:
    remote_src: yes
    src: "https://{{ artifactory_user }}:{{ artifactory_password }}@artifactory.corchestra.ru/artifactory/syslib/{{ syslib_build }}/syslib.tgz"
    dest: "{{ userdatas }}/common.sys"


— Что за файлы находятся внутри Artifactory-сборки?
  • syslib.tgz — собственно, системная юзердата
  • syslib.templates.tgz — шаблоны настроек (grainsSettings и generalapp.properties)


— Почему формат архива — tgz?


Основной вариант использования этих сборок — установка через Ansible на Linux. При работе на Linux с tgz-архивами не требуется установки дополнительных пакетов, что несколько упрощает жизнь.



— Как теперь дорабатывать системную библиотеку?


Через Pull Request на GitHub. Каждый pull request должен пройти сборку на Jenkins и Code Review от владельца проекта (Марии Прудывус).

Т. к. на системные гранулы нет юнит-тестов, единственная проверка на Jenkins состоит в прогоне статического анализатора flake8 и в проверке того факта, что количество ворнингов не увеличивается относительно количества ворнингов предыдущей успешной сборки (так называемый ratcheting). На текущий момент flake8-ворнингов 2221 штука, посмотреть их можно на Jenkins-е в файле flake8report.txt, генерируемом вместе с каждой сборкой.



С уважением,

Иван Пономарёв
Reply all
Reply to author
Forward
0 new messages