Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e37e5f7d09 | ||
|
|
7f1191bf59 |
@@ -1,7 +1,7 @@
|
|||||||
PATH
|
PATH
|
||||||
remote: .
|
remote: .
|
||||||
specs:
|
specs:
|
||||||
mrsk (0.7.1)
|
mrsk (0.7.2)
|
||||||
activesupport (>= 7.0)
|
activesupport (>= 7.0)
|
||||||
dotenv (~> 2.8)
|
dotenv (~> 2.8)
|
||||||
sshkit (~> 1.21)
|
sshkit (~> 1.21)
|
||||||
|
|||||||
@@ -348,7 +348,7 @@ If you need separate env variables for different destinations, you can set them
|
|||||||
|
|
||||||
### Using audit broadcasts
|
### Using audit broadcasts
|
||||||
|
|
||||||
If you'd like to broadcast audits of deploys, rollbacks, etc to a chatroom or elsewhere, you can configure the `audit_broadcast_cmd` setting with the path to a bin file that reads the audit line from STDIN, and then does whatever with it:
|
If you'd like to broadcast audits of deploys, rollbacks, etc to a chatroom or elsewhere, you can configure the `audit_broadcast_cmd` setting with the path to a bin file that will be passed the audit line as the first argument:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
audit_broadcast_cmd:
|
audit_broadcast_cmd:
|
||||||
@@ -359,14 +359,13 @@ The broadcast command could look something like:
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
read
|
curl -q -d content="[My App] ${1}" https://3.basecamp.com/XXXXX/integrations/XXXXX/buckets/XXXXX/chats/XXXXX/lines
|
||||||
curl -q -d content="[My app] ${REPLY}" https://3.basecamp.com/XXXXX/integrations/XXXXX/buckets/XXXXX/chats/XXXXX/lines
|
|
||||||
```
|
```
|
||||||
|
|
||||||
That'll post a line like follows to a preconfigured chatbot in Basecamp:
|
That'll post a line like follows to a preconfigured chatbot in Basecamp:
|
||||||
|
|
||||||
```
|
```
|
||||||
[My App] [2023-02-18 11:29:52] [dhh] Rolled back to version d264c4e92470ad1bd18590f04466787262f605de
|
[My App] [dhh] Rolled back to version d264c4e92470ad1bd18590f04466787262f605de
|
||||||
```
|
```
|
||||||
|
|
||||||
### Using custom healthcheck path or port
|
### Using custom healthcheck path or port
|
||||||
|
|||||||
@@ -11,9 +11,7 @@ class Mrsk::Commands::Auditor < Mrsk::Commands::Base
|
|||||||
# Runs locally
|
# Runs locally
|
||||||
def broadcast(line)
|
def broadcast(line)
|
||||||
if broadcast_cmd = config.audit_broadcast_cmd
|
if broadcast_cmd = config.audit_broadcast_cmd
|
||||||
pipe \
|
[ broadcast_cmd, tagged_broadcast_line(line) ]
|
||||||
[ :echo, tagged_broadcast_line(line) ],
|
|
||||||
broadcast_cmd
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
module Mrsk
|
module Mrsk
|
||||||
VERSION = "0.7.1"
|
VERSION = "0.7.2"
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ class CommandsAuditorTest < ActiveSupport::TestCase
|
|||||||
|
|
||||||
test "broadcast" do
|
test "broadcast" do
|
||||||
assert_match \
|
assert_match \
|
||||||
/echo '.* app removed container' \| bin\/audit_broadcast/,
|
/bin\/audit_broadcast '\[.*\] app removed container'/,
|
||||||
new_command.broadcast("app removed container").join(" ")
|
new_command.broadcast("app removed container").join(" ")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user