вторник, 2 сентября 2014 г.

Российский разработчик Linux ядра арестован на 15 суток.

Российский разработчик Linux ядра арестован на 15 суток за одиночный пикет на Красной площади.

По информация  Theodore Ts'o: 
https://plus.google.com/u/0/+TheodoreTso/posts/dPPNYreZiU5

А человек, всего лишь, устроил одиночный пикет, который по нашим законам не запрещен.

среда, 13 августа 2014 г.

gerrit 2.9 и правило 1 + 1 = 2

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

После обновления gerrit'a с версии 2.8.1 на 2.9, исчесзла кнопочка submit для разработчиков даже если количество голосов было больше +2.

В логах геррита при этом появилась ошибка:

ERROR com.google.gerrit.server.project.ChangeControl : Submit rule :(user,submit_rule) for change 3368 of test_repository output invalid result: submit(label(Code-Review,ok(_1F935754))). Reason: A label with the status Code-Review: OK must contain a user.

Как оказалось, перестали работать правила отправки изменений, причем даже те, которые есть в примерах.

Вот тут народ завел баг репорт:

И чтобы не ходить по ссылке, рабочий пример правила 1+1=2, любезно предоставленный неким benjamin...@gmail.com:

sum_list([], 0).
sum_list([H | Rest], Sum) :- sum_list(Rest,Tmp), Sum is H + Tmp.

first_list([], _).
first_list([F], F).
first_list([F | Rest], F).

score(Category, Score, User) :-
  gerrit:commit_label(label(Category, Score), User).

add_category_min_score(In, Category, Min,  P) :-
  findall(Score, score(Category, Score, User), Scores),
  findall(User, score(Category, Score, User), Users),
  sum_list(Scores, Sum),
  Sum >= Min, !,
  first_list(Users, FirstUser),
  P = [label(Category, ok(FirstUser)) | In].

add_category_min_score(In, Category, Min, P) :-
  P = [label(Category, need(Min)) | In].

submit_rule(S) :-
  gerrit:default_submit(X),
  X =.. [submit | Ls],
  gerrit:remove_label(Ls, label('Code-Review', _), NoCR),
  add_category_min_score(NoCR, 'Code-Review', 2, Labels),
  S =.. [submit | Labels].

До сих пор не понимаю, почему авторы gerrit'a выбрали prolog.

понедельник, 10 февраля 2014 г.

Импорт существующих git-репозиториев в gerrit

Если вам понадобилось перенести существующие репозитории в gerrit то делается это так:

  1. В gerrit создается новый проект, например  myProject.
  2. В уже имеющийся репозиторий добавляется remote MyProject.
  3. Заливаем набор изменений в MyProject.


  • git remote add gerrit_MyProject /path/to/gerrit/repo/MyProject.git
  • git push --mirror gerrit_MyProject

пятница, 27 декабря 2013 г.

Обновление Apache с версии 2.2 на версию 2.4

Если при обновлении Apache с версии 2.2 на версию 2.4 у вас вдруг перестал работать Reverse Proxy на внутренний домен по https у которого есть самоподписанный сертификат, и выдается сообщение типа:

[proxy:error] [pid 21402] (502)Unknown error 502: [client 127.0.0.1:44485] AH01084: pass request body failed to 127.0.0.1:8081 (127.0.0.1)

То скорее всего дело в следующих опциях, которые в версии 2.2 по умолчанию были выставлены в off, а в 2.4 по умолчанию on:

SSLProxyCheckPeerCN off
SSLProxyCheckPeerExpire off

Новый Apache теперь по умолчанию не доверяет самоподписанным сертификатам.

вторник, 3 декабря 2013 г.

Средства для CodeReview

Народ, подскажите кто какими средствами пользуется для CodeReview?
Мы пытались использовать Crucible - но оно нам не понравилось.
Сейчас мы выбираем между ReviewBoard и Gerrit.

И вообще, расскажите как этот процесс поставлен у вас?