We have an interesting problem on the SMF work with respect to enabling the SMF service when commands are run.
The general premise we've been working under is that if no install services are "on" then the SMF service should be in maintenance. Also, all command should cause an attempt to enable the SMF service when they are executed. Our problem: If the SMF service is enabled when running a command like create_service or enable and there are no install services "on" we go into maintenance mode and can't enable the service or create it. Chicken and the egg problem. - We want the service to go into maintenance and the command to error out if a dependency is unfulfilled. But not if if there are no "on" install services. - We don't want this behavior if we are creating/enabling the first install service. We've come up with 2 solutions to this and would like feedback on them today. Solution 1: Put the SMF service into degrade status not maintenance if there are no install services in "on". This would not be considered an error to exit a command from and the service would be enabled if the command succeeds. Solution 2: Currently the modification of the status information is at the end of the create_service/enable functions. We could move this to the beginning of the functions and create a 3rd state for status (enabling ???) to differentiate from a full enable. Obviously all error conditions that exit would need to clean up by changing the status back to off or deleting the property group. Jean & Evan
