'Prepares a deployment create or update (if an id was given).'

def _prep_software_deploy_update(self, deploy_id=None, server_id=None, config_id=None, action=None, status=None, input_values=None, output_values=None, status_reason=None, signal_transport=None):

    post_body = {}
    if (deploy_id is not None):
        post_body['id'] = deploy_id
    if (server_id is not None):
        post_body['server_id'] = server_id
    if (config_id is not None):
        post_body['config_id'] = config_id
    if (action is not None):
        post_body['action'] = action
    if (status is not None):
        post_body['status'] = status
    if (input_values is not None):
        post_body['input_values'] = input_values
    if (output_values is not None):
        post_body['output_values'] = output_values
    if (status_reason is not None):
        post_body['status_reason'] = status_reason
    if (signal_transport is not None):
        post_body['signal_transport'] = signal_transport
    body = json.dumps(post_body)
    headers = self.get_headers()
    return (headers, body)
