From @imbriaco on February 29, 2016 18:51
Cog commands are simple executables that are executed by Relay, with their arguments and options validated and populated in a specially designed environment. We should explore creating standalone utilities for executing these on the command line in the event that Cog is unavailable for any reason (chat provider outage, database failure, etc).
High level notes:
- Simple CLI tool converts command line arguments for use by Cog and populates the environment accordingly. e.g.
cogexec mist:ec2-find --region=us-east-1.
- Other functions: list bundles, show help for a bundle. We have the necessary information available in the bundle configuration files.
- Pipelines are explicitly out of scope. Single command invocations only.
- No permission validation. Permission is assumed If users can login to the Relay host and have necessary system permissions to execute
cogexec and access bundles, command_config, and related files.
- Any action performed by
cogexec should be logged to the audit log.
Much more definition is necessary, but this captures the essence of the problem we're trying to solve.
Copied from original issue: operable/cog#321
From @imbriaco on February 29, 2016 18:51
Cog commands are simple executables that are executed by Relay, with their arguments and options validated and populated in a specially designed environment. We should explore creating standalone utilities for executing these on the command line in the event that Cog is unavailable for any reason (chat provider outage, database failure, etc).
High level notes:
cogexec mist:ec2-find --region=us-east-1.cogexecand access bundles, command_config, and related files.cogexecshould be logged to the audit log.Much more definition is necessary, but this captures the essence of the problem we're trying to solve.
Copied from original issue: operable/cog#321