Hi,

The next step in debugging this is to run the command manually, with the -v command:

pkg -R {DC ZFS build area}/build_data/pkg_image install -v pkg:/auto_install pkg:/system/install/media/internal pkg:/system/install/text-install

If the output there doesn't provide any further clues, it may be useful to try using the exact list of packages as input. Name changes, obsoletions, etc. in ON don't get reflected in pkg:/auto_install until the next dev build, so can cause constraint failures. Using the exact list might get better output, and would also allow you to modify it as needed to account for the changes in ON (if there are any). You can generate a snippet of XML to drop in place of pkg:/auto_install in your manifest using:

pkg contents -rm pkg:/auto_install | grep depend | grep -v $NON_ARCH | awk '{print $2}' | awk -F= '{print $2}' | awk -F@ '{print $1}' | sed 's#^#<name>#' | sed 's#$#</name>#' > /tmp/auto_install_dependencies.xml

NON_ARCH should be 'sparc' to build an x86 image; and 'i386' to build a SPARC image. (Perhaps not the most efficient command, but it should suffice).

- Keith

On 01/24/11 09:18 AM, Nirmal Agarwal wrote:
Hi Dave


I tried the following changes and it if failing with the below messages.

XML :
--------------------------------------------------------------
<software name="transfer-ips-install">
<destination>
<image img_root="/%{//build_data.mountpoint}/pkg_image"
            action="create">
<img_type completeness="full"/>
<property val="true">flush-content-cache-on-success</property>
</image>
</destination>
<source>
<publisher name="on-nightly">
<origin name="file:///net/onnv-x86-build.india/builds/bpramod/onnv_156/packages/i386/
nightly/repo.redist"/>
</publisher>
<publisher name="solaris">
<origin name="http://ipkg.sfbay.sun.com/dev/solaris"/>
<!--
If mirrors for this publisher need to be set, specify them here.
          -->
<mirror name="http://ipkg.india:90";></mirror>
</publisher>
<!--
          If additional publishers need to be set, they can be set here
        -->
<!-- Uncomment before using
<publisher name="solaris">
<origin name="http://example.com";></origin>
<mirror name="mirror1.example.com"></mirror>
<mirror name="mirror2.example.com"></mirror>
</publisher>
        -->
</source>
<!--
        List of packages used to form the installed image

        By default the latest build available in the specified
        IPS repository is installed. If another build is required,
        the build number has to be appended to the 'entire' package
        in the following form:

<name>pkg:/[email protected]#</name>
      -->
<software_data action="install" type="IPS">
<name>pkg:/system/install/media/internal</name>
<name>pkg:/system/install/text-install</name>
<name>pkg:/auto_install</name>
</software_data>
<software_data action="uninstall" type="IPS">
<name>pkg:/auto_install</name>
</software_data>
</software>
<!--
The default publisher to be set on the system after it has been installed.
    -->
==============================================================================

Error :

vbox@vbox:/export/distro# distro_const build  dc_try.xml
22:02:56    Build datasets successfully setup
22:02:56    Simple log: /rpool/dc/livecd/logs/simple-log.2011-01-24.22:02
22:02:56    Detail Log: /rpool/dc/livecd/logs/detail-log.2011-01-24.22:02
22:02:56    Creating IPS image
22:02:57    Installing packages
22:03:13 Error occurred during execution of 'transfer-ips-install' checkpoint
.
22:03:13    'transfer-ips-install' checkpoint failed
22:03:13    No solution was found to satisfy constraints
22:03:13    Please check the log for additional error messages.
Log: /rpool/dc/livecd/logs/detail-log.2011-01-24.22:02
===================================================================================
Detailed log :


2011-01-24 22:15:14,666 InstallationLogger.transfer-ips-install DEBUG Reading the IPS source 2011-01-24 22:15:14,666 InstallationLogger.transfer-ips-install DEBUG Primary PublisherInfo: on-nightly 2011-01-24 22:15:14,667 InstallationLogger.transfer-ips-install DEBUG Origin Info: file:///net/onnv-x86-build.india/builds/bpramod/onnv_156/packages/i386/nightly/repo.redist 2011-01-24 22:15:14,667 InstallationLogger.transfer-ips-install DEBUG Additional Publisher Info: solaris 2011-01-24 22:15:14,667 InstallationLogger.transfer-ips-install DEBUG Origin Info: http://ipkg.sfbay.sun.com/dev/solaris 2011-01-24 22:15:14,667 InstallationLogger.transfer-ips-install DEBUG Mirror Info: http://ipkg.india:90 2011-01-24 22:15:14,667 InstallationLogger.transfer-ips-install DEBUG Validating IPS input 2011-01-24 22:15:14,667 InstallationLogger.transfer-ips-install DEBUG Destination: //rpool/dc/livecd/build_data/pkg_image 2011-01-24 22:15:14,667 InstallationLogger.transfer-ips-install DEBUG Image action: create 2011-01-24 22:15:14,668 InstallationLogger.transfer-ips-install DEBUG Image Type: full 2011-01-24 22:15:14,668 InstallationLogger.transfer-ips-install INFO Creating IPS image 2011-01-24 22:15:15,165 InstallationLogger.transfer-ips-install DEBUG Adding additionalpublishers 2011-01-24 22:15:15,195 InstallationLogger.transfer-ips-install DEBUG Updating image properties 2011-01-24 22:15:15,263 InstallationLogger.transfer-ips-install INFO Installing packages 2011-01-24 22:15:31,178 InstallationLogger.transfer-ips-install DEBUG Cleaning up 2011-01-24 22:15:31,178 InstallationLogger ERROR Error occurred during execution of 'transfer-ips-install' checkpoint.
Traceback (most recent call last):
File "/usr/lib/python2.6/vendor-packages/solaris_install/engine/__init__.py", line 814, in _execute_checkpoints
    checkpoint.execute(dry_run)
