<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:

def validate_beacon(self, name, beacon_data):
        '''
        Return available beacon functions
        '''
        validate_str = '{}.validate'.format(name)
        # Run the validate function if it's available,
        # otherwise there is a warning about it being missing
        if validate_str in self.beacons:
            if 'enabled' in beacon_data:
                del beacon_data['enabled']
            valid, vcomment = self.beacons[validate_str](beacon_data)
        else:
            vcomment = 'Beacon {0} does not have a validate' \
                       ' function, skipping validation.'.format(name)
            valid = True

        # Fire the complete event back along with the list of beacons
        evt = salt.utils.event.get_event('minion', opts=self.opts)
        evt.fire_event({'complete': True,
                        'vcomment': vcomment,
                        'valid': valid},
                       tag='/salt/minion/minion_beacon_validation_complete')

        return True