About
- YAMAHA ネットワーク機器のファームウェア更新情報を Slack チャンネルに通知する Lambda 関数です
- 更新情報は有志の方が開設されている https://rtxpro.com/?feed=rss2 を利用させて頂きました
Workflow
https://gist.github.com/inokappa/711c9bc07ac27ab9026746d0233a3d70
Required
Deploy
Install serverless plugin
$ sls plugin install -n serverless-python-requirements
Slack Webhook URL
to ssm parameter store
Set $ 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
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