段階的自動化の鍵、Do-nothingスクリプティング (2019)
(blog.danslimmon.com)-
段階的自動化の鍵: Do-nothingスクリプティング
- どの運用チームにも、まだ自動化されていない手作業の手順がある。こうした手順は完全になくせるものではなく、特にインフラの変更やユーザーアカウントのプロビジョニングのような手順は大きな負担になりうる。
- たとえば、ユーザーアカウントのプロビジョニング手順には、SSH鍵ペアの生成、Gitへの公開鍵のコミット、ビルドジョブの完了待ち、従業員ディレクトリでのメールアドレス検索、1Passwordを使った秘密鍵の送信といった段階が含まれる。
- こうした手順は集中力を必要とするが、面白い問題解決や満足のいく結果をもたらしてはくれない。これを「slog」と呼ぶ。
- 自動化によって、こうした手順をより速く正確に実行できるが、すべての段階を自動化するのは難しいこともある。部分的な自動化では、手順がそれほど楽になるわけではない。
-
Do-nothingスクリプティング
- ほとんどすべての slog は、「do-nothingスクリプト」に変換できる。これは各段階を関数としてカプセル化し、手順の指示をコード化したスクリプトである。
- 例のスクリプトは各段階をユーザーに提示し、手動で完了するまで待機する。
- このスクリプトは、実際には手順のどの段階も実行しない。しかし、次のような価値を提供する:
- 段階の飛ばしを防ぎ、集中を保って手順を完了しやすくする。
- 各段階が関数としてカプセル化されているため、後で自動実行できるコードに置き換えられる。
- 時間の経過とともに有用な段階のライブラリを育て、将来の自動化作業をより効率的にする。
- do-nothingスクリプトは手作業そのものを減らしはしないが、自動化作業の活性化エネルギーを下げることで、時間をかけて労力を減らせるようにする。
まだコメントはありません。