[Dd]enzow(ill)? with DB and Python

DBとか資格とかPythonとかの話をつらつらと

AWS WorkMail をboto3でユーザー登録する

AWS WorkMail、便利ですね。AWSが提供しているメールサービスで、独自ドメインでメールの送受信ができます。自社のサービスでは、お客様ごとにメールアドレスを発行しており、その際にWorkMailを使っています。

現在は契約処理の一環で担当者がWorkMailにアカウントを作成していますが、これを自動化するための調査をしました。当たり前ですが、使うのはboto3です。よっぽどマニアックな処理でなければ、AWSコンソールからできる作業はboto3でできますね。

続きを読む

boto3でAWSのRDSインスタンスを再作成する

2018年もはじまって1週間、そろそろ社会復帰しないといけないですね。昨年末にRDSやらboto3やら触っていたのでそこら辺まとめておきます。

解決すべき課題

  • RDSはいずれもMySQL
  • 本番のRDSがある(本番RDS)
  • 開発用環境のRDSがある(開発RDS)
  • 開発RDSのデータは本番RDSから不定期に同期させている
  • 同期にはmysqldumpしたデータを流し込む方法を使用している

結構データ量があるので、mysqldumpでの取得と流し込みがかなり時間がかかっており、あまり気軽にデータの同期ができていませんでした。これをどうしたかという話です。

続きを読む

Djangoのモデルであとからユニーク + NOT NULLな列を追加する

Djangoはモデルの内容が変更されても、makemigrationsしてmigrateすればDBにモデルの変更を反映できるので楽でいいですね。しかし、ちょっとユニーク制約をもったカラムを追加しようとしたら簡単にはいかないケースに遭遇したのでメモを残しておきます。

続きを読む

DjangoのあるModelを参照しているModelの一覧を取得する

ここのところDjangoを触り続けていてなかなか楽しいです。触っている中であるModelのオブジェクトを1つに統合する処理を書かなければいけなくなりました。そんなときに影響を受けるModelの洗い出しをどうするか調べたので残しておきます。

続きを読む

Raspberry Pi でトイレの使用状況をSlackに通知してみた(IOTT:Internet Of The Toilet)

Raspberry Pi と照度センサを使って、トイレの使用状況をSlackからわかるようにしてみました。 ※全部会社で買ってもらった(*´ω`*)

f:id:denzow:20171216225031p:plain

動機

職場は2フロアあり、下のフロアがオープンスペースになっていおりトイレもここにあります。私は上のフロアで仕事をしていますので、トイレにいくには下のフロアに降りるのですが、トイレが1個しかないので、降りてみたら使用中で仕方なく上に戻るという非生産的な行動が多発していました。

そのため、上のフロアにいてもひと目でトイレの使用状況がわかるようにしたかったのです。

続きを読む