Component

doohickey component allows you to interact with specific components in your OIH environment. These components each perform a specific action within your flows. For example, the JSONata component applies a JSONata expression to a JSON object and returns the transformed result.

Local versus Global

OIH offers two types of components - local and global.

Local Components

Each time a local component is referenced, a new cluster resource is created. These components are beneficial if you are looking for a dedicated component for a flow instance. They do not need to be started or stopped - the creation and deletion of resources are handled automatically when the flow is started or stopped. If a change has been made to the component, the flow instance will need restarted for the changes to take effect.

Global Components

On the other hand, global components are created in their own cluster resource and can be used by many different flow instances across an environment. These components do need to be started and stopped, just like a flow instance. If a change is made to the component, only the component itself must be restarted. No action is needed on the flow instance for the changes to take effect.

Additional Information

For additional information regarding OIH Components, reference the OIH documentation here.

Arguments

doohickey component accepts one argument - an alias which is used to reference this component in both the CLI and in templates

Create

doohickey component create initializes a new instance of a component in OIH. The UUID for this component will be saved for Doohickey CLI to reference later, as well as for you to use within your templates. When creating a component, you can choose to either use one of the Doohickey standard components, or reference your own component Docker image. The Doohickey standard components include:

  • A Code component
  • A CSV component
  • A Filter component
  • A JSONata component
  • A Kafka component
  • A REST API component
  • An SFTP component
  • A SOAP Web Service component
  • A Webhook component
  • An XML component
flagstypedescription
--environment (-e)stringTarget OIH environment alias
--url (-u)stringBase URL for component repository
--name (-n)stringName of component in OIH
--description (-d)stringDescription of component in OIH
--type (-T)stringType of component (i.e., rest, code, xml)
--global (-g)booleanIndicator if component should be global. Defaults to false
--access (-a)stringAccess policy for component - public or private. Defaults to public
--replicasstringSets number of desired replicas for component. Defaults to 1
--pullPolicystringSets pull policy for component image. Defaults to always
--requestCPUstringSets request CPU. Defaults to 0.1
--requestMemorystringSets request memory. Defaults to 256
--limitCPUstringSets limit CPU. Defaults to 0.1
--limitMemorystringSets limit memory. Defaults to 512

Delete

doohickey component delete will remove a component from both your local integration environment and OIH.

flagstypedescription
--environment (-e)stringTarget OIH environment alias
--url (-u)stringBase URL for component repository
--type (-T)stringType of component (i.e., rest, code, xml)
--id (-i)stringID of existing component

Init

doohickey component init will provide a list of components that currently exist in the OIH environment. You can select one of these components to alias and save to your local doohickey configuration. The alias can be used to reference components in a template.

flagstypedescription
--environment (-e)stringTarget OIH environment alias
--url (-u)stringBase URL for component repository

Start

doohickey component start will activate a global component. If the alias provided to start is not for a global component, Doohickey CLI will error and exit.

flagstypedescription
--environment (-e)stringTarget OIH environment alias
--url (-u)stringBase URL for component repository
--yes (-y)booleanAuto-confirm (do not prompt user to confirm before executing)

Stop

doohickey component stop will deactivate a global component. If the alias provided to stop is not for a global component, Doohickey CLI will error and exit.

flagstypedescription
--environment (-e)stringTarget OIH environment alias
--url (-u)stringBase URL for component repository
--yes (-y)booleanAuto-confirm (do not prompt user to confirm before executing)

Update

doohickey component update will retrieve an existing component and apply an update to it.

flagstypedescription
--environment (-e)stringTarget OIH environment alias
--url (-u)stringBase URL for component repository
--name (-n)stringName of component in OIH
--description (-d)stringDescription of component in OIH
--type (-T)stringType of component (i.e., rest, code, xml)
--global (-g)booleanIndicator if component should be global. Defaults to false
--access (-a)stringAccess policy for component - public or private. Defaults to public
--replicasstringSets number of desired replicas for component. Defaults to 1
--pullPolicystringSets pull policy for component image. Defaults to always
--requestCPUstringSets request CPU. Defaults to 0.1
--requestMemorystringSets request memory. Defaults to 256
--limitCPUstringSets limit CPU. Defaults to 0.1
--limitMemorystringSets limit memory. Defaults to 512

View

doohickey component view will allow you to view either a single aliased component or a list of all components currently in the OIH environment.

Flags

flagstypedescription
--environment (-e)stringTarget OIH environment alias
--url (-u)stringBase URL for component repository
--verbose (-v)booleanIf set, displays additional information about components (only available on view all)

View One Component

To view a single component from OIH, run the command doohickey component view myRestComponent replacing myRestComponent with the alias of the component you would like to retrieve. OIH will return the current component information.

View All Components

To view all components currently in an OIH environment, run the command doohickey component view. OIH will request all of the components and return limited information about each. To see more information, you can pass the --verbose flag and additional details will be displayed.