ClientInstaller
client installer module
Overview
ClientInstaller: client installer module
Intent
- Automates the installation of a ControlTier Client and bootstraps the client into the current project. Features automated install of the ControlTier Installer (client mode) and dependent Java Package.
- Support additional configurations for installation on a Cygwin/Win32 based client.
Problem
Provides an automation solution for the ControlTier client installation which can then be exposed at the Jobcenter level. This should provide an automation solution for users who may lack the knowledge of a ControlTier installation and/or have the responsibility for many installations within a captured process.
Discussion
This module is somewhat atypical of a normal ControlTier Deployment in that we are bootstrapping a ControlTier client into a project. However, the concept of a Deployment holds in that we are provisioning an entity (the ctier framework instance for the Node) with package dependencies (ControlTier Installer and Java). A "Separation of Concerns" should be considered here prior to automating this process. Many organizations, depending on policy and available resources, may automate this process within a Systems Operations provisioning solution such as Puppet. Consider implemenation of this specific process as an alternative to a larger scoped provising solution.
Design
- Super Type
- Deployment
Role | Concrete. (Objects can be created.) |
Instance Names | Unique |
Notification | false |
Template Directory | |
Data View | Children, proximity: 1 |
Logger Name | ClientInstaller |
Constraints
Allowed Child Dependencies
-
ClientInstallerCygwinClient
1
allowed setting dependency to override behavior to apply cygwin related configuration, see attribute-defaults.
-
ClientInstallerTargetCTierRoot
1
allowed setting dependency, to override the target CTIER_ROOT, see attribute-defaults.
-
ClientInstallerTargetUser
1
allowed setting dependency, to override the target user, see attribute-defaults.
-
ClientInstallerTrustClient
1
allowed setting dependency, if settingValue set to true, will blindly trust remote clients over ssh, see attribute-defaults.
-
CTierInstallerZip
1
allowed package dependency, to specify controltier installer package
-
JavaBin
1
allowed package dependency, to specify dependent unix based java package
-
JavaZip
1
allowed package dependency, to specify dependent windows based java package
1: These types have a Singleton constraint. Only one instance may be added as a resource.
Attributes
Defaults for Imported Attributes
Name | Default | Description |
---|---|---|
cygwinClient | false | sets cygwinClient to false and assumes a traditional unix client |
targetCTierRoot | ctier | sets remote CTIER_ROOT as the "ctier" subdirectory of the remote user's $HOME |
targetUser | ${user.name} | sets remote target user to the local username as a reasonable default username |
trustClient | false | sets trustClient to false to default to normal ssh behavior regarding trusting remote clients on the network |
Commands
View the available commands in the User Reference.
Related Types
The following types are defined for use with ClientInstaller.
ClientInstallerCygwinClient
Overview
ClientInstallerCygwinClient: client installer target user
Design
- Super Type
- DeploymentSetting
Role | Concrete. (Objects can be created.) |
Instance Names | Unique |
Attributes
Exported Attributes
Name | Property | Description |
---|---|---|
cygwinClient | settingValue | If true, will override the assumption of a native unix client and will establish configuration suitable for a cygwin ControlTier client |
ClientInstallerTargetCTierRoot
Overview
ClientInstallerTargetCTierRoot: target CTIER_ROOT
Design
- Super Type
- DeploymentSetting
Role | Concrete. (Objects can be created.) |
Instance Names | Unique |
Attributes
Exported Attributes
Name | Property | Description |
---|---|---|
targetCTierRoot | settingValue | relative or absolute path name of the CTIER_ROOT for the installed client. By default, ControlTier client is installed into "ctier" subdirectory of the remote user's $HOME |
ClientInstallerTargetUser
Overview
ClientInstallerTargetUser: client installer target user
Design
- Super Type
- DeploymentSetting
Role | Concrete. (Objects can be created.) |
Instance Names | Unique |
Attributes
Exported Attributes
Name | Property | Description |
---|---|---|
targetUser | settingValue | Identifies the target user for the installed ControlTier client |
ClientInstallerTrustClient
Overview
ClientInstallerTrustClient: trust remote ssh execution when trying to install on remote client
Design
- Super Type
- DeploymentSetting
Role | Concrete. (Objects can be created.) |
Instance Names | Unique |
Attributes
Exported Attributes
Name | Property | Description |
---|---|---|
trustClient | settingValue | If true, will override the ssh host key protection by ignoring whether remote client is present in the local ssh known hosts file |