diff --git a/plugins/localstack/README.md b/plugins/localstack/README.md new file mode 100644 index 000000000..2c71e9edf --- /dev/null +++ b/plugins/localstack/README.md @@ -0,0 +1,24 @@ +# Localstack plugin # + +CLI support for LOCALSTACK interaction + +## Description ## +To use it, add `localstack` to the plugins array in your zshrc file: + +```zsh +plugins=(... localstack) +``` + +## Usage ## + +This plugin supplies one command, `lsk`, through which all its features are exposed. + +## Commands + +| Command | Description | +| :------------ | :-------------------------------------------------------------------- | +| `lsk sqs-send ` | sends a given message in sqs to a given queue | + +## Examples + +![staging](sqs-send-result.png) diff --git a/plugins/localstack/localstack.plugin.zsh b/plugins/localstack/localstack.plugin.zsh new file mode 100644 index 000000000..080b14a54 --- /dev/null +++ b/plugins/localstack/localstack.plugin.zsh @@ -0,0 +1,37 @@ +# CLI support for LOCALSTACK interaction +# +# See README.md for details +lsk() { + case $1 in + sqs-send) + shift + sqs-send "$@" + ;; + *) + echo "Command not found: $1" + return 1 + ;; + esac +} + +# Send SQS function +# +# This function sends a given message in sqs to a given queue, when used Localstack +# +# Use: +# sqs-send +# +# Parameters +# A given queue +# A content of message em json archive +# +# Example +# sqs-send user user.json +sqs-send(){ + if [ -z "$1" ]; then + echo "Use: sqs-send " + return 1 + fi + + curl -X POST "http://localhost:4566/000000000000/$1" -d "Action=SendMessage" -d "MessageBody=$(cat $2)" +} \ No newline at end of file diff --git a/plugins/localstack/sqs-send-result.png b/plugins/localstack/sqs-send-result.png new file mode 100644 index 000000000..69eb2a640 Binary files /dev/null and b/plugins/localstack/sqs-send-result.png differ