PSARC/2016/607 Puppet 4.7.0, Hiera 3.2.0
19429313 address_object type should support vrrp addresses
19888183 publisher provider is applied on each puppet run
22125767 nsswitch provider missing ipnodes, protocols, printers
22126108 add process scheduler administration provider
22960016 Puppet needs a native way to set ZFS ACLs
23107546 race condition with smf provider and manifest-import
23119445 Upgrade Ruby Hiera to 3.2.0
23547788 Add ILB type to Puppet
23593229 rspec tests need to be written for solaris_providers boot_environment
23593308 rspec tests need to be written for solaris_providers ipmp_interface
23593316 rspec tests need to be written for solaris_providers protocol_properties
23593225 rspec tests need to be written for solaris_providers etherstub
23593319 rspec tests need to be written for solaris_providers vnic
23593310 puppet module rspec tests and validation for nsswitch
24674283 current puppet.stencil implementation restricts some valid puppet use cases
24680838 puppet agent failures should be visible to administrator via SMF interfaces
24681179 puppet's logadm.conf is pointing at wrong location for master, ignoring agent
24696742 puppet svccfg doesn't work for some value types
24696809 Puppet link aggregation modules cascading errors
24825868 Update to Puppet 4, Puppet 3 is EOL
24836004 '-' is valid in pkg mediator implementation
24836209 nis provider needs to support multiple securenets entries
24928890 keystone and horizon modules patches create invalid metadata.json
25022632 puppet ipmp_interface type should not validate interface existence
25022714 Puppet SMF service should not refresh on every apply operation
25225039 puppet svccfg should not declare a property absent if it does not match desired
25060925 puppet resource address_object generates invalid puppet code for dhcp interfaces
25065015 update puppet oracle-solaris_providers 2.0.0
25071521 puppet svccfg type should return a clear error if value is not provided
25071681 puppet dns resource generates invalid manifest
25071686 puppet resource ldap; Error: Could not run: No ability to determine if ldap...
25071690 puppet resource nis; Error: Could not run: No ability to determine if nis exists
25092384 puppet module files should be owned by root
25093408 puppet-solaris should be part of puppet again
25106150 Nis provider is not idempotent
25106155 DNS provider is not idempotent
25163776 puppet link_aggregation misunderstands 'address' -u output
25163791 puppet link_aggregation should use resource values instead of property_hash
25163815 puppet address_object errors and validations could be better
25163840 puppet Puppet::Property::List types conflict with internally generated arrays
25163864 puppet link_aggregation type specs need to be written
25177901 puppet beadm should not use both -e and -p
25178928 puppet link_aggregation should try to copy existing values on change of mode
25179040 puppet link_aggregation should delete with -t for temporary
25192742 puppet svccfg shouldn't try to update properties for a non-existent fmri
25196056 puppet interface and address _properties namevars are problematic
25191982 puppet type 'dns' is not able to set 'options' property in resolv.conf
25211935 puppet link_aggregation needs to permanently delete before modifying temporary
25217063 puppet protocol_properties is not idempotent
25218036 puppet resource svccfg emits a warning for every property
25218053 puppet svccfg prefetch should match individually specified parameters
25218208 puppet svccfg should enforce well-formedness in fmri parameters
25224661 puppet resource address_properties shouldn't output read-only properties
25224777 puppet address_properties should not reset unchanged properties
25306835 puppet boot_environment needs to understand the new snapshot format
25306877 puppet svccfg should check for pg and allow nested property groups
25306904 puppet dns,nis,ldap,protocol_properties prefetch fails after input auto munge
25348321 puppet boot_environment needs to validate all properties and parameters
25354751 puppet vnic provider needs to support / and - as valid vnic name characters
Getting started with the Userland Consolidation
Getting Started
This README provides a very brief overview of the gate, how to retrieve
a copy, and how to build it. Detailed documentation about the Userland
gate can be found in the 'doc' directory. Questions or comments about
the gate can be addressed to [email protected].
Overview
The Userland consolidation maintains a project page at
https://solaris-userland.java.net/
and a Mercurial gate at
https://hg.java.net/hg/solaris-userland~gate
This gate contains build recipies, patches, IPS manifests, etc. necessary
to download, prep, build, test, package and publish open source software.
The build infrastructure is similiar to that of the SFW consolidation in
that it makes use of herarchical Makefiles which provide dependency and
recipe information for building the components. In order to build the
contents of the Userland gate, you need to clone it. Since you are
reading this, you probably already have.
Getting the Bits
As mentioned, the gate is stored in a Mercurial repository. In order to
build or develop in the gate, you will need to clone it. You can do so
with the following command
$ hg clone https://hg.java.net/hg/solaris-userland~gate /scratch/clone
This will create a replica of the various pieces that are checked into the
source code management system, but it does not retrieve the community
source archives associated with the gate content. To download the
community source associated with your cloned workspace, you will need to
execute the following:
$ cd /scratch/clone/components
$ gmake download
This will use GNU make and the downloading tool in the gate to walk through
all of the component directories downloading and validating the community
source archives from the gate machine or their canonical source repository.
There are two variation to this that you may find interesting. First, you
can cause gmake(1) to perform it's work in parallel by adding '-j (jobs)'
to the command line. Second, if you are only interested in working on a
particular component, you can change directories to that component's
directory and use 'gmake download' from that to only get it's source
archive.
Building the Bits.
You can build individual components or the contents of the entire gate.
Component build
If you are only working on a single component, you can just build it using
following:
setup the workspace for building components
$ cd (your-workspace)/components ; gmake setup
build the individual component
$ cd (component-dir) ; gmake publish
Complete Top Down build
Complete top down builds are also possible by simply running
$ cd (your-workspace)/components
$ gmake publish
The 'publish' target will build each component and publish it to the
workspace IPS repo.
Tools to help facilitate build zone creation will be integrated
shortly. If the zone you create to build your workspace in does not have
networking enabled, you can pre-download any community source archives into
your workspace from the global with:
$ cd (your-workspace)/components
$ gmake download
You can add parallelism to your builds by adding '-j (jobs)' to your gmake
command line arguments.
The gate should only incrementally build what it needs to based on what has
changed since you last built it.