示例#1
0
    def save(self, *args, **kw):
        """
       Make sure a SliceSecret exists for this slice
       """

        import syndicate.observer.core as syndicatelib

        # get observer private key
        config = syndicatelib.get_config()

        try:
            observer_pkey_path = config.SYNDICATE_OBSERVER_PRIVATE_KEY
            observer_pkey_pem = syndicatelib.get_observer_private_key_pem(
                observer_pkey_path)
        except:
            raise syndicatelib.SyndicateObserverError(
                "Internal Syndicate Observer error: failed to load Observer private key"
            )

        # get or create the slice secret
        slice_secret = syndicatelib.get_or_create_slice_secret(
            observer_pkey_pem, None, slice_fk=self.slice_id)

        if slice_secret is None:
            raise SyndicateObserverError(
                "Failed to get or create slice secret for %s" %
                self.slice_id.name)

        super(VolumeSlice, self).save(*args, **kw)
示例#2
0
 def save(self, *args, **kw):
    """
    Make sure a SliceSecret exists for this slice
    """
    
    import syndicate.observer.core as syndicatelib
    
    # get observer private key
    config = syndicatelib.get_config()
    
    try:
       observer_pkey_path = config.SYNDICATE_OBSERVER_PRIVATE_KEY
       observer_pkey_pem = syndicatelib.get_observer_private_key_pem( observer_pkey_path )
    except:
       raise syndicatelib.SyndicateObserverError( "Internal Syndicate Observer error: failed to load Observer private key" )
    
    # get or create the slice secret 
    slice_secret = syndicatelib.get_or_create_slice_secret( observer_pkey_pem, None, slice_fk=self.slice_id )
    
    if slice_secret is None:
       raise SyndicateObserverError( "Failed to get or create slice secret for %s" % self.slice_id.name )
    
    super(VolumeSlice, self).save(*args, **kw)
示例#3
0
        RG_closure = config.SYNDICATE_RG_CLOSURE
        observer_pkey_path = config.SYNDICATE_OBSERVER_PRIVATE_KEY
        syndicate_url = config.SYNDICATE_SMI_URL
        gateway_name_prefix = config.SYNDICATE_GATEWAY_NAME_PREFIX
    except Exception, e:
        traceback.print_exc()
        logger.error("syndicatelib config is missing one or more of the following: SYNDICATE_OBSERVER_SECRET, SYNDICATE_RG_CLOSURE, SYNDICATE_OBSERVER_PRIVATE_KEY, SYNDICATE_SMI_URL")
        raise e

    # get secrets...
    try:
        observer_pkey_pem = observer_core.get_observer_private_key_pem(observer_pkey_path)
        assert observer_pkey_pem is not None, "Failed to load Observer private key"

        # get/create the slice secret
        slice_secret = observer_core.get_or_create_slice_secret(observer_pkey_pem, slice_name)
        assert slice_secret is not None, "Failed to get or create slice secret for %s" % slice_name

    except Exception, e:
        traceback.print_exc()
        logger.error("Failed to load secret credentials")
        raise e

    # make sure there's a slice-controlled Syndicate user account for the slice owner
    slice_principal_id = observer_core.make_slice_principal_id(principal_id, slice_name)

    try:
        rc, user = observer_core.ensure_principal_exists(slice_principal_id, observer_secret, is_admin=False, max_UGs=1100, max_RGs=1)
        assert rc is True, "Failed to ensure principal %s exists (rc = %s,%s)" % (slice_principal_id, rc, user)
    except Exception, e:
        traceback.print_exc()
示例#4
0
        gateway_name_prefix = config.SYNDICATE_GATEWAY_NAME_PREFIX
    except Exception, e:
        traceback.print_exc()
        logger.error(
            "syndicatelib config is missing one or more of the following: SYNDICATE_OBSERVER_SECRET, SYNDICATE_RG_CLOSURE, SYNDICATE_OBSERVER_PRIVATE_KEY, SYNDICATE_SMI_URL"
        )
        raise e

    # get secrets...
    try:
        observer_pkey_pem = observer_core.get_observer_private_key_pem(
            observer_pkey_path)
        assert observer_pkey_pem is not None, "Failed to load Observer private key"

        # get/create the slice secret
        slice_secret = observer_core.get_or_create_slice_secret(
            observer_pkey_pem, slice_name)
        assert slice_secret is not None, "Failed to get or create slice secret for %s" % slice_name

    except Exception, e:
        traceback.print_exc()
        logger.error("Failed to load secret credentials")
        raise e

    # make sure there's a slice-controlled Syndicate user account for the slice owner
    slice_principal_id = observer_core.make_slice_principal_id(
        principal_id, slice_name)

    try:
        rc, user = observer_core.ensure_principal_exists(slice_principal_id,
                                                         observer_secret,
                                                         is_admin=False,