The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск платформы совместной разработки OneDev 3.0

19.01.2020 10:34

Доступен новый значительный выпуск OneDev 3.0, платформы для управления полным циклом разработки ПО, предоставляющей полный набор инструментов для разработки проектов в соответствии с парадигмой DevOps. По своим возможностям OneDev напоминает GitLab и также даёт возможность развернуть на своих мощностях инфраструктуру совместной разработки, рецензирования, тестирования, сборки и доставки релизов, не привязываясь к внешним облачным сервисам, таким как GitHub. Код проект написан на языке Java и распространяется под лицензией MIT.

Некоторые возможности:

  • Упрощённый процесс развёртывания сборочной фермы для запуска CI-сборок в Kubernetes, не требующий выполнения агентов и runner-ов. Возможность тестирования в контейнерах с Linux и Windows;
  • Поддержка создания спецификаций сборки (Build Spec) в наглядном режиме без написания YAML-файлов и запоминания синтаксиса;
  • Возможность гибкой настройки процесса сборки с использованием условных сборочных параметров, параллельным запуском нескольких сборочных работ и автоматическим запуском работ при наступлении определённых событий;
  • Поддержка определения собственных состояний и полей для уведомлений о проблемах (issue), возможность определения зависимостей между полями и автоматическая смена состояния при наступлении определённых событий;
  • Автообновляемый интерфейс issue, не требующий перезагрузки страницы;
  • Система поиска и навигации по коду и изменениям, учитывающая особенности синтаксиса Java, JavaScript, C, C++, CSharp, Go, PHP, Python, CSS, SCSS, LESS и R;
  • Поддержка привязки обсуждений и внешних комментариев к коду и блокам с изменениями (diff);
  • Гибкие правила рецензирования pull-запросов c возможностью защиты определённых веток и назначением разработчиков для рецензирования;
  • Поэтапный режим анализа коммитов при рецензировании pull-запросов. Привязка к обсуждениям прошлого рецензирования;
  • Язык запросов, позволяющий находить нужную информацию в проектах, коммитах, сборках, issues, pull-запросах и комментариях. Возможность сохранения запроса и получения уведомления о появлении связанных с ним новых событиях;
  • Система контроля доступа, позволяющая определять кто может изменять код в определённом подкаталоге, назначать issues, запускать сборки релизов, просматривать логи и т.п.
  • Возможности для создания и клонирования репозиториев;
  • Подписка на получение уведомлений об осуществлении коммитов в master-ветку;
  • Поддержка pull-запросов с автоматизацией проверки принимаемого коммита в системе непрерывной интеграции и утверждением экспертным советом, включающим как минимум два разработчика;
  • Возможность закрытия issues через сообщение коммита, которое может связывать обсуждение, коммит, сборки и pull-запросы;
  • Возможность создания сохраняемых в интерфейсе форм для отображения каким пользователям назначено решение проблем (issue);
  • Поддержка создания произвольных полей для прикрепления issue к определённым модулям и платформам;
  • Возможность автоматической смены статуса проблемы на Deployed при исправлении при сборке и на Review при открытии pull-запроса;
  • Возможность назначения проблеме состояния Verified, которое могут присваивать разработчики, имеющие статус тестировщика;
  • Поддержка ручного инициирования пересборки с возможностью указания версии, которая будет присвоена и создан соответствующий тег в случае успеха сборки;
  • Возможность выбора платформы и версии ядра Linux при запуске ручной пересборки;
  • Поддержка тестирования в CI различных комбинаций Oracle/MySQL и Linux/Windows при коммите в master-ветку;
  • Автоматическое создание уведомлений о проблемах (issue) и назначение ответственного для разбора проблемы в случае сбоя сборки master-ветки в CI. Автозакрытие issue при устранении сбоя при сборке;
  • Возможность генерации файлов в одной работе, их параллельной обработке во второй и анализ результатов в третьей;
  • Поддержка повторного запуска работ в случае ошибки запуска обработчика в Kubernetes;
  • Возможность использования сервиса MySQL в процессе выполнения работ;
  • Поддержка задания секретного ключа при определении спецификации сборки;
  • Возможность ограничения доступа анонимным пользователям только к релизам определённых проектов;
  • Поддержка ограничения генерации релизов только master-веткой и размещения на рабочих серверах только релизов, собранных из master-ветки.


  1. Главная ссылка к новости (https://news.ycombinator.com/i...)
  2. OpenNews: Релиз платформы совместной разработки Kallithea 0.5
  3. OpenNews: Новые проекты Linux Foundation по финансированию, безопасности и совместной разработке СПО
  4. OpenNews: Началась разработка GitPub, протокола для децентрализованных Git-сервисов
  5. OpenNews: Первый выпуск Gitea, форка системы совместной разработки Gogs
  6. OpenNews: Выпуск системы совместной разработки GitBucket 4.33
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/52213-onedev
Ключевые слова: onedev, devops
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (25) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 10:58, 19/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Интересно сравнение по потребляемым ресурсам на сервере, в сравнении с гитлаб.
     
     
  • 2.2, DerRoteBaron (ok), 12:03, 19/01/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    а ещё по стабильности работы потому, что на моей памяти у self-hosted gitlab через пару месяцев работы возникают либо проблемы либо очень серьёзные проблемы.
     
     
  • 3.9, Алексей (??), 13:24, 19/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Часто такое слышу, но ни разу не видел. Админил два инстанса в разных компаниях.
     
  • 3.14, shadow_alone (ok), 17:00, 19/01/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    "у self-hosted gitlab через пару месяцев работы возникают либо проблемы либо очень серьёзные проблемы."
    Ага - расскажи сказки.
    Просто кто-то очень не умеет готовить...
    6+ лет self-hosted gitlab - полёт на 5+.
     

  • 1.3, Аноним (3), 12:07, 19/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Все свистит, мигает..
    Кто котт вылять будет ?
     
     
  • 2.4, Аноним (4), 12:11, 19/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >Кто котт вылять будет ?

    Пардон,
    Кто котт вaлять будет ?

     
     
  • 3.5, Аноним (5), 12:33, 19/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Раньше дурака валяли, а теперь код.
     

  • 1.6, Аноним (-), 12:45, 19/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Хорошая платформа? Помогает?
     
  • 1.8, Аноним (8), 13:08, 19/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    > без написания YAML-файлов и запоминания синтаксиса

    Гуд! Можно кодить, не включая голову.
    > Язык запросов

    Ну вооот... Придётся ещё какой-то "язык запросов" осваивать. А так всё хорошо начиналось...

     
     
  • 2.10, Аноним (4), 14:01, 19/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Гуд! Можно кодить, не включая голову.

    SCRUMing не приходя в сознание

    >Ну вооот... Придётся ещё какой-то "язык запросов" осваивать. А так всё хорошо начиналось...

    Product Owners & co биологически неспособны думать на таких временных масштабах

     
     
  • 3.11, Аноним (4), 14:06, 19/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    ... поэтому в этом заявлении индусTpия не рисковала ничем.
     

  • 1.12, Аноним (12), 15:07, 19/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    На чем на чем написано?? Я уж думал быдлокодеры на этом йазыке остались только во всяком корпоративном шлаке.. ан нет, лезут откуда-то))
     
     
  • 2.15, Аноним (15), 17:16, 19/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ты не поверишь, ведроид и его проги компилируются жабой 6/7
     
  • 2.26, Аноним (26), 17:26, 20/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    так-то Java пошустрее Ruby будет.

    а вообще, надо будет посмотреть на этот проект. Gitlab в общем-то неплох, но чет я не нашел, как в нем настроить например машину состояний меток, чтобы из одного "состояния" можно было перевести только в ограниченное количество других (в идеале - это еще и от роли пользователя должно зависеть). Хотя метки вообще не для этого должны использоваться, насколько я понимаю, но другого способа помечать статус задачи я там не увидел (кроме open и closed).

     

  • 1.18, RNZ (ok), 18:50, 19/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    "написан на языке Java" - значит крутится на jvm - спасибо, не надо.
     
  • 1.19, Аноним (19), 18:53, 19/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Чем оно лучше Phabricator (который на php)?
     
     
  • 2.20, Anonymou (?), 19:39, 19/01/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Java легче запустить чем пыхпых
     

  • 1.21, Аноним (21), 23:52, 19/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Java мертв. Давайте уже на Gol или Rust пишите.
    А вообще молодцы работы проделано дохренища.
     
     
  • 2.22, anoooooooooooooooooon (?), 08:48, 20/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну так встань пойди и напиши.
     
  • 2.27, Онаним (?), 21:16, 20/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Чтобы каждую не достающую функцию стандартной библиотеки реализовывать самому? Он же не очередной вебсервер пишет, а реальный софт. В этом плане Java/C#/Python куда привлекательнее.
     

  • 1.23, Аноним (23), 09:22, 20/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    > совместной разработки
    > OneDev

    Гении нейминга...

     
  • 1.24, Аноним (24), 11:15, 20/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    ROLF. Вся ява в одной новости на данный момент их сервер отваливается по таймауту в браузере.
    Curl же получает ответ через несколько минут:
    $ curl -i https://code.onedev.io
    HTTP/1.1 302 Found
    Date: Mon, 20 Jan 2020 08:05:54 GMT
    Server: Jetty(9.4.24.v20191120)
    X-FRAME-OPTIONS: SAMEORIGION
    Expires: Thu, 01 Jan 1970 00:00:00 GMT
    Pragma: no-cache
    Cache-Control: no-cache, no-store
    Location: /projects
    Content-Length: 0
    Set-Cookie: JSESSIONID=node0c9lt1i2tbrwi1vq5asd6cexss12213.node0; Path=/
     
     
  • 2.25, Аноним (25), 15:12, 20/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Открылся за 20 секунд и сверху плашка "Unable to set up websocket connection. Please check your proxy setting".
    Славься Java! Корпоративный язык для кипучей деятельности, а не для людей.
     

  • 1.28, Andrew (??), 01:38, 21/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я вот другого не понял...если там есть функцинальность Git и есть ACL, то где возможность использовать ключи для работы (clone, pull, push) с репозиториями? Или плохо смотрю, или всё только через HTTP(S) с авторизацией логин/пароль. Непонятно.
     
     
  • 2.29, Moomintroll (ok), 09:47, 21/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > где возможность использовать ключи для работы (clone, pull, push) с репозиториями?

    Гм... Неожиданно, но я тоже не нашёл. Значит действительно нет. :-(

    Отложу в долгий ящик. Пока неюзабельно.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру