> the only approach i can think of is to have -R commands essentially > "record" the dladm commands invoked using that option, and "replay" them > in order on first reboot post-upgrade/install, when the repository is > available. one way of doing this is through appending such commands > to /var/svc/profile/upgrade - this is a project-private interface so using > it would require a contract i believe.
Yes, this is what we already do in the UV gate (even without SMF, it's easier because the location and format of the dladm configuration files has changed several times). One issue with /var/svc/profile/upgrade is it is read fairly late (by manifest-import), thus we've introduced /var/svc/profile/upgrade-datalink, which is read by network/physical. > i think that we also need to distinguish between -R alternate root > commands that occur when the repository is available - e.g. where we'd > like to modify the datalink configuration in a whole-root nonglobal > zone from the global zone - and when it is not (install/upgrade). in > the former case, i suppose we'd need to set the alternate root for the > (available) repository, so that operations are carried out on the > appropriate repository. We don't currently make this distinction with UV -- the assumption is that -R is only being used for install/upgrade. -- meem
