Gui Chen [Wed, 27 Feb 2013 07:31:15 +0000 (15:31 +0800)]
bump up to 0.17-rc1
Change-Id: I1caaf24953b5f6650e02dca2a44dcf53106b79b2
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Wed, 27 Feb 2013 06:59:00 +0000 (14:59 +0800)]
update changelog files
correct indent and update date
Change-Id: I76d193ddbb4a2556181ac40699138df8d0ef1867
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Wed, 27 Feb 2013 05:58:42 +0000 (13:58 +0800)]
update depends for ubuntu
Change-Id: I7c213ffbb8d04f7c7dfac6d0c27be21e8e060908
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Thu, 21 Feb 2013 08:01:02 +0000 (16:01 +0800)]
bump up to version 0.17-rc0
Change-Id: If2844a047f672887c82d37996a0eb507d27693d6
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Thu, 21 Feb 2013 08:38:40 +0000 (16:38 +0800)]
update mic.spec to enable centos and tizen
Change-Id: Iaf8436686dc2aa2feccdcaafc134a09ed968fd40
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Thu, 21 Feb 2013 07:01:16 +0000 (15:01 +0800)]
update AUTHORS
Change-Id: I78c44023828d2bacffca5e4fbcf50f6e4f24d8f7
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Thu, 21 Feb 2013 06:59:39 +0000 (14:59 +0800)]
add ChangeLog to track history of release notes
Change-Id: I9ffc25a5354cb937c48494e6e74ecb5204540370
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Thu, 21 Feb 2013 06:49:57 +0000 (14:49 +0800)]
rewrite REALSE_NOTES to include more info about mic
the REALSE_NOTES is seen to public, it will be good
to make it looks like a real release notes by
containing more info about mic
Change-Id: Ibf839b21f73056b32364ccb723b1a447fe83e186
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Thu, 21 Feb 2013 03:54:35 +0000 (11:54 +0800)]
move vcs info from .vcs file to .packages file
now vcs info will recorded in .packages by default
not in a seprated .vcs file
Change-Id: I0e37ba1e8cfbbe5b67a2b32e530dc702e3ea992d
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Thu, 21 Feb 2013 03:52:52 +0000 (11:52 +0800)]
add vcs field to recording_pkgs for 'release' option
now 'release' option will add vcs field by default
Change-Id: I66402c1e65097dd2b336179c967209681db1ae7c
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Thu, 21 Feb 2013 02:29:09 +0000 (10:29 +0800)]
don't copy vmlinuz to /boot/extlinux
as the previous commit by Artem will use relative path
in extlinux.conf, copy vmlinuz to extlinux folder would
be unuseful
Change-Id: Ib74a27872fcea7d388e1f7c5f5de33a8c635385f
Signed-off-by: Gui Chen <gui.chen@intel.com>
Artem Bityutskiy [Tue, 19 Feb 2013 13:59:58 +0000 (15:59 +0200)]
raw: use relative path to the kernel image in extlinux.conf
Currently raw image creator works only when there is a separate boot parition.
But when /boot is in the root partition, extlinux is unable to boot the kernel.
The reason of this is that in extlinux.conf MIC specify the absolute path to
the vmlinuz file - '/vmlinuz', which of course does not work when the correct
path is '/boot/vmlinuz'.
The fix seems to be easy - for extlinux the current directory is where the
'syslinux.conf' file is situated. And we know that the 'vmlinuz' file is one
level up. So all we need to do is to ask extlinux to take the look one level
up, i.e., take '../vmlinuz'.
This patch was tested in both configurations - with and without a separate boot
partition.
Change-Id: Ia87d053b46f7712aa491c38ed13ca6cd61c5b7ba
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 15 Feb 2013 15:20:59 +0000 (17:20 +0200)]
partitionedfs: do not try to mount partitions without a mountpoint
With this patch MIC finally allows partitions wothout any mount point.
Change-Id: I110a90754428c2f216d27287526701ea0cdc5b0c
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 15 Feb 2013 14:57:09 +0000 (16:57 +0200)]
raw: allow partitions without a file-system
Do not error out if a partition does not have a mount point and file-system
type. We want MIC to create partitions without any format and without any
mount-point.
Change-Id: Ib50fecc2ffd501be8b24dac5d57324cf5de72b74
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 15 Feb 2013 14:46:35 +0000 (16:46 +0200)]
kickstart: allow partitions without mount points
We need to be able to create partitions without any file-system and without any
mount-point. However, the KS files parser does not allow this, which this patch
fixes.
Change-Id: If046e8895aaa3bb95f25e317464677e019877819
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 15 Feb 2013 13:10:16 +0000 (15:10 +0200)]
partitionedfs: fix extended partitions support
When we use th elegacy MBR paritions and have more than 3 paritions, MIC
creates and extended parition and which allows us to create 4 more logical
paritions. However, this functionality was broken. It was partially fixed in
the previous commit, and this is the final fix.
The problem is that kpartx maps the extended partirion (sometimes, depending on
the version), and MIC tries to use it and fails. Instead, MIC should just skip
the extended parition. This patch adds the corresponding check.
With this fix we can create images with many paritions, and both MBR and GPT
paritions work.
Change-Id: Iabf17c6407942eec7a7051bff52ebf427aa4f3a1
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 15 Feb 2013 12:11:45 +0000 (14:11 +0200)]
paritionedfs: do not create extended parition in case of GPT
Change-Id: Ibd2ae31c7e0ed630dd7e392995a21ff90442cc6a
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 15 Feb 2013 11:37:59 +0000 (13:37 +0200)]
paritionedfs: partially fix extended paritions support
Currently MIC is unable to create more than 3 partitions, because the
logical/extended paritions support is broken. This is because the EBR is not
taken into account, so parted fails to create logical partitions. EBR stands
for "Extended Boot Record" and this ia basically a single sector which prepends
every logical parition.
This patch fixes the issue. We take one sector from each partition starting
from the 3rd one (the last primary parition), and this sector will be used by
parted for the EBR. This works nicely and partitions stay aligned correctly for
the best performance.
Change-Id: I678c52f24750388ffdc09c32939541ba3f3e8b8f
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Huang Hao [Tue, 19 Feb 2013 05:30:14 +0000 (13:30 +0800)]
Fix bad indents
Change-Id: I4bd330957aeaeaae8367aafdeffd2f511d479077
Gui Chen [Tue, 19 Feb 2013 05:56:43 +0000 (21:56 -0800)]
Merge "paritionedfs: remove the 'extended' key from disk dictionary" into devel
Gui Chen [Tue, 19 Feb 2013 05:36:33 +0000 (21:36 -0800)]
Merge "partitionedfs: simplify the code a tiny bit" into devel
Gui Chen [Tue, 19 Feb 2013 05:31:12 +0000 (21:31 -0800)]
Merge "partitionedfs: improve debugging prints" into devel
Gui Chen [Tue, 19 Feb 2013 05:28:29 +0000 (21:28 -0800)]
Merge "partitionedfs: remove bogus alignment check" into devel
Huang Hao [Mon, 18 Feb 2013 09:31:44 +0000 (17:31 +0800)]
Pass command line info to CreatorError in get_file_size()
Variable "du" does not exist, so pass the command line to error.
Change the local var name "file" to "filename" to avoid conflicting
with builtin function.
Also refactor last "if" statement to more readable max function.
Change-Id: I661e0a02db940d75a8180c3215f95d5ff1ae8802
Artem Bityutskiy [Fri, 15 Feb 2013 10:46:55 +0000 (12:46 +0200)]
paritionedfs: remove the 'extended' key from disk dictionary
The 'extended' key holds the size of the extended partition, and it is only
used once when we create the extended partition. However, we do not really need
this becase we can easily calculate the extended partition size, because we
know the start of the first logical partition and the disk size. Having this
'extended' key only complicates the code unnecessarily.
Change-Id: I58e61e219890339fae63eeb5bdf9f2002401cb72
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 15 Feb 2013 09:09:31 +0000 (11:09 +0200)]
partitionedfs: simplify the code a tiny bit
When we calculate the minimum disk size, we do not have to search for the last
parition, because we have d['offset'] which points to the first available
sector.
Change-Id: Ida5f92ec11939caa76ad1bf90aee137a2e918d2d
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Thu, 14 Feb 2013 12:28:10 +0000 (14:28 +0200)]
partitionedfs: improve debugging prints
Print the starting and ending partition sector numbers as well as partition
size. This makes it easier to debug issues.
Change-Id: Ie96872f6902d2b7c12bb043879e06d5b839d986c
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Thu, 14 Feb 2013 11:48:18 +0000 (13:48 +0200)]
partitionedfs: remove bogus alignment check
The following perfectly valid KS option makes MIC complain about alignment and
exit:
part /d1 --size 1 --fstype=ext4 --ondisk sdb --align 1024
This creates a 1MiB partition and aligned to 1MiB.
And it is even fine to ask for a 1MiB partition to be aligned to 4MiB. So the
alignment size check is totally incorrect - remove it.
Change-Id: If84be72f43c3be91ae5a7c3fa49b10ef1202cf50
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Huang Hao [Mon, 18 Feb 2013 09:19:32 +0000 (17:19 +0800)]
Add global declaration to var _LOOP_RULE_PTH
hide_loopdev_presentation() redefine a var with the same name
_LOOP_RULE_PTH by setting its value without global statement. and
its global counterpart can never be changed.
pylint message:
W0621:136,12:hide_loopdev_presentation: Redefining name '_LOOP_RULE_PTH' from outer scope (line 125)
Change-Id: I1cfafa46a933e22c732d4f4963c4a4f6d1ac4c1d
Huang Hao [Mon, 18 Feb 2013 02:52:25 +0000 (10:52 +0800)]
Move function optparser_setup out of class MicCmd
Found this problem by pylint. Decorator optparser_setup is not a
instance/class/static method of MicCmd, so move it out.
Also fix wrong indent.
Change-Id: I0315951134360fa6081b904e6323e57c16b7ef9f
Markus Lehtonen [Tue, 16 Oct 2012 12:40:50 +0000 (15:40 +0300)]
Make sure that urlgrabber gets URLs as strings
URLs of unicode type cause a crash in python-urlgrabber.
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Gui Chen [Tue, 5 Feb 2013 11:10:37 +0000 (19:10 +0800)]
roll back to original naming for release
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 5 Feb 2013 08:14:50 +0000 (16:14 +0800)]
remove suffix when release specified
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 4 Feb 2013 02:51:35 +0000 (10:51 +0800)]
fix no key 'HOME' in environ variable failure
Signed-off-by: Gui Chen <gui.chen@intel.com>
Ed Bartosh [Tue, 5 Feb 2013 15:31:24 +0000 (17:31 +0200)]
Fixed dependency issue for squashfs on OpenSUSE
Name of the package with mksquashfs and unsquashfs utilities is squashfs
on OpenSUSE and squashfs-tools on Fedora. This change adds Requires:
squashfs to the spec for OpenSUSE and squashfs-tools for the rest of
distros.
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
Gui Chen [Tue, 29 Jan 2013 08:22:38 +0000 (16:22 +0800)]
bump up to release 0.16
Change-Id: I4b62e11db18c027d6cd6afe63932fc4d8eaecf7a
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 29 Jan 2013 08:09:33 +0000 (16:09 +0800)]
update RELEASE_NOTES
Change-Id: Ide5b483fc7bdc2c36590ea6d1d2fdbc1f970414b
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 29 Jan 2013 05:53:35 +0000 (13:53 +0800)]
bump up to 0.16-rc4
Change-Id: I01121a1ffff0e17d199e1b69dee69c62e8bab28e
Signed-off-by: Gui Chen <gui.chen@intel.com>
Artem Bityutskiy [Tue, 29 Jan 2013 12:19:32 +0000 (14:19 +0200)]
partitionedfs: do not use blkid for PARTUUID
Now, as we have our own GPT partition table parser, lets use it. This patch
teaches partitionedfs.py to add the 'partuuid' key to partitions dictionary.
This value is later used in 'raw.py' when generating the extlinux.conf file.
Change-Id: I1af9e59742171797842f3fafd5c74be78e1414bc
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Conflicts:
mic/imager/raw.py
Artem Bityutskiy [Tue, 29 Jan 2013 12:19:11 +0000 (14:19 +0200)]
Add a simple GPT partitions parser
The 'PARTUUID' blkid feature exists only in relatively new versions of blkid,
which causes troubles in some distributions. Therefore, lets implement our own
simple GPT parser instead.
Change-Id: Ie07efc5040770c002ef4be60431c8756fa690d63
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Tue, 29 Jan 2013 11:24:44 +0000 (13:24 +0200)]
raw.py: remove unused variable
The rootdev variable is unused - remove it.
Change-Id: I7355a006557dced7ad95dbecb053243acf86829f
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Gui Chen [Sun, 27 Jan 2013 03:47:45 +0000 (11:47 +0800)]
bump up to 0.16-rc3
Change-Id: I007b70a1091a89a47e81dcc58653d5835f8859f0
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Sun, 27 Jan 2013 03:46:09 +0000 (11:46 +0800)]
update REALSE_NOTES
Change-Id: I748b53f7397009136b0a42c98d45abd5a928b9fe
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Sun, 27 Jan 2013 03:45:26 +0000 (11:45 +0800)]
fix .vcs file not included in output showing
Change-Id: I2feeb6de21e6f69bda05ce25ffe6b9eb06537238
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Sun, 27 Jan 2013 03:37:24 +0000 (11:37 +0800)]
some minor fixes
fix --record-pkgs missing 'vcs' in help text
fix debugsource invalid in --install-pkgs
Change-Id: Ib61c3ec587b7173cc22284779fac05daf910f684
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Sun, 27 Jan 2013 03:25:27 +0000 (11:25 +0800)]
add option '--fstab-entry' to set the entry in /etc/fstab
valid values: name, uuid. 'name' means using device names, 'uuid' means using filesystem uuid
Change-Id: I6ea340bc66955cc33ebbe478cbf1425e060f313c
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Sun, 27 Jan 2013 02:55:12 +0000 (10:55 +0800)]
give hints when overwriting loop images
Change-Id: Ia5f3fc69571a34445d8e879227953d3aa5a112af
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Wed, 23 Jan 2013 03:53:49 +0000 (11:53 +0800)]
bump up to 0.16-rc2
Change-Id: Idc3d8d191b4d7adb77c7ddad86c2a0211e591909
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Wed, 23 Jan 2013 03:52:04 +0000 (11:52 +0800)]
Revert "raw.py: switch to the BmapCreate module"
This reverts commit
567fc7ad08ebbce84e1cb6894d35749b17637fa3.
Gui Chen [Wed, 23 Jan 2013 01:41:21 +0000 (09:41 +0800)]
put the recording stuff before pkg_manager.close
Change-Id: I680e2761743a2068919b18221a004152e40068f3
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 22 Jan 2013 09:47:58 +0000 (17:47 +0800)]
bump up to version 0.16-0.rc1
Change-Id: I8d861ae9ee3b35db789347bed2b66a27e81c75d0
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 22 Jan 2013 09:42:30 +0000 (17:42 +0800)]
update release notes
Change-Id: I44f98af914e3b82117ed227ab2fc46fe07cf9894
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 22 Jan 2013 08:11:49 +0000 (16:11 +0800)]
don't throw exception if get_partuuid failed
this try except is not tricky, just make things
going on, if 'gpt' required, root_partuuid valued
None would throw an exception instead
Change-Id: I44a6ae70893eacef52f3cf1673b7c2e5bb21f141
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 22 Jan 2013 07:53:16 +0000 (15:53 +0800)]
update debian packaging files
Change-Id: Ia857444bb840fa6fa41e633917ac14d3813f8348
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 22 Jan 2013 07:39:13 +0000 (15:39 +0800)]
add lost interface getVcsInfo in yum backend
Change-Id: Icda3b0579d87ae4af3dc0fa566fb59be77732fe7
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 22 Jan 2013 07:33:02 +0000 (15:33 +0800)]
correct empty prefix string produce '-'
Change-Id: I722a1268220848fe76bba7a9f0eee9fa4c689cc9
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 22 Jan 2013 07:27:19 +0000 (15:27 +0800)]
bump up to version 0.16-rc0
Change-Id: I7ff7eb8c019afb04598b49c81537e9c103d91c74
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 21 Jan 2013 17:39:32 +0000 (01:39 +0800)]
compatible with old style in name prefix
Change-Id: I6c223bdaf8c74fd36093da6690d8ba5c7379b57c
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 21 Jan 2013 16:55:36 +0000 (00:55 +0800)]
make clear message info
Change-Id: I5717d5d92b604b544ad3ddec7a3eb2eebb9d461b
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 21 Jan 2013 16:36:18 +0000 (00:36 +0800)]
clean up the loop devices not released
the pidfiles record last running info of device and
process pid, and now mic can clean these up if they
are not released for some unknown reason
Change-Id: I3b0bbd31fbcfaf7fe4c751feab6f7f9b528d64f6
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 21 Jan 2013 15:48:53 +0000 (23:48 +0800)]
add pidfile for each used loop device
sometimes mic can't know if the device can be released,
and it will bump up to maxinum used number, now record
an pid file for each used device so that they can be
released when needed
Change-Id: I24308eebd8b2c10a46f2bf20cfdb70bf7f1b04a2
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 21 Jan 2013 15:25:14 +0000 (23:25 +0800)]
cleanup also when sys loop device used
some interfaces are added to make LoopDevice as
loop device manager:
register: if loop device existed, register it in
LoopDevice, and benefit the cleanup
reg_atexit: not all loop device need this atexit,
make it optional
now, such as 'loop0' will benefit the cleanup of
LoopDevice 'cause above interface
Change-Id: I110a1aaf0179d04a31f31f7ed54b2b75cdb6bc01
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 15 Jan 2013 13:31:49 +0000 (21:31 +0800)]
fix the failure if ks under / dir in easy way
this patch is to fix the failure if ks file under / dir,
in final, mic should sync the ks file to bootstrap,
the location should be kept inside bootstrap
Change-Id: Ia93013622ffda0fa91c81aeb8f6e0e7c1d6b70cf
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 15 Jan 2013 13:15:11 +0000 (21:15 +0800)]
clean up the mess message of directory not empty
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Sun, 13 Jan 2013 08:49:27 +0000 (16:49 +0800)]
don't setup emulator for arm image twice
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Sun, 13 Jan 2013 08:45:19 +0000 (16:45 +0800)]
register arm binfmt in every time
in bootstrap, there is only 'qemu-arm-static', so should unregister arm binfmt,
and register it for arm image in every time to avoid conflict register
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 7 Jan 2013 07:38:27 +0000 (15:38 +0800)]
sync /etc/passwd to save user info to bootstrap
for some reason, mic bootstrap would not has correct /etc/passwd,
using local /etc/passwd also works
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 7 Jan 2013 07:34:00 +0000 (15:34 +0800)]
verify if logfile is a file
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 7 Jan 2013 07:29:24 +0000 (15:29 +0800)]
correct rpm path in local repo for zypp backend
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 21 Jan 2013 13:52:51 +0000 (21:52 +0800)]
add debuginfo rpm install option
make this option flexible to include 'debuginfo',
and enable '--install-pkgs=debuginfo' to work well.
later mic should add 'source' and 'debugsource' to
this option
Change-Id: I12765aeeeb5d41f9de351b617377ebe654436dac
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 21 Jan 2013 12:00:44 +0000 (20:00 +0800)]
install the according debuginfo rpms in zypp
normally every binary package would have one
corresponding debuginfo package, and now mic
can install those debuginfo rpm in the meantime
in zypp backend if needed
Change-Id: Id3d4dd678257d21a737632a395031b0776c3d2bc
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 21 Jan 2013 08:46:28 +0000 (16:46 +0800)]
refactor try except statement in baseimager
it's risky to handle the assignment in finally loop,
actually it will only cleanup pkg_manager, try to
refactor it here
Change-Id: Icae4108ce4df353389f4a92f7f2be603434a00ed
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 21 Jan 2013 07:50:39 +0000 (15:50 +0800)]
cleanup zypp credential file to fix conflicts during installing
the issue is zypp will create credential file $instroot/$home/.zypp/*.cat,
and this file only influence rpm downloading, but it cause some conflicts
issue during rpm installing for it is not owned by any package.
in this patch, it will locate the credential file to $instroot/.zypp,
then clean it up before rpm installing.
Change-Id: Ib1409b5aa57547ec8ff96ca39be07bf53894b1bf
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 21 Jan 2013 02:15:48 +0000 (10:15 +0800)]
add vcs value for --record-pkgs to record vcs info
vcs info includes git tree and tag info
Change-Id: Ibe9263de569c888709e46767d08f919046324754
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Mon, 21 Jan 2013 02:08:01 +0000 (10:08 +0800)]
recalculate package content recording
Change-Id: I1c0e9bbf2e1c6c05d552e89f764e1082f91415f0
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Sun, 20 Jan 2013 14:01:34 +0000 (22:01 +0800)]
fix the issue that outdir/cachedir is not dir
Change-Id: I321066964626404ca84d2d650fc7801ddf54e025
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Sun, 20 Jan 2013 11:54:31 +0000 (19:54 +0800)]
reformat rpm name string to be more flexible
Change-Id: I5f735ad31ef7dd3a8c2a23eb31b6bca22aaa4f0f
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Sun, 20 Jan 2013 07:02:02 +0000 (15:02 +0800)]
revert back to use device name
to fix some specific image can't boot by uuid,
mic revert it back, but mic will change this
configurable, then put it to some config file
Change-Id: I73a07d54ef467bf2148d4833a4372e70f68bbbc7
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 15 Jan 2013 08:29:44 +0000 (16:29 +0800)]
add a new opiton --nocache for repo command
this option '--nocache' in repo command is used
to disable using cached rpm in this repo
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 15 Jan 2013 08:05:06 +0000 (16:05 +0800)]
split out the download stuff as one python module
mix the download code into rpmmisc is mess,
try to make it stand alone, now the download
stuff like myurlgrabb, TextProcess can be
treated in one owned module
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 15 Jan 2013 07:27:24 +0000 (15:27 +0800)]
remove moblin stuff from mic code
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 15 Jan 2013 06:41:33 +0000 (14:41 +0800)]
compatible with old style if 'release' specified
when '--release=tizen-2013' is specified, mic shouldn't
append the original suffix, to be compatible with old
style, build_name will replace suffix with release
Signed-off-by: Gui Chen <gui.chen@intel.com>
Gui Chen [Tue, 15 Jan 2013 06:33:13 +0000 (14:33 +0800)]
use build_name to genarate image name
consider prefix and suffix, mic should use build_name
to genarate the name of image
Signed-off-by: Gui Chen <gui.chen@intel.com>
Artem Bityutskiy [Tue, 8 Jan 2013 13:53:24 +0000 (15:53 +0200)]
raw.py: implement booting by partition UUID
If the partition typ is "gpt", specify the rootfs by partition UUID instead of
the device node. This will allow to be device-node-independent.
Change-Id: I534036d2a38a072a73ac2994f5753425d60ab8a1
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Tue, 8 Jan 2013 13:49:56 +0000 (15:49 +0200)]
partitionedfs: implement 'get_partuuid()' method
Implement a method for getting the partition UUID for a mapped partition.
We will use it for mounting by partition UUID a bit later.
Change-Id: Iaf497c34eaf84e8e25dd5019a99d76f3674744cd
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Tue, 8 Jan 2013 13:11:30 +0000 (15:11 +0200)]
raw.py: kill rootdev and prefix
Similarly, kill the 'rootdev' and 'prefix' values returned by
'_get_syslinux_boot_config()' - they are not used. This cleans up things a bit
further.
Change-Id: I164c46d5a17ebdd2404f5da1ff883ec9d79cfffc
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Tue, 8 Jan 2013 13:07:47 +0000 (15:07 +0200)]
raw.py: kill bootdevnum
The _get_syslinux_boot_config() function returns bootdevnum which is not really
needed, because it is not used. There is only one usage - an exception error
string, but this usage is incorrect anywere, because it prints incorrect
loopback name anyway.
So kill it, and make the code a little bit cleaner. We have enough mess there.
Change-Id: Ia6fff77205389e77ce1dac55ab044f7410bcf347
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Tue, 8 Jan 2013 12:43:21 +0000 (14:43 +0200)]
raw.py: detect the boot partition properly
Remove a hack of detecting the boot partition by mount point. We have a special
key for marking the boot partition.
Change-Id: I05f62cc33a72cc87ad95f45cdb79a8a611cf53de
Artem Bityutskiy [Tue, 8 Jan 2013 12:50:43 +0000 (14:50 +0200)]
raw.py: fix strange "bug"
The entire file kind of assumes that there may be several disks. And this is
why we have a lot of complexity in raw.py and partitionedfs.py.
But if we look at _install_syslinux(), we have a nonesense loop at the
beginning. Obviously, the entire function has to be in this loop, otherwise it
makes zero sense, right?
Change-Id: I2e6825ca475b4e1c34128361b9c4cc97159379da
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Mon, 7 Jan 2013 10:12:41 +0000 (12:12 +0200)]
partitionedfs: enable GPT support
This adds finally GPT support. It works, and Tizen IVI images with GPT
partition table boot fine.
We now need is to use 'root=PARTUUID=<uuid>' in syslinux.conf to boot by
UUID - will be added later as well.
Change-Id: Icfe938e72b96c4092131039a120d6095b3acbbd4
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Thu, 10 Jan 2013 11:41:41 +0000 (13:41 +0200)]
kickstart: add --ptable option
This patch adds a --ptable option to the 'bootloader' command of the KS file,
as suggested by Guy Chen. The default partition table format is "msdos". We are
going to support the "gpt" format soon. Usage:
bootloader --timeout=blah --append=blah --ptable=blah
Change-Id: I02772df92a8e883ac3450b5b947789bca19be037
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Mon, 7 Jan 2013 11:16:59 +0000 (13:16 +0200)]
raw.py: remove redundant code
Remove code from raw.py which sets the 'bootable' flag to the boot partition,
because it is redundant.
partitionedfs.py it the file where everything concerning partitions has to be
done. And there is code which sets the 'boot' flag to the boot partition. We
just need to use the '--active' option for that partition in the ks file.
Change-Id: I17fd4e6e8785b8c6b1a48a7af1a2335a056b4d98
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 4 Jan 2013 14:25:15 +0000 (16:25 +0200)]
partitionedfs: a preparation and nicification
Prepare for further changes and refactor the code a bit: separate the parted
running functionality to the '__run_parted()' function.
Do some nicifications in '__create_partition()' to improve readability.
Move the '__create_partition()' and '__run_parted()' functions down so that
they go just before 'format_disk()', which is more logical.
Remove a lot of redundant code by moving the error checking to
'__run_parted()'.
Change-Id: If9697cd2ede6f8b3f07289aa8e8ac391ea882cf2
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 4 Jan 2013 14:17:21 +0000 (16:17 +0200)]
partitionedfs: rename self.__create_part_to_image
The 'self.__create_part_to_image()' is too long and not too descriptive either.
Let's name it '__create_partition()' instead.
Change-Id: I556c8dd872b1fd79d8c44fac0ca5130ae1521bc8
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 4 Jan 2013 13:53:10 +0000 (15:53 +0200)]
partitionedfs: add partial GPT support
This commit partially adds GPT partitions support. Further patches will add
full support. I split them to make the patches more reviewable.
This patch basically implements most of the things except of actually asking
parted to use GPT partitioning.
This patch introduces another 'layout_partitions()' parameter which defines the
partition table format. It now may be 'msdos' or 'gpt'.
Change-Id: I210bacc629b938d307a1e4d209c90d4400a42daa
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 4 Jan 2013 13:41:08 +0000 (15:41 +0200)]
partitionedfs: make the interface a bit saner
We have 'add_partition()' call to add one partion, but we have 'add_disks()'
method to add all disks at once. This is inconsistent and makes the code more
difficult to understand. Fix this by changind 'add_disks()' into 'add_disk()'
which adds a single disk. This makes things look a lot nicer.
Change-Id: I8a4f4249b1f8fa02486d4cbb3fbc4226ca2e65b8
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 4 Jan 2013 13:32:46 +0000 (15:32 +0200)]
partitionedfs.py: improve readability some more
Add a comment to 'add_partition()'. Also convert all the non-docstring comments
to the normal '#' style to make the code consistent.
Change-Id: I772d08f20d434b7bb4f4725410622da5ac9d2fb6
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 4 Jan 2013 13:10:49 +0000 (15:10 +0200)]
partitionedfs: rename MBR_SECTOR_LEN
The 'MBR_SECTOR_LEN' name becomes not very appropriate when we add GPT
partitions, which have a lot larger overhead comparing to MBR partitions. We'll
need to introduce another constant. Let's use the 'MBR_OVERHEAD' instead, and
later we'll introduce a 'GPT_OVERHEAD' variable.
Change-Id: Iedf9338b58eed3b4b4b149ba9f30acf5369500c7
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 4 Jan 2013 13:01:52 +0000 (15:01 +0200)]
paritionedfs: improve readability
Rename the 'disk' key in parition and subvolume dictionaries into 'disk_name',
because it is really a disk name string. Old name is very confusing because
the disks dictionary also has a 'disk' key which points to a real disk object.
I was many times confused by this when I was trying to understand the code, and
now it is time to clean the mess up a bit.
Change-Id: I58526ce719f831051924498550df5de9b3ebd737
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Artem Bityutskiy [Fri, 4 Jan 2013 12:35:25 +0000 (14:35 +0200)]
partitionedfs: fix the mbr_sector_skipped hack
The entire PartitionedMount class assumes there may be more than one disk. And
the 'mbr_sector_skipped' hack is wrong because it assumes there is only one
disk and we need to skip only once, which is incorrect.
This patch fixes the issue. And it actually makes things nicer as well.
Change-Id: Icb399cfa488786ce6668ffaa21146f01a3e15a08
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>