суббота, 1 ноября 2008 г.

Удаленный импорт в Trac

Даже для маленькой компании (или одного разрботчика) необходимы инструменты для организации работы на проектами. Кроме системы контроля версий исходного кода, необходимость которой сегодня не отрицает никто, очень полезны системы учета ошибок (баг-тракинга) и базы знаний (часто на основе Wiki). Очень удачным воплощением всего этого набора инструментов в одном флаконе является Trac.

В интернете можно найти много сервисов предлагающих хостинг этого набора для вас за деньги или даже бесплатно. Одним из иэтих сервисов я и воспользовался около года назад, http://www.assembla.com. Но тут, совсем недеавно, они взяли и поменяли свои условия предоставления услуг – и теперь бесплатно ими можно воспользоваться только для OpenSource проектов. Я не буду акцентировать внимание на таком поведении (но надеюсь, вы все поняли и не будете пользоваться  их услугами ;) ). Я стал искать альтернативы – и нашел похожий сервис, предлагающий бесплатный Trac для закрытых частных проектов – DevjaVu.

Все хорошо, но я хотел перенести все мои существующие артефакты со старого сервера на новый. К сожалению, в сравнении со старым сервисом, который может и экспортировать и импортировать данные, новый может только экспортировать (что уже хорошо, если не понравится – ваши данные будут у вас).

Если копнуть глубже – Trac хранит свои данные в локальной базе данных SqLite. Так что я имею к ним доступ на свой локальной машине. Если копнуть еще дальше, то у Trac есть огромное число плагинов и расширений, среди который есть XmlRpcPlugin, который позволяет управлять и изменять данные Trac через протокол XML-RPC.

Теперь дело за малым :) Берем .NET в руки, в виде библиотеки XML-RPC.NET, замечательный ORM инструмент Business Logic Toolkit for .NET скомпилированный с дополнительными библиотеками для доступа к SqLite, и вуаля. Читаем из таблиц локальной БД нужную информацию и заливаем её на Trac через XML-RPC. Если кому интересны детали – могу выложит исходники TracImporter (так я его назвал :) ) в открытый доступ.

P.S. Также, во время реализации, я воспользоваля ещё одной фичей библиотеки BLToolkit – Duck Typing (утиная типизация). Очень удобно.

4 комментария:

derigel комментирует...

Исходники здесь - https://bitbucket.org/derigel/tracimporter/.

Анонимный комментирует...

Специально для Вас друзья мы возвращаем наш отличный проект на котором можно скачать все с файлобменников бесплатно [url=http://kachaitut.ru/]Качай тут[/url] . Все для Вас друзья.
Уважаемые Админы приглашаем Вас обменяться ссылками.

С Уважением, Администрация КачайТУТ.

Анонимный комментирует...

Салон Секреты Красоты предлагает большой выбор классических салонных услуг: парикмахерские услуги, маникюр, педикюр, косметология, перманентный макияж. Мы работаем более 10 лет и придерживаемся принципа соотношения цены и качества обслуживания. Для постоянных клиентов действуют акции и бонусная система. Заходите на наш сайт [url=http://s-krasoti.ru/] маникюр для детей 9 лет
[/url]

Анонимный комментирует...

Производственная компания «М-СЕТ» специализируется на производстве сварных сеток в рулонах, имеющих широкое применение в различных строительных работах.
Производство сварной сетки выполняется на многоточечных сварных машинах, методом контактно-точечной сварки крестообразных соединений. Все пересечения и стыки прутьев тщательно сварены, благодаря чему конструкция отличается превосходным качеством и является одной из самых прочных.
На нашем сайте Вы можете посмотреть образцы нашей продукции и связаться с нами
[url=http://setka-vlg.ru/]процент армирования железобетонных конструкций
[/url]