3
5

More than 5 years have passed since last update.

bashで通知(slack)、ドキュメント(DocBase)、保管(aws s3)の三種の神器

Posted at

bash は便利です。

  • 思いついたらすぐ書ける(Linuxならね)
  • 間違えても対した影響無い(テキスト吐くくらいでしょ)
  • 実行も思いのまま(手動も自動も思いのまま)

いま流行りのツールにも連携できちゃう

slack

「slack投稿用関数」の以下の4つを書き換えて使ってください。

書き換え箇所 説明
"your_slack_incoming_webhook_url" slackのincoming webhook URL https://slack.com/services/new/incoming-webhook から取得
"your_channel" 通知したいslackチャンネル #notification
"your_bot_name" 通知させたいbot名 bash-robo
":your_icon:" 通知させたいbotアイコン :robot:
slack投稿用関数
function post2slack() {
  WEBHOOKURL="your_slack_incoming_webhook_url"
  CHANNEL="your_channel"
  BOTNAME="your_bot_name"
  FACEICON=":your_icon:"
  curl -s -S -X POST --data-urlencode "payload={ \
    \"channel\": \"${CHANNEL}\", \
    \"username\": \"${BOTNAME}\", \
    \"icon_emoji\": \"${FACEICON}\", \
    \"text\": \"$1\" \
  }" ${WEBHOOKURL} >/dev/null
}

呼び出すときに引数に通知したいメッセージを渡します。

呼び出し
post2slack "[通知] 通知したいステータス"

DocBase

「docbase投稿用関数」の以下を書き換えて使ってください。
DocBaseは投稿後のURLのpost番号をAPI用URIに設定することでwebhook URLとして使えます。

書き換え箇所 説明
"your_docbase_token" DocBaseのAPIトークン 個人設定の基本設定にあるAPIトークン
"your_docbase_webhook_url" DocBaseに投稿済みのURL https://api.docbase.io/teams/your_team/posts/post_number
docbase投稿用関数
DOCBASE_TOKEN="your_docbase_token"

function post2docbase() {
  WEBHOOKURL="your_docbase_webhook_url"
  echo $1
  curl -s -S -H 'X-DocBaseToken: '${DOCBASE_TOKEN} -X PATCH -d @$1 ${WEBHOOKURL}
}

呼び出すときに引数にドキュメント化したいテキストファイルを渡します。
テキストの中身はMarkdown形式で大丈夫です。

呼び出し
post2docbase "/home/your_path/your_message.txt"

aws s3

awscliをインストールしておく必要があります。

aws configureでaws_access_key_id、aws_secret_access_keyなど適宜設定します。

詳しくは以下で。
http://qiita.com/seyself/items/43426f57c50021ea55f8

aws_s3保管用関数
function post2s3() {
  FILENAME=$1
  BUCKETNAME=$2
  aws s3 cp $FILENAME $BUCKETNAME
}
呼び出し
post2s3 your_path/your_log.log s3://your_s3_bucket/your_s3_folder/

以上

3
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
5