Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface AutomationOptions

Options for an automation node.

Hierarchy

Indexable

[key: string]: any

Abuse goes here

Index

Properties

Optional apiKey

apiKey: string

Atomist API Key used to authenticate the user starting the client.

Optional endpoints

endpoints: { api?: string; auth?: string; graphql?: string }

Atomist API endpoints

Type declaration

  • Optional api?: string
  • Optional auth?: string
  • Optional graphql?: string

Optional graphql

graphql: { client?: { factory: GraphClientFactory }; listeners?: GraphClientListener[] }

Type declaration

Optional groups

groups: string[]

DO NOT USE. Groups this automation will be registered with. Must be specified if teams is not specified. Cannot be specified if teams is specified. Providing groups indicates this is a global automation, which can only successfully be registered by Atomist.

Optional http

http: { client?: { factory?: HttpClientFactory }; enabled?: boolean } & Partial<ExpressServerOptions>

HTTP configuration, useful for health checks

Optional name

name: string

Automation name. If not given, the name is extracted from the package.json.

Optional policy

policy: "ephemeral" | "durable"

If events should be queued when the registration is not connected to the websocket, specificy "durable". "ephemeral" is suited for testing and running locally and is the default.

Optional postProcessors

postProcessors: ConfigurationPostProcessor[]

Post-processors can be used to modify the configuration after all standard configuration loading has been done and before the client is started. Post-processors return a configuration promise so they can be asynchronous.

Optional requestProcessorFactory

requestProcessorFactory: (automations: AutomationServer, configuration: Configuration, listeners: AutomationEventListener[]) => RequestProcessor

Type declaration

Optional version

version: string

Automation version. Must be a valid semantic version, https://semver.org/. If not given, the version is extracted from the package.json.

Optional workspaceIds

workspaceIds: string[]

Atomist workspaces this automation will be registered with. Must be specified if groups is not specified. Cannot be specified if groups is specified.

Optional ws

ws: { backoff?: { duration?: number; factor?: number; interval?: number; threshold?: number }; client?: { factory?: WebSocketFactory }; compress?: boolean; enabled?: boolean; termination?: { gracePeriod?: number; graceful?: boolean }; timeout?: number }

websocket configuration

Type declaration

  • Optional backoff?: { duration?: number; factor?: number; interval?: number; threshold?: number }

    Configure backoff behavior on the WS connection

    • Optional duration?: number

      Duration in ms the backend should backoff before sending any more messages

    • Optional factor?: number

      Factor (0 < x <= 1) multiply threshold to get to the lower backoff boundary

    • Optional interval?: number

      Interval in ms to check threshold

    • Optional threshold?: number

      Max number of the pending messages in the queue before initiating backoff

  • Optional client?: { factory?: WebSocketFactory }
  • Optional compress?: boolean

    compress messages over websocket

  • Optional enabled?: boolean
  • Optional termination?: { gracePeriod?: number; graceful?: boolean }
    • Optional gracePeriod?: number

      Grace period in milliseconds. Note the actual time to shutdown gracefully may be more than twice this, as this period is used to first wait for requests and then used again to wait for any cluster workers to shutdown. If some part of the shutdown hangs, it could take up to ten times this period for all processes to exit.

    • Optional graceful?: boolean

      If true, wait for up to gracePeriod milliseconds to process in-flight and queued requests.

  • Optional timeout?: number

    timeout in milliseconds

Generated using TypeDoc