func()

in lambda/rapid/handlers.go [558:590]


func (c *rapidContext) acceptInitRequestForInitCaching(initRequest *interop.Init) (*interop.Init, error) {
	log.Info("Configure environment for Init Caching.")
	randomUUID, err := uuid.NewRandom()

	if err != nil {
		return initRequest, err
	}

	initCachingToken := randomUUID.String()

	initRequest.EnvironmentVariables.StoreEnvironmentVariablesFromInitForInitCaching(
		c.server.Host(),
		c.server.Port(),
		initRequest.CustomerEnvironmentVariables,
		initRequest.Handler,
		initRequest.FunctionName,
		initRequest.FunctionVersion,
		initCachingToken)

	c.registrationService.SetFunctionMetadata(core.FunctionMetadata{
		AccountID:         initRequest.AccountID,
		FunctionName:      initRequest.FunctionName,
		FunctionVersion:   initRequest.FunctionVersion,
		InstanceMaxMemory: initRequest.InstanceMaxMemory,
		Handler:           initRequest.Handler,
		RuntimeInfo:       initRequest.RuntimeInfo,
	})
	c.SetLogStreamName(initRequest.LogStreamName)

	c.credentialsService.SetCredentials(initCachingToken, initRequest.AwsKey, initRequest.AwsSecret, initRequest.AwsSession, initRequest.CredentialsExpiry)

	return initRequest, nil
}