-
Notifications
You must be signed in to change notification settings - Fork 173
the mini design of xcat inventory export and import for osimage
yangsong edited this page May 8, 2018
·
7 revisions
xcat-inventory export -t osimage [-o <osimage name>] -f|--path <destdir> [--format <format>] [--archive]
-
if option
-f|--path <destdir>
is not specified, keep the current behavior to display the osimage definition in stdout -
if option
-f|--path <destdir>
is specified, create each subdirectory<osimage name>
for each osimage object under<destdir>
, each subdirectory<osimage name>
contains the following files:(1)
definition.yaml
: the definition of the osimage in the specified<format>
(2) the directory hierarchy of the osimage customized files referenced in osimage definition, the osimage customized files under the path which shipped by xCAT will not be exported.
-
if
--archive
is specified, a tarball instead of osimage directory will be created
An example:
[root@c910f03c05k21 osimage]# xcat-inventory export -t osimage -o rhels7.4sp1-x86_64-netboot-compute --format yaml --path //opt/inventory/site/osimage/
[root@c910f03c05k21 osimage]# cat /opt/inventory/site/osimage/rhels7.4sp1-x86_64-netboot-compute/definition.yaml
osimage:
rhels7.4sp1-x86_64-netboot-compute:
basic_attributes:
arch: x86_64
distribution: rhels7.4sp1
osdistro: rhels7.4sp1-x86_64
genimgoptions:
exlist: /opt/inventory/site/osimage/rhels7.4sp1-x86_64-netboot-compute/compute.rhels7.x86_64.exlist
postinstall: /opt/inventory/site/osimage/rhels7.4sp1-x86_64-netboot-compute/compute.rhels7.x86_64.postinstall
rootimgdir: /install/netboot/rhels7.4sp1/x86_64/compute
imagetype: linux
package_selection:
otherpkgdir: /install/post/otherpkgs/rhels7.4sp1/x86_64
otherpkglist: /opt/inventory/site/osimage/rhels7.4sp1-x86_64-netboot-compute/compute.rhels7.x86_64.otherpkglist
pkgdir: /install/rhels7.4sp1/x86_64
pkglist: /opt/inventory/site/osimage/rhels7.4sp1-x86_64-netboot-compute/compute.rhels7.x86_64.pkglist
provision_mode: netboot
role: compute
scripts:
postbootscripts: config_cuda
postscripts: confignetwork
schema_version: '1.0'
[root@c910f03c05k21 osimage]# tree /opt/inventory/site/osimage/rhels7.4sp1-x86_64-netboot-compute
/opt/inventory/site/osimage/rhels7.4sp1-x86_64-netboot-compute
├── config_cuda
├── confignetwork
├── definition.yaml
└── opt
└── inventory
└── site
└── osimage
└── rhels7.4sp1-x86_64-netboot-compute
├── compute.rhels7.x86_64.exlist
├── compute.rhels7.x86_64.otherpkglist
├── compute.rhels7.x86_64.pkglist
└── compute.rhels7.x86_64.postinstall
5 directories, 7 files
xcat-inventory import [-t osimage] [-o <osimage name>] -f|--path <srcdir>
- if
<srcdir>
is a flat text file, keep the current behavior ofxcat-inventory import
- if
<srcdir>
is a directory, check whether the file "definition.yaml" exists under<srcdir>
- if yes,
<srcdir>
is an osimage directory- if
[-o <osimage name>]
is specified, compare the specified osimage name<osimage name>
and the osimage name indefinition.yaml
- if the specified osimage name matches the osimage name in
definition.yaml
, import osimage definition into xCAT DB,insert the git commit id into osimage.usercomments, copy the customized osimage files referenced in osimage definition to the destination path in osimage definition; otherwise, complain the specified osimage does not exist under<srcdir>
. If the destination file is exactly the same as the source file, just import osimage definition into xCAT DB, skip file copy.
- if the specified osimage name matches the osimage name in
- if
[-o <osimage name>]
is not specified, import the osimage definition and customized osimage files under<srcdir>
- if
- if no,
<srcdir>
might be an directory holding osimage directories- if
[-o <osimage name>]
is specified, find the directory<osimage name>
under<srcdir>
, import<osimage name>
if it is a valid osimage directory - if
[-o <osimage name>]
is not specified, import all the valid osimage directories under<srcdir>
- if
- if yes,
- if
<srcdir>
is a tarball file, extract the tarball first and import the unarchived file/directory
- Nov 13, 2024: xCAT 2.17 released.
- Mar 08, 2023: xCAT 2.16.5 released.
- Jun 20, 2022: xCAT 2.16.4 released.
- Nov 17, 2021: xCAT 2.16.3 released.
- May 25, 2021: xCAT 2.16.2 released.
- Nov 06, 2020: xCAT 2.16.1 released.
- Jun 17, 2020: xCAT 2.16 released.
- Mar 06, 2020: xCAT 2.15.1 released.
- Nov 11, 2019: xCAT 2.15 released.
- Mar 29, 2019: xCAT 2.14.6 released.
- Dec 07, 2018: xCAT 2.14.5 released.
- Oct 19, 2018: xCAT 2.14.4 released.
- Aug 24, 2018: xCAT 2.14.3 released.
- Jul 13, 2018: xCAT 2.14.2 released.
- Jun 01, 2018: xCAT 2.14.1 released.
- Apr 20, 2018: xCAT 2.14 released.
- Mar 14, 2018: xCAT 2.13.11 released.
- Jan 26, 2018: xCAT 2.13.10 released.
- Dec 18, 2017: xCAT 2.13.9 released.
- Nov 03, 2017: xCAT 2.13.8 released.
- Sep 22, 2017: xCAT 2.13.7 released.
- Aug 10, 2017: xCAT 2.13.6 released.
- Jun 30, 2017: xCAT 2.13.5 released.
- May 19, 2017: xCAT 2.13.4 released.
- Apr 14, 2017: xCAT 2.13.3 released.
- Feb 24, 2017: xCAT 2.13.2 released.
- Jan 13, 2017: xCAT 2.13.1 released.
- Dec 09, 2016: xCAT 2.13 released.
- Dec 06, 2016: xCAT 2.9.4 (AIX only) released.
- Nov 11, 2016: xCAT 2.12.4 released.
- Sep 30, 2016: xCAT 2.12.3 released.
- Aug 19, 2016: xCAT 2.12.2 released.
- Jul 08, 2016: xCAT 2.12.1 released.
- May 20, 2016: xCAT 2.12 released.
- Apr 22, 2016: xCAT 2.11.1 released.
- Mar 11, 2016: xCAT 2.9.3 (AIX only) released.
- Dec 11, 2015: xCAT 2.11 released.
- Nov 11, 2015: xCAT 2.9.2 (AIX only) released.
- Jul 30, 2015: xCAT 2.10 released.
- Jul 30, 2015: xCAT migrates from sourceforge to github
- Jun 26, 2015: xCAT 2.7.9 released.
- Mar 20, 2015: xCAT 2.9.1 released.
- Dec 12, 2014: xCAT 2.9 released.
- Sep 5, 2014: xCAT 2.8.5 released.
- May 23, 2014: xCAT 2.8.4 released.
- Jan 24, 2014: xCAT 2.7.8 released.
- Nov 15, 2013: xCAT 2.8.3 released.
- Jun 26, 2013: xCAT 2.8.2 released.
- May 17, 2013: xCAT 2.7.7 released.
- May 10, 2013: xCAT 2.8.1 released.
- Feb 28, 2013: xCAT 2.8 released.
- Nov 30, 2012: xCAT 2.7.6 released.
- Oct 29, 2012: xCAT 2.7.5 released.
- Aug 27, 2012: xCAT 2.7.4 released.
- Jun 22, 2012: xCAT 2.7.3 released.
- May 25, 2012: xCAT 2.7.2 released.
- Apr 20, 2012: xCAT 2.7.1 released.
- Mar 19, 2012: xCAT 2.7 released.
- Mar 15, 2012: xCAT 2.6.11 released.
- Jan 23, 2012: xCAT 2.6.10 released.
- Nov 15, 2011: xCAT 2.6.9 released.
- Sep 30, 2011: xCAT 2.6.8 released.
- Aug 26, 2011: xCAT 2.6.6 released.
- May 20, 2011: xCAT 2.6 released.
- Feb 14, 2011: Watson plays on Jeopardy and is managed by xCAT!
- xCAT OS And Hw Support Matrix
- Oct 22, 2010: xCAT 2.5 released.
- Apr 30, 2010: xCAT 2.4 is released.
- Oct 31, 2009: xCAT 2.3 released. xCAT's 10 year anniversary!
- Apr 16, 2009: xCAT 2.2 released.
- Oct 31, 2008: xCAT 2.1 released.
- Sep 12, 2008: Support for xCAT 2 can now be purchased!
- June 9, 2008: xCAT breaths life into (at the time) the fastest supercomputer on the planet
- May 30, 2008: xCAT 2.0 for Linux officially released!
- Oct 31, 2007: IBM open sources xCAT 2.0 to allow collaboration among all of the xCAT users.
- Oct 31, 1999: xCAT 1.0 is born!
xCAT started out as a project in IBM developed by Egan Ford. It was quickly adopted by customers and IBM manufacturing sites to rapidly deploy clusters.