Age | Commit message (Collapse) | Author | Files | Lines |
|
Since we pass --rebuild-types to gtkdoc scanner, .types file is
generated for us and therefore we don't want to keep this in VCS.
|
|
|
|
|
|
Now we need to set what are the configs that will be used in each
script. To set it, just add, in the .xml's script file:
<config>
<param name="..." policy="mandatory"|"optional"/>
</config>
For manage these configs, a new entity was created, called:
OsinfoInstallConfigParam. And the OsinfoInstallScript entity is, now,
keeping an internal list of the OsinfoInstallConfigParam entity.
With these changes, applications that uses/will use libosinfo can check
if an install script has some config to be set using, consulting by:
- ConfigParam entity:
osinfo_install_script_has_config_param(OsinfoInstallScript *script,
const OsinfoInstallConfigParameter config_param);
- Parameter name:
osinfo_install_script_has_config_param_name(OsinfoInstallScript *script,
const gchar* name);
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
|
|
This introduces two new objects
- OsinfoInstallConfig - stores configuration parameters which get
substituted into the install script template.
- OsinfoInstallScript - provides a template and the mechanism for
turning it into an install script using XSLT
|
|
The DOC_SOURCE_DIR variable was missing the $(top_srcdir) variable
so it could not find the source files when run from a VPATH build.
Empirically the previous comment saying that $(top_srcdir) was not
needed is wrong.
|
|
|
|
The <media> element and OsinfoMedia class can be used to identify
install media, ie ISO images.
The <tree> element and OsinfoTree class are the same concept but
used to identify installation trees.
|
|
|
|
|
|
This frees us from maintaining the sections file.
|
|
|
|
|
|
|
|
Add API to add/list minimum and recommended resources to/from Os.
|
|
Add special list class to hold Resources instances.
|
|
Add a new class to represent resource requirements/recommendations for OSs.
|
|
|
|
Renaming osinfo_media_new_from_location() to
osinfo_media_create_from_location() to emphasize the factory nature
of this function.
Also the convention in g* world is to keep _new() as only thin wrappers
around g_object_new() calls.
|
|
|
|
Add API to create a OsinfoMedia object, given an installation media
location. This includes moving of installation media errors to
osinfo_media module and rename from OsinfoInstallMediaError to
OsinfoMediaError.
Some application/libraries will want to be able to get basic information
about an installation media without having to load the whole metadata DB.
|
|
Add API to guess OS given an installation media location.
|
|
|
|
Add special list class to hold Media instances.
|
|
Add a new class to represent installation media, typically an CD/DVD ISO
or an online filesystem hierarchy.
|
|
This is the generic family this OS belongs to, for example Linux, Windows,
Solaris, UNIX etc.
|
|
Add a method that enables applications to load the metadata osinfo
provides without having to specify any paths.
|
|
Add notes about the possible sources for finding device info
about operating systems and hypervisor platforms
* docs/data-sources.txt: Note data sources for OS and hypervisors
|
|
The supported devices for deploying an OS on a platform are
tracked as part of the main OS device list. This is not
sufficiently flexible because it does not allow for tracking
extra metadata against a (os, platform) pair. Introduce a
new "deployment" object to track the metadata for deploying
an OS on a platform.
* docs/object-model.fig: Illustrate the object model
* data/libosinfo-dummy-data.xml: Introduce deployment
metadata
* examples/demo.py, examples/demo.js: Update for new
APIs
* osinfo/Makefile.am, osinfo/libosinfo.syms,
osinfo/osinfo.h, osinfo/osinfo_db.c, osinfo/osinfo_db.h
osinfo/osinfo_db.h, osinfo/osinfo_deployment.h,
osinfo/osinfo_deploymentlist.c, osinfo/osinfo_deploymentlist.h,
osinfo/osinfo_devicelink.c, osinfo/osinfo_loader.c: Introduce
an explicit deployment object
* osinfo/osinfo_os.c, osinfo/osinfo_os.h, test/test-db.c,
test/test-os.c: Remove tracking of hypervisor preferred
devices
* osinfo/osinfo_devicelinkfilter.c,
osinfo/osinfo_devicelinkfilter.h: Allow filtering against
a link and its target device at the same time.
|
|
It is neccessary to track upgrades/clones/derives relationships
for platforms as well as operating systems. Introduce a common
parent class for both called OsinfoProduct
* data/libosinfo-dummy-data.xml: Make platform XML use the
common product XML attributes/relationships
* docs/reference/Libosinfo-docs.xml, docs/reference/Libosinfo-sections.txt,
docs/reference/Libosinfo.types: Update for new/renamed classes
* osinfo/Makefile.am, osinfo/libosinfo.syms,
osinfo/osinfo.h: New OsinfoProduct class
* osinfo/osinfo_product.c, osinfo/osinfo_product.h,
osinfo/osinfo_productlist.h, osinfo/osinfo_productlist.c: New
classes
* osinfo/osinfo_os.c, osinfo/osinfo_os.h,
osinfo/osinfo_platform.c, osinfo/osinfo_platform.h: Change
to inherit from OsinfoProduct
* osinfo/osinfo_oslist.c, osinfo/osinfo_oslist.h,
osinfo/osinfo_platformlist.c, osinfo/osinfo_platformlist.h:
Change to inherit from OsinfoProductList
* osinfo/osinfo_db.c, osinfo/osinfo_db.h, osinfo/osinfo_loader.c:
Update for new class hierarchy
* osinfo/osinfo_osfilter.c, osinfo/osinfo_osfilter.h,
osinfo/osinfo_osfilter.h, osinfo/osinfo_productfilter.h: Rename
filter class
|
|
Not all virtualization technologies are hypervisors. Rename the
OsinfoHypervisor object to the more general term OsinfoPlatform.
* data/libosinfo-dummy-data.xml: Rename 'hypervisor' element
to 'platform'
* docs/reference/Libosinfo-docs.xml, docs/reference/Libosinfo-docs.xml
docs/reference/Libosinfo.types: Update docs for new object name
* examples/demo.js, examples/demo.py: Update for object name
* osinfo/osinfo_hypervisor.c, osinfo/osinfo_hypervisor.h,
osinfo/osinfo_hypervisorlist.c, osinfo/osinfo_hypervisorlist.h,
osinfo/osinfo_platform.h, osinfo/osinfo_platformlist.c,
osinfo/osinfo_platformlist.h, osinfo/osinfo_platform.c,
osinfo/osinfo.h, osinfo/osinfo_db.c , osinfo/osinfo_db.h,
osinfo/osinfo_device.c, osinfo/osinfo_devicelink.c,
osinfo/osinfo_devicelink.c, osinfo/osinfo_os.h,
osinfo/osinfo_loader.c, osinfo/libosinfo.syms,
osinfo/Makefile.am: Rename OsinfoHypervisor to OsinfoPlatform
* test/Makefile.am, test/test-os.c, test/test-hypervisor.c,
test/test-platform.c, test/test-db.c: Update for object
name
|
|
To enable arbitrary parameters to be set on the association
between the device & hypervisor/os objects, turn the internal
device link struct into a formal managed OsinfoEntity called
OsinfoDeviceLink.
* data/libosinfo-dummy-data.xml: Make 'driver' into a entity
parameter instead of link text content
* docs/reference/Libosinfo-docs.xml,
docs/reference/Libosinfo-sections.txt: Add OsinfoDeviceLink
and OsinfoDeviceLinkList objects
* docs/reference/Libosinfo-sections.txt, osinfo/libosinfo.syms,
osinfo/osinfo.h, osinfo/osinfo_devicelink.c,
osinfo/osinfo_devicelink.h, osinfo/osinfo_devicelinklist.c,
osinfo/osinfo_devicelinklist.h: Add OsinfoDeviceLink and
OsinfoDeviceLinkList objects.
* osinfo/osinfo_hypervisor.c, osinfo/osinfo_hypervisor.h,
osinfo/osinfo_os.c, osinfo/osinfo_os.c: Convert internal
device links to use OsinfoDeviceLink object
* osinfo/osinfo_loader.c: Allow setting of 'driver' attribute
on device links
* test/test-hypervisor.c, test/test-os.c: Update for API
change
|
|
gtkdoc-scan is run from the source dir, so it the path must be
relative to the source dir, not using $(top_srcdir) which is
relative to the build dir.
* docs/reference/Makefile.am: Fix docs path
|
|
The OsinfoList iterator method does not play nicely with
gobject introspection bindings. Remove it, and replace with
a method that returns a GList of elements. This trivially
maps to the language bindings native list/array classes
which are natively iterable.
* docs/reference/Libosinfo-sections.txt: Remove osinfo_list_foreach
and add osinfo_list_get_elements
* osinfo/osinfo_list.c, osinfo/osinfo_list.h: Remove osinfo_list_foreach
and add osinfo_list_get_elements
* osinfo/osinfo_db.c: Rewrite to use g_list_foreach and
fix some GList annotations to specify element type
correctly.
* test/test-list.c: Rewrite to use g_list_foreach
|
|
* Makefile.am: Add docs subdir
* autogen.sh: Enable gtk-doc build by default
* configure.ac: Add check for gtk-doc
* doc/api.txt, doc/overview.txt: Remove inaccurate, outdated
docs
* docs/Makefile.am: Add reference/ subdir
* docs/reference/: bare template for gtk-doc content
|