File "/usr/lib/python2.6/vendor-packages/solaris_install/transfer/ips.py", line 265, in execute self._transfer() File "/usr/lib/python2.6/vendor-packages/solaris_install/transfer/ips.py", line 428, in _transfer
    **trans_val.get(IPS_ARGS))
File "/usr/lib/python2.6/vendor-packages/pkg/client/api.py", line 480, in plan_install Exception]) File "/usr/lib/python2.6/vendor-packages/pkg/client/api.py", line 460, in plan_install reject_list=reject_list) File "/usr/lib/python2.6/vendor-packages/pkg/client/image.py", line 3057, in make_install_plan noexecute, pkg_list, reject_list) File "/usr/lib/python2.6/vendor-packages/pkg/client/image.py", line 3034, in __make_plan_common pfunc(*args) File "/usr/lib/python2.6/vendor-packages/pkg/client/imageplan.py", line 257, in plan_install self.__new_excludes, reject_dict=reject_dict) File "/usr/lib/python2.6/vendor-packages/pkg/client/pkg_solver.py", line 508, in solve_install excludes=excludes, reject_dict=reject_dict) File "/usr/lib/python2.6/vendor-packages/pkg/client/pkg_solver.py", line 437, in __solve_install raise exp
PlanCreationException: No solution was found to satisfy constraints
2011-01-24 22:15:31,199 InstallationLogger INFO 'transfer-ips-install' checkpoint failed

Thanks for the help
Nirmal



On 1/24/2011 9:21 PM, Dave Miner wrote:
On 01/24/11 09:16 AM, Nirmal Agarwal wrote:
Hi Mary and all

I tried putting a custom script which will remove the package and add
the package from the local hosted repository.I have added the checkpoint
after "Boot Archive Initialization". It fails stating that it cannot
remove the package(package I am modifying is system/kernel) since it
depends on other packages installed. Since we have changes in lot many
packages and removing all the dependencies and adding all the new
packages will be cumbersome task. Do we have some other way so that I
can install listed packages directly from repo created after full-build.


You shouldn't need a separate checkpoint to do this. To overlay packages from your private development repository, you should specify your development repository first in the software section, before the main development or release repo, and remove entire from the list of packages so that the particular consolidation build you're working with can float ahead to the rest of the WOS. For example, when I'm using modified install packages, that section of the manifest might look like below. Same thing can be done with an ON nightly.

Dave

<!--
    Software section: defines the payload for the transfer checkpoints.
    -->
<software name="transfer-ips-install">
<destination>
<image img_root="/%{//build_data.mountpoint}/pkg_image"
            action="create">
<img_type completeness="full"/>
<property val="true">flush-content-cache-on-success</property>
</image>
</destination>
<source>
<publisher name="install-nightly">
<origin name="file:///space/work/slim_boot/packages/i386/nightly-nd/repo.redist"/>
</publisher>
<publisher name="solaris">
<origin name="file:///net/zhadum/export/install/solaris_repo"/>
<!--
If mirrors for this publisher need to be set, specify them here.
          -->
<!-- Uncomment before using
<mirror name="mirror.example.com"></mirror>
          -->
</publisher>
<!--
          If additional publishers need to be set, they can be set here
        -->
<!-- Uncomment before using
<publisher name="solaris">
<origin name="http://example.com";></origin>
<mirror name="mirror1.example.com"></mirror>
<mirror name="mirror2.example.com"></mirror>
</publisher>
        -->
</source>
<!--
        List of packages used to form the installed image

By default the latest build available in the specified IPS repository is installed. If another build is required, the build number has to be
        appended to the 'entire' package in the following form:

<name>pkg:/[email protected]#</name>
      -->
<software_data action="install" type="IPS">
<name>pkg:/system/install/media/internal</name>
<name>pkg:/system/install/text-install</name>
<name>pkg:/auto_install</name>
</software_data>
<software_data action="uninstall" type="IPS">
<name>pkg:/auto_install</name>
</software_data>
</software>


Regards
Nirmal

Mary Ding wrote:
  Nirmal:

In build 156, DC was completely rewritten. An overview
of the changes is here:
http://hub.opensolaris.org/bin/view/Project+caiman/Distribution+Constructor+Changes


You would essentially need to do the following:

a) Run DC and pause it at the 'set-ips-attributes'
    checkpoint.
b) Write a script that copies the changed binaries
    to $BUILD_AREA/build_data/pkg_image. Then insert
    this script into the build process via a 'custom-script'.
    Documentation on doing that is mentioned in the link above.




On 01/21/11 06:01 AM, Nirmal Agarwal wrote:
Hi all

I am trying to build my custom iso with the distro constructor.I
wanted to replace some of the packages in build with my custom
packages to test my fix.I was following document "Oracle� Solaris 11
Express Distribution Constructor Guide" which describes the same can
be done using
"Finalizer Scripts". But with the latest 157 build, in the template
manifest file I was not able to find finalizer section of the
manifest file.

Is it still supported ? Or is there any other way to achieve my goal ?


Thanks in advance
Nirmal Agarwal

_______________________________________________
caiman-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/caiman-discuss


_______________________________________________
caiman-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/caiman-discuss

_______________________________________________
caiman-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/caiman-discuss

_______________________________________________
caiman-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/caiman-discuss

_______________________________________________
caiman-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/caiman-discuss

Reply via email to