atomic-operator-runner
Project description
atomic-operator-runner
Features
- Execute a command string on a local, remote Windows, remote macOS and remote Linux systems
- Execute a command for PowerShell, command-line (cmd) and bash/sh on any of the above systems
- Can execute commands elevated on the supported systems
- Returns a standard response object, as well as displays a formatter version to the console via logging
Response Object
Every execution of a command will return a standard object that includes details about the command execution. The full structure of this response is outlined below:
{
"environment": {
"platform": "windows",
"hostname": "10.x.x.x",
"user": "user"
},
"command": "Get-Service\'",
"executor": "powershell",
"elevation_required": false,
"start_timestamp": "2022-08-25T14:15:10.370468",
"end_timestamp": "2022-08-25T14:15:12.165563",
"return_code": 1,
"output": "",
"records": [
{
"type": null,
"message_data": null,
"source": null,
"time_generated": null,
"pid": null,
"native_thread_id": null,
"managed_thread_id": null,
"extra": {
"MESSAGE_TYPE": "266245",
"action": "None",
"activity": "Invoke-Expression",
"category": "17",
"command_definition": "None",
"command_name": "None",
"command_type": "None",
"command_visibility": "None",
"details_message": "None",
"exception": "System.Management.Automation.ParseException: At line:1 char:12\\r\\n+ Get-Service\'\\r\\n+ ~\\nThe string is missing the terminator: \'.\\r\\n at System.Management.Automation.ScriptBlock.Create(Parser parser, String fileName, String fileContents)\\r\\n at System.Management.Automation.ScriptBlock.Create(ExecutionContext context, String script)\\r\\n at Microsoft.PowerShell.Commands.InvokeExpressionCommand.ProcessRecord()\\r\\n at System.Management.Automation.CommandProcessor.ProcessRecord()",
"extended_info_present": "False",
"fq_error": "TerminatorExpectedAtEndOfString,Microsoft.PowerShell.Commands.InvokeExpressionCommand",
"invocation": "False",
"invocation_bound_parameters": "None",
"invocation_command_origin": "None",
"invocation_expecting_input": "None",
"invocation_history_id": "None",
"invocation_info": "System.Management.Automation.InvocationInfo",
"invocation_line": "None",
"invocation_name": "None",
"invocation_offset_in_line": "None",
"invocation_pipeline_iteration_info": "None",
"invocation_pipeline_length": "None",
"invocation_pipeline_position": "None",
"invocation_position_message": "None",
"invocation_script_line_number": "None",
"invocation_script_name": "None",
"invocation_unbound_arguments": "None",
"message": "ParserError: (:) [Invoke-Expression], ParseException",
"pipeline_iteration_info": "None",
"reason": "ParseException",
"script_stacktrace": "None",
"target_info": "None",
"target_name": "",
"target_object": "None",
"target_type": ""
}
}
]
}
Installation
You can install atomic-operator-runner via [pip] from [PyPI]:
$ pip install atomic-operator-runner
Usage
Please see the [Command-line Reference] for details.
Usage: atomic-operator-runner [OPTIONS] COMMAND EXECUTOR
atomic-operator-runner executes powershell, cmd or bash/sh commands both
locally or remotely using SSH or WinRM.
Options:
--version Show the version and exit.
--platform [windows|macos|linux]
Platform to run commands on. [required]
--hostname TEXT Remote hostname to run commands on.
--username TEXT Username to authenticate to remote host.
--password TEXT Password to authenticate to remote host.
--ssh_key_path PATH Path to an SSH Key to authenticate to remote
host.
--private_key_string TEXT Private SSH Key string used to authenticate
to remote host.
--verify_ssl BOOLEAN Whether or not to verify SSL when
authenticating.
--ssh_port INTEGER Port used for SSH connections.
--ssh_timeout INTEGER Timeout used for SSH connections.
--elevated BOOLEAN Whether or not to run the command elevated.
--help Show this message and exit.
Contributing
Contributions are very welcome.
To learn more, see the Contributor Guide.
License
Distributed under the terms of the MIT license.
atomic-operator-runner is free and open source software.
Security
Security concerns are a top priority for us, please review our Security Policy.
TEST TEST2
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file atomic-operator-runner-0.1.4.tar.gz
.
File metadata
- Download URL: atomic-operator-runner-0.1.4.tar.gz
- Upload date:
- Size: 15.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.13 CPython/3.7.13 Linux/5.15.0-1019-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0337de6f48ebafc1f1c3c784160158b33e207337a9a9fc3a68f55ad27ac49598 |
|
MD5 | df7db4459fff638a6bb0790fa49de67c |
|
BLAKE2b-256 | 30ac287bbcf2be3e7752a810ef4e9c06889fa07d2594f89783bcba2989f73c45 |
File details
Details for the file atomic_operator_runner-0.1.4-py3-none-any.whl
.
File metadata
- Download URL: atomic_operator_runner-0.1.4-py3-none-any.whl
- Upload date:
- Size: 18.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.13 CPython/3.7.13 Linux/5.15.0-1019-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b5c23dc994ad983babaa99c4884b6849051b2ee2799216699c15f843d64ffc9 |
|
MD5 | 9c49ced5085079f4effdee9c80404505 |
|
BLAKE2b-256 | 282d39f68a28f84a9b43154e5b4423d2dac917aaa2f79dc6a8451939ad095347 |