The recommendation is to put all SRUs into the repository, not just the ones you believe you will install. While this consumes more space, it may avoid problems later.
I have built a repository add SRUs out of order. While I haven't fully compared that to one created in order, a Repository verify was successful.
I add a hostname.local to my /etc/hosts file to suppress sendmail messages.
root@repo:~# cat /etc/hosts
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
# Internet host table
#
::1localhost
127.0.0.1localhost loghost
192.168.1.101repo repo.local
root@repo:~#
root@repo:~# zfs create -o mountpoint=/repo rpool/repo
root@repo:~# zfs create rpool/repo/solaris
root@repo:~# zfs set atime=off rpool/repo/solaris
root@repo:~#
Because I have downloaded the GA Solaris 11.3 repository image and all SRU repository update images to my Zlobal Zone, I can mount those into my repo Zone. This step is completely optional. You must get the repo files into your OS somehow.
global# mount -F lofs -o ro /export/iso/s11.3/ /zones/repo/root/mnt/
root@repo:~# ls /mnt
buildnumber ga sru02.4 sru03.6 sru04.5 sru05.6 sru06.5
root@repo:~#
I make a point to do a verify on the initial installation using the "-v" option. The verification takes a long time. By long I mean 30-60 minutes on a 3GHz x86 system with mirrored 7200RPM 2TB SATA disks. I will also do this after every few SRUs.
root@repo:/mnt/ga/zipped-repo# ./install-repo.ksh -d /repo/solaris/ -v
Using sol-11_3_1_5_0-repo download.
Uncompressing sol-11_3_1_5_0-repo_1of5.zip...done.
Uncompressing sol-11_3_1_5_0-repo_2of5.zip...done.
Uncompressing sol-11_3_1_5_0-repo_3of5.zip...done.
Uncompressing sol-11_3_1_5_0-repo_4of5.zip...done.
Uncompressing sol-11_3_1_5_0-repo_5of5.zip...done.
Repository can be found in /repo/solaris/.
Initiating repository verification.
root@repo:/mnt/ga/zipped-repo#
root@repo:/mnt/ga/zipped-repo#
root@repo:/mnt/ga/zipped-repo# cd /mnt/sru02.4/zipped-repo/
root@repo:/mnt/sru02.4/zipped-repo#
root@repo:/mnt/sru02.4/zipped-repo# ./install-repo.ksh -d /repo/solaris/
Using sol-11_3_2_4_0-incr-repo download.
IPS repository exists at destination /repo/solaris/
Current version: 0.175.3.1.0.5.0
Do you want to add to this repository? (y/n)[n]: y
Uncompressing sol-11_3_2_4_0-incr-repo.zip...done.
Repository can be found in /repo/solaris/.
Initiating repository rebuild.
root@repo:/mnt/sru02.4/zipped-repo#
For the next SRUs, I will override that check with the "-y" option.
root@repo:/mnt/sru02.4/zipped-repo# cd /mnt/sru03.6/zipped-repo/
root@repo:/mnt/sru03.6/zipped-repo#
root@repo:/mnt/sru03.6/zipped-repo# ./install-repo.ksh -d /repo/solaris/ -y
Using sol-11_3_3_6_0-incr-repo download.
IPS repository exists at destination /repo/solaris/
Current version: 0.175.3.2.0.4.0
Adding packages to existing repository.
Uncompressing sol-11_3_3_6_0-incr-repo_1of2.zip...done.
Uncompressing sol-11_3_3_6_0-incr-repo_2of2.zip...done.
Repository can be found in /repo/solaris/.
Initiating repository rebuild.
root@repo:/mnt/sru03.6/zipped-repo#
My system is running Solaris 11.3 SRU 6.5. This highlights that a Repository and its contents is completely independent of what the system is running at.
root@repo:/mnt/sru05.6/zipped-repo# pkg list entire
NAME (PUBLISHER) VERSION IFO
entire 0.5.11-0.175.3.6.0.5.0 i--
root@repo:/mnt/sru05.6/zipped-repo# pkg info entire
Name: entire
Summary: entire incorporation including Support Repository Update (Oracle Solaris 11.3.6.5.0).
Description: This package constrains system package versions to the same
build. WARNING: Proper system update and correct package
selection depend on the presence of this incorporation.
Removing this package will result in an unsupported system. For
more information see:
https://support.oracle.com/rs?type=doc&id=2045311.1
Category: Meta Packages/Incorporations
State: Installed
Publisher: solaris
Version: 0.5.11 (Oracle Solaris 11.3.6.5.0)
Build Release: 5.11
Branch: 0.175.3.6.0.5.0
Packaging Date: March 9, 2016 10:05:55 PM
Size: 5.46 kB
FMRI: pkg://solaris/entire@0.5.11,5.11-0.175.3.6.0.5.0:20160309T220555Z
root@repo:/mnt/sru05.6/zipped-repo#
root@repo:~# pkg search -s http://192.168.1.101 entire
pkg: Some repositories failed to respond appropriately:
http://10.143.156.62:
Unable to contact valid package repository
Encountered the following error(s):
Unable to contact any configured publishers.
This is likely a network configuration problem.
Framework error: code: 7 reason: Failed to connect to 192.168.1.101 port 80: Connection refused
URL: 'http://192.168.1.101' (happened 4 times)
root@repo:~#
root@repo:~# netstat -anf inet
...
TCP: IPv4
Local Address Remote Address Swind Send-Q Rwind Recv-Q State
-------------------- -------------------- ------- ------ ------- ------ -----------
127.0.0.1.5999 *.* 0 0 128000 0 LISTEN
*.111 *.* 0 0 128000 0 LISTEN
*.* *.* 0 0 128000 0 IDLE
*.111 *.* 0 0 128000 0 LISTEN
*.* *.* 0 0 128000 0 IDLE
*.22 *.* 0 0 128000 0 LISTEN
*.22 *.* 0 0 128000 0 LISTEN
127.0.0.1.4999 *.* 0 0 128000 0 LISTEN
127.0.0.1.25 *.* 0 0 128000 0 LISTEN
127.0.0.1.587 *.* 0 0 128000 0 LISTEN
root@repo:~#
root@repo:~# svccfg -s pkg/server add solaris
root@repo:~# svccfg -s pkg/server:solaris setprop pkg/inst_root=/repo/solaris/
root@repo:~# svcadm refresh pkg/server:solaris
root@repo:~# svcadm enable pkg/server:solaris
root@repo:~# svcs server:solaris
STATE STIME FMRI
online 8:10:50 svc:/application/pkg/server:solaris
root@repo:~#
root@repo:~# netstat -anf inet
...
TCP: IPv4
Local Address Remote Address Swind Send-Q Rwind Recv-Q State
-------------------- -------------------- ------- ------ ------- ------ -----------
127.0.0.1.5999 *.* 0 0 128000 0 LISTEN
*.111 *.* 0 0 128000 0 LISTEN
*.* *.* 0 0 128000 0 IDLE
*.111 *.* 0 0 128000 0 LISTEN
*.* *.* 0 0 128000 0 IDLE
*.22 *.* 0 0 128000 0 LISTEN
*.22 *.* 0 0 128000 0 LISTEN
127.0.0.1.4999 *.* 0 0 128000 0 LISTEN
127.0.0.1.25 *.* 0 0 128000 0 LISTEN
127.0.0.1.587 *.* 0 0 128000 0 LISTEN
*.80 *.* 0 0 128000 0 LISTEN
127.0.0.1.32945 127.0.0.1.80 130880 0 139264 0 TIME_WAIT
root@repo:~#
Now if I search again, success.
root@repo:~# pkg search -s http://192.168.1.101 entire
INDEX ACTION VALUE PACKAGE
require depend pkg://solaris/entire@0.5.11,5.11-0.175.3.4.0.5.0 pkg:/support/critical-patch-update/solaris-11-cpu@2016.1-1
require depend pkg://solaris/entire@0.5.11,5.11-0.175.3.2.0.4.0 pkg:/support/critical-patch-update/solaris-11-cpu@2015.11-1
require depend pkg://solaris/entire@0.5.11,5.11-0.175.3.5.0.6.0 pkg:/support/critical-patch-update/solaris-11-cpu@2016.2-1
require depend pkg://solaris/entire@0.5.11,5.11-0.175.3.3.0.6.0 pkg:/support/critical-patch-update/solaris-11-cpu@2015.12-1
pkg.description set Provides for power management support of the entire operating system, including the configuration of the maximum time allowed to reach both minimum and full capacity, and whether or not to permit system suspend and resume if the platform supports it. pkg:/system/kernel/power@0.5.11-0.175.3.0.0.30.0
pkg.description set pixz compresses and decompresses files using multiple processors. If the input looks like a tar(1) archive, it also creates an index of all the files in the archive. This allows the extraction of only a small segment of the tarball, without needing to decompress the entire archive. pkg:/compress/pixz@1.0-0.175.3.0.0.30.0
root@repo:~#
root@repo:~# pkgrepo -s /repo/solaris/repo verify
Initiating repository verification.
Scanning repository (this could take some time)
(Other than minor typographical changes)
2016.10.26: Posted
2016.04.21: Created