text: # @copyright@
  # Copyright (c) 2006 - 2019 Teradata
  # All rights reserved. Stacki(r) v5.x stacki.com
  # https://github.com/Teradata/stacki/blob/master/LICENSE.txt
  # @copyright@
  
  import stack.commands
  from stack.exception import ArgRequired
  
  
  class Command(stack.commands.remove.os.command):
  	"""
  	Remove a storage controller configuration for an OS type.
  
  	<arg type='string' name='os' repeat='1' optional='0'>
  	OS type (e.g., 'redhat', 'sles').
  	</arg>
  
  	<param type='integer' name='adapter' optional='1'>
  	Adapter address. If adapter is '*', enclosure/slot address applies to
  	all adapters.
  	</param>
  
  	<param type='integer' name='enclosure' optional='1'>
  	Enclosure address. If enclosure is '*', adapter/slot address applies
  	to all enclosures.
  	</param>
  
  	<param type='integer' name='slot' optional='0'>
  	Slot address(es). This can be a comma-separated list. If slot is '*',
  	adapter/enclosure address applies to all slots.
  	</param>
  	"""
  
  	def run(self, params, args):
  		if len(args) == 0:
  			raise ArgRequired(self, 'os')
  
  		self.command('remove.storage.controller', self._argv + ['scope=os'], verbose_errors = False)
  		return self.rc
  