cloudfunctions

package
v1.8.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 18, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

README

Kubemq GCP Cloud Functions Target Connector

Kubemq gcp Cloud Functions target connector allows services using kubemq server to access call a function target on gcp Cloud Function. The connector synchronously invokes a deployed Cloud Function, very limited traffic is allowed 16 per 100 seconds.

Prerequisites

The following are required to run the redis target connector:

  • kubemq cluster
  • Gcp Cloud function targe.
  • kubemq-targets deployment

Configuration

Kafka source connector configuration properties:

Properties Key Required Description Example
project yes gcp project name "testproject"
credentials yes gcp service account key location (json) "TestTopic"
location_match no match missing function location (default true) "true"

Example:

bindings:
  - name: kubemq-query
    source:
      kind: kubemq.kubemq.query
      name: kubemq-query
      properties:
        address: "kubemq-cluster:50000"
        client_id: "kubemq-query-gcpfucntions-connector"
        auth_token: ""
        channel: "query.gcp.functions"
        group:   ""
        auto_reconnect: "true"
        reconnect_interval_seconds: "1"
        max_reconnects: "0"
    target:
      kind: gcp.cloudfunctions
      name: target-gcp-couldfunctions
      properties:
        project: "testproject"
        credentials: "myKey"
        location_match: "true"

Usage

Get Request

Get request metadata setting:

Metadata Key Required Description Possible values
name yes name of the gcp function "test_function"
project no gcp project name (override parent value) "testproject1"
location no gcp project location (missing value will be matched) "us-central1"

Example:

{
  "metadata": {
    "name": "test_function",
    "location": "us-central1"    
  },
  "data": "eyJtZXNzYWdlIjoidGVzdCJ9"
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Connector

func Connector() *common.Connector

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

func New

func New() *Client

func (*Client) Connector

func (c *Client) Connector() *common.Connector

func (*Client) Do

func (c *Client) Do(ctx context.Context, request *types.Request) (*types.Response, error)

func (*Client) Init

func (c *Client) Init(ctx context.Context, cfg config.Spec, log *logger.Logger) error

func (*Client) Stop

func (c *Client) Stop() error

Directories

Path Synopsis
functions
apiv1
NOTE: This package is in beta.
NOTE: This package is in beta.
metadata
Package metadata provides methods for creating and accessing context.Context objects with Google Cloud Functions metadata.
Package metadata provides methods for creating and accessing context.Context objects with Google Cloud Functions metadata.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL