作ったもの
AWSの構成情報をxlsxファイルに書き出すスクリプトです。出力されるファイルのイメージはREADMEの画像を参照ください。勢いでやっつけているので、一部サービスにのみ対応しています。最終的にはLambdaで動かしてs3にExcelを吐き出す実装にしたい。
経緯
@ishikawa84g cloud2excel!
— 前佛 雅人(M.Zembutsu) (@zembutsu) 2015, 10月 31
@ishikawa84g 残念ながら夢の中のお話です…
— 前佛 雅人(M.Zembutsu) (@zembutsu) 2015, 10月 31
@ishikawa84g ごめんなさい…ごめんなさいw
— 前佛 雅人(M.Zembutsu) (@zembutsu) 2015, 10月 31
自分もワクワクしながらcloud2excelを検索しまして、、、無いのであれば、勉強がてら作ってみようということで作ってみました。
実装
aws-sdkを利用してAPIを叩き必要な情報を取得し、その情報をExcel に書き出しているだけです。Excelへの書き出しはguyonroche/exceljsを使いました。
雑感
guyonroche/exceljsを見つけたのが今回の最大の収穫です。配列やオブジェクトの情報を、かなり簡単に表形式でExcelに書き出すことができます。さらに、guyonroche/exceljsは、Excelからの読み込みもできるようなので、Infrastrucrture as Excelが実現できます。Excelでパラメータシートを作り、そこにパラメータを書くとAWS上にインスタンスができる。なんという黒魔術。やりませんけど。。。
また、Node.jsの非同期処理に苦戦しました。async.jsを使っており期待する動作はしているものの、正しい使い方かどうか不安です。Node.js(というかJavascript)を体系的に学びたい。
今後は、issueにもある通り、コードを分割してメンテナンス性を高め、ELBやRDSなどメジャーなサービスに対応しようと思います。仕事の本業はAWSではないので、プライベートで淡々とメンテしていきます。