From: Michael Shigorin <mike@altlinux.org>
To: devel@lists.altlinux.org
Subject: Re: [devel] [#154910] EPERM (try 2) mkimage.git=0.2.17-alt1.1
Date: Mon, 21 Dec 2015 15:01:17 +0300
Message-ID: <20151221120117.GA9467@imap.altlinux.org> (raw)
In-Reply-To: <20151221105003.GA12022@gyle.altlinux.org>
On Mon, Dec 21, 2015 at 10:50:03AM +0000, Girar Builder awaiter robot wrote:
> http://git.altlinux.org/tasks/154910/logs/events.2.1.log
> 
> 2015-Dec-21 10:47:35 :: test-only task #154910 for sisyphus resumed by solo:
> #100 removed
> #200 build 0.2.17-alt1.1 from /people/solo/packages/mkimage.git
Лёш, аккуратней надо.  Если б ты не отправил лишний тег на сборку,
а попросил вычитать -- я бы тоже вычитал и указал на слом.
-mkdir $verbose -p -- \$boot
+[ -d \$boot ] || mkdir $verbose -p -- \$boot
Зачем?  mkdir -p молча обеспечит наличие каталога, если не было.
-       mkdir $verbose -p "\$dest"
+       [ -d "\$dest" ] mkdir $verbose -p "\$dest"
Здесь помимо того же вопроса ещё и синтаксическая ошибка.
-               cp $verbose -pLf "\$src" "\$dest/memtest86.efi" &&
+               cp $verbose -pLn "\$src" "\$dest/memtest86.efi" &&
Как вариант -- хотя как раз здесь было бы уместно проверить
наличие целевого бинарника и если уже есть, то не копировать
ресурсы, т.к. не исключено, что профиль мог копировать не всё:
                find /usr/share/efi-memtest86 -type f |
-                       xargs cp $verbose -pLft "\$dest"
+                       xargs cp $verbose -pLnt "\$dest"
Аналогично и далее с refind.
-       mkdir $verbose -p \$cert
-       cp $verbose -pLft \$cert -- "\$keyfile"
+       [ -d "\$cert" ] || mkdir $verbose -p \$cert
+       cp $verbose -pLnt \$cert -- "\$keyfile"
Просто mkdir -p, пожалуйста (как и далее в аналогичных случаях).
+       [ ! -e "\$boot/elilo.conf" ] || return 0
Здесь как раз следует обламываться, если нет конфига --
copy_elilo() вызывается в случаях, когда он точно нужен.
Т.е. || exit 1
-       [ ! -d \$refind_aux/altlinux ] ||
+       [ -d "\$boot/icons/altlinux" ] || [ ! -d \$refind_aux/altlinux ] ||
                mv \$refind_aux/altlinux \$boot/icons
Добавлена логическая ошибка (проверять при таком методе обработки
следует _отсутствие_ каталога, а не его наличие).
-- 
 ---- WBR, Michael Shigorin / http://altlinux.org
  ------ http://opennet.ru / http://anna-news.info
next      parent reply	other threads:[~2015-12-21 12:01 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-21 12:01 ` Michael Shigorin [this message]
2015-12-21 13:57   ` Aleksey Avdeev
2015-12-21 15:38     ` Michael Shigorin
2015-12-21 17:22       ` Aleksey Avdeev
2015-12-22 15:10         ` [devel] I: mkimage-profiles: efiboot (was: [#154910] EPERM (try 2) mkimage.git=0.2.17-alt1.1) Aleksey Avdeev
2015-12-25 18:40           ` [devel] I: mkimage-profiles: efiboot Aleksey Avdeev
2015-12-29 13:09             ` Aleksey Avdeev
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=20151221120117.GA9467@imap.altlinux.org \
    --to=mike@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