TeamVision: эффективное управление проектами программного обеспечения, инструменты для совместной работы
Teamvision реализует концепцию непрерывной поставки и обеспечивает комплексное управление всем процессом от бизнес-требований до запуска продукта. Предоставляются возможности для сотрудничества по бизнес-требованиям, управления тестированием, управления продуктами, управления кодом и конфигурацией, сборки и среды, развёртывания и мониторинга, а также другие базовые функции.
Ориентируясь на принципы эффективности, Teamvision измеряет качество, эффективность и возможности поставки в процессе разработки, чтобы повысить эффективность организации разработки.
Demo: www.teamcat.cn
Стабильная версия находится в ветке stable, а последний исходный код — в ветке Conception.
Выпущена новая версия 0.0.6. Можно попробовать новую установку. Обновление со старых версий не поддерживается. В версии 0.0.6 добавлены следующие функции:
В версии 0.0.5 добавлены следующие функции:
В версии 0.0.4 добавлены следующие функции:
В версии 0.0.3 добавлены следующие функции:
Обратите внимание, что мы предоставляем только протестированные стабильные версии для установки.
Установка Teamvision осуществляется через дистрибутивный файл в папке distribute. Используется пошаговый метод установки:
Mongo, Redis, Nginx, MySQL, Python В папке build_shell есть сценарии установки для каждого компонента. Обратите внимание: сценарии установки Nginx и Python 3.5 должны быть установлены вручную, остальные предоставляются для справки.
Требуется версия Python 3.5, используйте скрипт python/python.sh для установки.
Требуется версия 3.4 или выше, пароль добавлять нельзя, после установки сервер должен успешно запуститься, и доступ к нему должен быть возможен с компьютера, на котором установлена Teamcat.
Требуется версия 3.2 или выше. После установки сервер должен успешно запуститься и быть доступен с компьютера, на котором установлен Teamcat.
Требуется версия 1.12.0 или выше. Из-за необходимости настройки файла nginx.conf необходимо использовать сценарий установки nginx/nginx.sh в папке build_shell/nginx/.
Требуется версия 5.6 или 5.7. После установки сервер должен успешно запуститься, должен быть способен к аутентификации и должен быть доступен с компьютера, на котором установлен Teamcat. Импортируйте файлы team_vision.sql и privileges.sql из папки mysql в build_shell в базу данных.
Сначала создайте каталог /web/www на компьютере и скопируйте содержимое папок teamvision и dist из папки distribute/0.0.1/build_shell в каталог /web/www/. Откройте файл settings.py в каталоге /web/www/teamvision/teamvision/, чтобы изменить файл конфигурации. Добавьте адрес компьютера в поле allow_host, как показано на рисунке ниже. Добавьте информацию о подключении к mongo в файл конфигурации mongo, как показано на следующем рисунке. Добавьте информацию о подключении к redis в файл конфигурации redis, как показано ниже. Добавьте информацию о подключении к mysql в файл конфигурации mysql, как показано ниже. Добавьте информацию об адресе почтового сервера в файл конфигурации email, как показано ниже. Измените webhost на адрес вашего компьютера, например «http://www.teamcat.cn».
После успешной установки введите целевой адрес компьютера и порт 8848, например http://127.0.0.1:8848/, чтобы получить доступ к Teamvision.
Функции CI требуют установки Controller и Agent. Контроллер отвечает за мониторинг, планирование и отправку задач, а Агент отвечает за выполнение конкретных задач сборки на различных машинах. Краткая архитектура выглядит следующим образом:
Конфигурация, связанная с электронной почтой CI, находится в словаре базы данных. Пожалуйста, измените таблицу DicData: строки 17, 18, 19, 20. Если для отправки электронной почты требуется пароль, обратитесь к файлу controller.properties. Строка 26 словаря может быть настроена как получатель по умолчанию, то есть независимо от того, есть ли у члена проекта учётная запись, он может получать электронные письма через получателя по умолчанию.
Использование:
Добавьте задачу CI, настройте конфигурацию задачи и параметры сборки, чтобы реализовать ежедневную сборку, автоматизированное тестирование, развёртывание одним щелчком мыши и другие функции. Давайте посмотрим, как это настроить.
Создание задачи относительно просто, поэтому мы не будем вдаваться в подробности. После создания задачи вы увидите следующее изображение.
Задача состоит из следующих частей:
Процесс выполнения задачи состоит из конкретных шагов. Вы можете найти подходящий плагин шагов в списке шагов в правом верхнем углу страницы конфигурации. Плагины шагов можно добавлять несколько, и порядок выполнения можно изменить, перетащив плагин. Плагин включает код, сборку, тестирование серверной части, тестирование WebUI, сборку Android, IOS, а также плагин оболочки и т.д. Посмотрите на следующую таблицу, чтобы узнать о доступных плагинах и функциях.
Название | Функция | Зависимость |
---|---|---|
SVN | Плагин управления версиями SVN | Нет |
GIT | Плагин управления версиями GIT | Нет |
Shell | Выполнение команд оболочки или пакетных команд | Нет |
Командная строка сборки | Сборка командной строки и загрузка пакета сборки | Нет |
Gradle | Плагин сборки Gradle | Нет |
IOS | Плагин сборки IOS | Нет |
Ant | Плагин сборки Ant | Нет |
SSH заменяет файл | Заменяет файл через SSH | Нет |
SSH развёртывает | Развёртывает удалённо через SSH | Нет |
IOS командная строка строит | Строит пакет IOS командной строки | Нет |
Копировать на сервер | Копирует продукт или другой пакет на сервер | Нет |
Тестирование интерфейса | Плагин тестирования API | Требуется зависимость от GAT Framework |
Проверка конфигурации XCode | Проверяет проект XCODE | Нет |
XCTest тестирует | Устарело | Нет |
Selenium | Плагин автоматизации тестирования WebUI | Зависит от GAT |
После завершения настройки плагина, пожалуйста, нажмите «Сохранить». Если вы переключитесь на другой этап сборки без сохранения, конфигурация будет потеряна.
Пожалуйста, нажмите кнопку «Сохранить» после завершения настройки плагина. Если вы не сохраните его, конфигурация будет потеряна при переключении между этапами сборки.
Выше приведено описание процесса настройки простой задачи. Далее давайте поговорим о глобальных переменных, предоставляемых CI по умолчанию. Все могут войти в CI--Settings, чтобы увидеть их.
Имя | Использование | Описание |
---|---|---|
WORKSPACE | ${WORKSPACE} | Представляет текущий рабочий каталог задачи на агенте |
BUILDTOOL | ${BUILDTOOL} | Каталог инструментов сборки агента |
BUILDVERSION | ${BUILDVERSION} | Представляет текущую версию сборки задачи, которая увеличивается в соответствии с количеством сборок |
COMMONSPACE | ${COMMONSPACE} | Общий каталог для всех задач сборки |
BUILDBACKUPSPACE | ${BUILDBACKUPSPACE} | Создаётся автоматически в соответствии с версией сборки и не удаляется после выполнения задачи |
TASKID | ${TASKID} | Идентификатор задачи сборки |
TASKNAME | ${TASKNAME} | Имя задачи сборки |
HISTORYID | ${HISTORYID} | ID записи истории сборки, используйте API записи для получения URL загрузки пакета |
Глобальные переменные можно использовать в любом месте плагина шагов.
Давайте посмотрим на другую функцию Teamvision CI — параметры сборки. Щёлкните карточку задачи, чтобы войти в просмотр параметров. Как показано ниже:
Введите имя группы параметров и нажмите Enter, чтобы создать группу параметров сборки. Группа параметров содержит три части:
Основная информация: эта часть отображает основную информацию о параметрах.
Список параметров: здесь определяется список параметров в форме Key-Value.
Плагин списка: в этой части можно определить, следует ли выполнять шаг задачи в зависимости от состояния параметра в группе параметров. На изображении выше мы видим, что правая половина представляет собой основную информацию. Помимо ID, имени и описания информации, есть две важные информации:
Настройка плагина: выбор этого параметра означает включение состояния плагина шага в списке плагинов в процессе выполнения задачи.
Настройки по умолчанию: указывает, используется ли группа параметров по умолчанию при выполнении задачи без выбора какой-либо группы параметров.
Теперь, когда мы понимаем базовую информацию, давайте посмотрим, как использовать список параметров. Как показано ниже:
Список параметров представлен в формате Key-Value. При использовании вы можете использовать ${key} для использования значения, такого как значение, показанное на рисунке выше. Обратите внимание: после создания группы параметров обязательно сохраните её.
Говоря о списке параметров, давайте взглянем на список плагинов. Сначала посмотрите на картинку:
Если ваш список плагинов отличается от показанного на картинке или вы видите разные плагины, это связано с тем, что вы используете разные шаги задачи при настройке задачи. Когда мы смотрим на этот список, мы можем использовать переключатель справа, чтобы решить, будет ли включён этот плагин во время выполнения. Обратите внимание: если вы измените состояние активации плагина, обязательно сохраните его.
Наконец, давайте кратко рассмотрим функцию группы параметров: группа параметров фактически выполняет конфигурацию параметров, используемых в сборке. Сохраните часто используемые параметры в виде группы параметров, и вы сможете напрямую выбрать их при следующем использовании. Кроме того, наш процесс сборки иногда требует специальных сценариев, таких как необходимость выполнения модульного тестирования для некоторых продуктов сборки, в то время как некоторые сценарии не требуют этого. В этом случае мы можем настроить различные группы параметров для настройки того, какие шаги задачи будут выполняться. По умолчанию переключатель плагина (упомянутый при представлении основной информации) не включён, то есть задача выполняется в соответствии с конфигурацией шага задачи на странице конфигурации задачи. Только после открытия переключателя плагина в основной информации группы параметров он вступит в силу.
You can comment after Login
Inappropriate content may be displayed here and will not be shown on the page. You can check and modify it through the relevant editing function
If you confirm that the content does not involve inappropriate language/advertisement redirection/violence/vulgar pornography/infringement/piracy/false/insignificant or illegal content related to national laws and regulations, you can click submit to make an appeal, and we will handle it as soon as possible.
Comments ( 0 )