inokappa / yamaha-firmware-notify

YAMAHA ネットワーク機器のファームウェア更新情報を Slack チャンネルに通知する Lambda 関数です

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

yamaha-firmware-notify CI on Push

About

  • YAMAHA ネットワーク機器のファームウェア更新情報を Slack チャンネルに通知する Lambda 関数です
  • 更新情報は有志の方が開設されている https://rtxpro.com/?feed=rss2 を利用させて頂きました

Workflow

sequence dialog

https://gist.github.com/inokappa/711c9bc07ac27ab9026746d0233a3d70

Required

Deploy

Install serverless plugin

$ sls plugin install -n serverless-python-requirements

Set Slack Webhook URL to ssm parameter store

$ pstore -put \
  -name=your-parameter-name \
  -value=https://hooks.slack.com/services/XXXXXXXXX/YYYYYYYYYYY/xxxxxxxxxxxxxxxxxxxxxxxxxxx -secure

Please use pstore command.

Write env-dev.yml

SLACK_CHANNEL: "#your-slack-channel"
SLACK_USERNAME: "YAMAHA Firmware Release Check"
SLACK_ICON_EMOJI: ":police_car:"
FIRMWARE_RELEASE_URL: "https://rtxpro.com/?feed=rss2"
YAMAHA_URL: "http://www.rtpro.yamaha.co.jp/RT/firmware/"
SSM_PARAMETER_NAME: "your-parameter-name"
MACHINES: "RTX1200,WLX402,SWX2210-8G" # Set the name of your Yamaha network device,
DYNAMODB_TABLE: "yamaha-firmware-notify"

Run sls deploy

$ sls deploy --stage=dev

Example

image

Test

Run docker container

$ docker-compose build
$ docker-compose up -d

Set up dependencies

$ docker exec -t -i --rm myservice bash
bash-5.0# pip install -r requirements.txt

or

$ docker-compose exec myservice pip install -r requirements.txt

Run test

bash-5.0# pytest --verbose --disable-warnings test_handler.py

or

$ docker-compose exec myservice pytest --verbose --disable-warnings test_handler.py

About

YAMAHA ネットワーク機器のファームウェア更新情報を Slack チャンネルに通知する Lambda 関数です


Languages

Language:Python 98.1%Language:Dockerfile 1.9%