Архив метки: tracd

Установка и запуск Trac чисто попробовать

Документация здесь https://trac.edgewall.org/wiki/TranslationRu/TracGuide

Trac можно устанавливать как модуль для Python (https://pypi.org/project/Trac/)

$ pip install Trac

Под проекты создадим папку например в домашней

$ mkdir ~/trac

После установки будут доступны программы tracd — веб-сервер и trac-admin — для администрирования через командную строку.

Команда для запуска веб-сервера:

$ tracd -p 8000 --env-parent-dir ~/trac

После запуска можно войти через браузер на страницу http://127.0.0.1:8000/. Здесь будут отображаться ссылки на доступные проекты, но сначала их надо добавить через trac-admin. Например создадим тестовый проект

$ trac-admin ~/trac/test initenv
Создание нового окружения Trac в ~/trac/test

Trac will first ask a few questions about your environment
in order to initialize and prepare the project database.

 Please enter the name of your project.
 This name will be used in page titles and descriptions.

Название проекта [My Project]> Test project

 Please specify the connection string for the database. By default,
 a local SQLite database is created in the environment directory.
 It is also possible to use an existing MySQL or PostgreSQL database
 (check the Trac documentation for the connection string syntax).

Строка подключения к базе данных [sqlite:db/trac.db]> 

Project environment for 'Test project' created.

You may configure the environment by editing the file:

  ~/trac/test/conf/trac.ini

You can run the Trac standalone web server `tracd` and point
your browser to http://localhost:8000/test.

  tracd --port 8000 ~/trac/test

Navigate to "Help/Guide" to browse the documentation for Trac,
including information on further setup (such as deploying Trac
to a real web server).

The latest documentation can also be found on the project
website:

  https://trac.edgewall.org/

Теперь после перезапуска tracd по адресу http://127.0.0.1:8000/ в списке появится Test project, в который можно заходить.

По умолчанию в созданном проекте ничего нельзя делать — нет прав. Управление правами производится через trac-admin. Поскольку мы установили trac чисто посмотреть покрутить, то включим полные права всем анонимным пользователям без всякого входа

$ trac-admin ~/trac/test permission add anonymous TRAC_ADMIN

Теперь можно перезапускать tracd, будет всё можно.

Прочая полезная информация для общего понимания:

  • лог для тестового проекта будет писаться в ~/trac/test/log/trac.log
  • данные сайта будут храниться в ~/trac/test/db/trac.db (формат SQLite, можно открывать любым подходящим просмотрщиком)
  • настройки — в ~/trac/test/conf/trac.ini, для вступления изменений в силу нужно перезапустить tracd

Немного про Trac

В общих чертах

Веб-сервер для управления жизненным циклом программных продуктов. Позволяет придумать этапы разработки программы, создавать карточки с запланированными фичами и найденными ошибками, просматривать изменения в исходном коде репозитория, вести документацию. В движке реализованы тикеты с уникальными номерами, вики, поддержка плагинов (вставка макросов, изображений, рисование диаграмм, xmlrpc и т.д.), интеграция с Subversion.

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

По состоянию на 2021 год, движок работал на устаревшем Python 2.7

Установка

Либо через pip, либо через менеджер пакетов в Linux. Есть и другие варианты. Есть версия под Windows.

Настройка

Конфигурация хранится в текстовых файлах. Из одних можно импортировать другие. Сначала объявляется имя секции, затем перечисляются имена параметров и их значения.

Запуск и остановка сервера

*nix

service tracd srart
service tracd stop

windows

В командной строке:

C:\Python27\Scripts\tracd.exe --port 8000 C:\trac_test

Остановить можно через Ctrl+C

Хранение данных

По умолчанию данные хранятся в файле БД sqlite — удобно для бэкапов, просто остановить сервер и скопировать файл. Как вариант можно перейти на PostgreSQL.