ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: mikhailnov@altlinux.org
To: devel@lists.altlinux.org
Subject: Re: [devel] Обновление redis в p8
Date: Tue, 26 Nov 2019 04:41:20 +0300
Message-ID: <215b4795-a350-daca-15f2-d25446388eaf@dumalogiyamail.ru> (raw)
In-Reply-To: <302a1202-cc13-f857-65e5-aed6103953df@dumalogiyamail.ru>

26.11.2019 04:22, mikhailnov@altlinux.org пишет:
> 26.11.2019 01:32, Leonid Krivoshein пишет:
>> Всем привет!
>>
>>
>> Извиняюсь за нюбовский вопрос. Каковы действия при бэкпортировании в p8?
>> Собрал тестовое задание #241616. Достаточно проверить с такими 
>> зависимостями:
>>
>> $ apt-cache whatdepends redis
>> redis-3.0.7-alt1@1454758009
>>   python-module-docker-registry-0.6.1-alt1@1382307574
>>     Требует: redis
>>
>> Просто, боюсь, с этой штукой на самом деле много чего может отъехать.
>> Но без тестовой пересборки не представляю, как это определить.
>> Просили закрыть CVE в баге #37533, а бранч "стабильный".
>>
>>
> См. https://security-tracker.debian.org/tracker/CVE-2019-10193 и 
> https://security-tracker.debian.org/tracker/CVE-2019-10192
>
> Их исправления бекпортировали в 3.2.13, которая гораздо ближе к 3.0.7 
> в p8, чем 5.0 из сизифа. Наверняка соответствующие коммиты без правок 
> или с минимальным редиффом лягут на 3.0.7 патчами.
>
>
> https://raw.githubusercontent.com/antirez/redis/3.2/00-RELEASENOTES
> ================================================================================ 
>
> Redis 3.2.13     Released Mon Mar 18 17:24:10 CEST 2019
> ================================================================================ 
>
>
> Ciritcal fixes backported from Redis 5.

Когда нужно бекпортировать что-то, я обычно делаю так:

git clone апстримные_исходники
git tag | grep версия
git checkout tags/<найденный_тег_с_целевой_версией_для_бекпорта>
git checkout -b patched-<версия>
git cherry-pick <хеш коммита для бекпортирования>

Если лег сразу, то отлично, иначе в git status смотрю, где возникли 
проблемы, правлю их (они помечаются ====== в текстовых файлах), затем:
git commit -a
Открывается редактирование описания коммита. Туда дописываю что-то вроде:
Backport of upstream commit <hash> to systemd-230
и при необходимости описание изменений относительно оригинального 
коммита, например, "dropped tests".

Затем делаю git format-patch -1 -s
-s - чтобы в патч с Author != я была добавлена пометка о моем участии, 
чтобы другим людям было понятнее, откуда такой патч взялся.

В крупных проектах типа systemd иногда приходится бекпортировать 
несколько десятков коммитов для закрытия одной CVE, такие действия 
чреваты тем, что всплывут какие-нибудь косяки: опечатки при 
бекпортировании, нарушение логики работы, если бекпортирование остановил 
на таком состоянии, которое было затем изменено в апстриме, т.к. было 
багованным, и т.д. В таких случаях обычно цепочка коммитов получается 
задом на перед, т.к. после каждого бекпорта проверяется сборка (а в 
Альте и в etersoft-build-utils, кстати, есть готовые интеграции rpm с 
ccache), если коммитов оказалось недостаточно, то бекпортируется следующий.

В случае с redis посмотрите, насколкьо большие правки были, может, там 
проще просто обновить с 3.х до 3.2 и не мучаться, а, может, можно 
несколько маленьких коммитов приложить, и всё.



  reply	other threads:[~2019-11-26  1:41 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-25 22:32 Leonid Krivoshein
2019-11-26  1:22 ` mikhailnov
2019-11-26  1:41   ` mikhailnov [this message]
2019-11-26 12:46       ` mikhailnov
2019-11-26 14:08           ` Anton Farygin
2019-11-26 14:10             ` Anton Farygin
2019-11-26 14:11         ` Sergey Afonin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=215b4795-a350-daca-15f2-d25446388eaf@dumalogiyamail.ru \
    --to=mikhailnov@altlinux.org \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git