|
Gerrit + git
|
|||
---|---|---|---|
#18+
Коллеги, добрый день. Все бьюсь над одной задачей. Пытаюсь интегрировать git, gerrit и jenkins. Делаю коммит и пуш на сервер. jenkins срабатывает и начинает свой job, собирает проект. но gerrit никак не реагирует на пуши. Приходится в геррите открывать проект и создавать на него change. Неужели это не автоматом генерируется? Я себе представляю воркфлоу таким образом: я создаю пуш на сервер, генерируется событие, автоматом создается change и отправляется уведомление на почту. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2017, 15:01 |
|
Gerrit + git
|
|||
---|---|---|---|
#18+
ditbanКоллеги, добрый день. Все бьюсь над одной задачей. Пытаюсь интегрировать git, gerrit и jenkins. Делаю коммит и пуш на сервер. jenkins срабатывает и начинает свой job, собирает проект. но gerrit никак не реагирует на пуши. Приходится в геррите открывать проект и создавать на него change. Неужели это не автоматом генерируется? Я себе представляю воркфлоу таким образом: я создаю пуш на сервер, генерируется событие, автоматом создается change и отправляется уведомление на почту. 1. Не используйте gerrit. Это какой-то сон разума. При наличии бесплатных альтернитав (например gitlab-ce) он не нужен совсем. 2. Изменения в gerrit надо делать строго через git review (скрипт для этого геррит создаёт автоматически). Тогда всё будет. Только jenkins'у будет тоскливо сканировать все ветки, которые никогда не удаляются. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2017, 11:54 |
|
Gerrit + git
|
|||
---|---|---|---|
#18+
Alexey Tomin, а можно поподробнее про git review? Читала, что это отдельное расширение для gita. И вроде как не является обязательной. Желательна настройка change-id, это да. Вот отправляю git push origin HEAD:refs/for/master, вижу, что в ветку refs/for/master все запушилось, но change автоматом так и не создался. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2017, 10:18 |
|
Gerrit + git
|
|||
---|---|---|---|
#18+
ditbanAlexey Tomin, а можно поподробнее про git review? Читала, что это отдельное расширение для gita. И вроде как не является обязательной. Желательна настройка change-id, это да. Вот отправляю git push origin HEAD:refs/for/master, вижу, что в ветку refs/for/master все запушилось, но change автоматом так и не создался. Про change-id - проще всего при клонировании проекта сделать это правильно - выбрать "clone with commit-msg hook" - А git review- это чтобы не писать совсем уж уродский "git push origin HEAD:refs/for/master" - для этого надо в файл ~/.gitconfig добавить строки Код: sql 1. 2. 3.
Ну и [user] заполнить, да... ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2017, 16:01 |
|
Gerrit + git
|
|||
---|---|---|---|
#18+
Alexey Tomin, Но ведь git-review не является обязательным? Почему может не создаваться change при пуше? Это от настроек проекта зависит? Или это хук? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.09.2017, 08:45 |
|
Gerrit + git
|
|||
---|---|---|---|
#18+
Alexey Tomin, и у меня нет функции "клонировать проект", тем более с commit-msg, я этот хук копирую в новый проект. Какая у Вас версия gerrit? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.09.2017, 08:49 |
|
Gerrit + git
|
|||
---|---|---|---|
#18+
ditbanНо ведь git-review не является обязательным? Вода дома тоже не является обязательной- можно на реку с ведром сбегать. ditbanПочему может не создаваться change при пуше? Это от настроек проекта зависит? Или это хук? Да, это именно что хук. ditbanи у меня нет функции "клонировать проект", тем более с commit-msg, я этот хук копирую в новый проект. Какая у Вас версия gerrit? Версия 2.11.1 Реально хук копируется так: Код: sql 1.
Внутри- куча какой-то ереси, как обычно у gerrit. PS: спешите спрашивать- у нас на gerrit остался один проект, где-то через месяц его тоже перенесу и начну стремительно забывать этот образец костылестроения. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.09.2017, 10:38 |
|
Gerrit + git
|
|||
---|---|---|---|
#18+
Alexey Tomin, огромнейшее спасибо за помощь. Мне она просто необходима сейчас) Смотрите.. я имела в виду не change-id что не создается, а именно объект "change". Вот этот: Код: html 1. 2. 3. 4.
При пуше у меня change-id генерируется, я хук commit-msg добавила и он отрабатывает. Не работает именно автоматическое создание change'a. А вот вручную через интерфейс сделать этот change я могу. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2017, 09:27 |
|
Gerrit + git
|
|||
---|---|---|---|
#18+
Из доки: Gerrit uses the refs/for/ prefix to map the concept of "Pushing for Review" to the git protocol. For the git client, it looks like every push goes to the same branch, such as refs/for/master. In fact, for each commit pushed to this ref, Gerrit creates a new ref under a refs/changes/ namespace, which Gerrit uses to track these commits. These references use the following format: refs/changes/[CD]/[ABCD]/[EF] То есть, при каждом пуше коммита в ветку refs/for/master, автоматом должна генерироваться запись в refs/changes/. По факту у меня не работает. При пуше коммита запись в refs/for/master вносится, но при этом не создается в refs/changes/. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2017, 09:35 |
|
Gerrit + git
|
|||
---|---|---|---|
#18+
ditbanСмотрите.. я имела в виду не change-id что не создается, а именно объект "change". Вот этот: Код: html 1. 2. 3. 4.
При пуше у меня change-id генерируется, я хук commit-msg добавила и он отрабатывает. Не работает именно автоматическое создание change'a. А вот вручную через интерфейс сделать этот change я могу. Ух ты, какая забавная штука! Я первый раз узнал про существование этого. Глянул "git ls-remote --refs" - прикольно. Прошу прощения, но я не в курсе, как это рабоает. Будет время- попробую спросит того, кто это настраивал, но у него мало времени для ответа про технологию, которая у нас удаляется :) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2017, 10:23 |
|
Gerrit + git
|
|||
---|---|---|---|
#18+
Alexey Tomin, спросите, пожалуйста. У меня остался этот незакрытый вопрос и тогда вся связка gerrit+genkins заработает. Спрашиваю уже на разных форумах и никто ответить не может( ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2017, 17:08 |
|
Gerrit + git
|
|||
---|---|---|---|
#18+
Alexey Tomin, а может там дополнительно нужно какие-то настройки проекта сделать? Сейчас развернула gerrit 2.11, создала проект с правами на основе проекта All-Projects и все по умолчанию. Ветка тоже по умолчанию только master. И все так же: при пуше в refs/for/master не создается автоматом коммит ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2017, 13:34 |
|
Gerrit + git
|
|||
---|---|---|---|
#18+
ditbanAlexey Tomin, а может там дополнительно нужно какие-то настройки проекта сделать? Сейчас развернула gerrit 2.11, создала проект с правами на основе проекта All-Projects и все по умолчанию. Ветка тоже по умолчанию только master. И все так же: при пуше в refs/for/master не создается автоматом коммит Я в почту написал. Ответьте. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2017, 15:45 |
|
|
start [/forum/topic.php?fid=37&msg=39527644&tid=1555299]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
37ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 150ms |
0 / 0 |