Python でコメント付きYAMLを扱う時には ruamel.yaml が便利だった

資料

背景

とある yamlで書かれたconfigファイル群(数百ファイル)を一括で変更したいことがあった。
sedで変更するには少し難しかったので、パースしてから条件判定して、書き換えたい。

  • コメントは消したくない
  • ブロックスタイルのままにしたい
  • diff を最小限にしたい (細かい中身を知らないので ...
more ...

CloudFormation の不満点

以下では「手作業で」というのは、「CloudFormation管理外で」という意味で使う。

要点

  • CloudFormation は、リソースが何かの理由で手作業で変更されていた場合に安全に操作できない
  • Drift 検出は誤検出が多すぎて使いづらい
  • Change Set は動いている状態との差分を見ていないので、信用できない

経緯

CloudFormation ...

more ...

さくらインターネットを退職しました

Date

本日最終出社日です。

さくらインターネットでやったこと

さくらインターネットではIoT向けのサービスの開発、チームのリーダーをやっていました。
動き方としては、エンジニアリング100%というよりは、企画やチームマネジメントの割合が多かったように思います。
チームに参加したときにはリーダーではなかったのですが、サービスに必要そうなことをやっていたら、いつの間にかリーダーをやる感じになっていた感じです。

簡単なところでいうと、例えばwebページの閲覧数がモニタリングされていなかったり、サービス上のビジネスとして重要な指標が計測できていなかったりしたので、ダッシュボードを作ったり ...

more ...

DebianでLuaJITTeXを使いたい

そろそろLuaTex使ってみたいなと思ったところ、LuaJITTeXの方が早い場合があるということで、試してみようと思った。

参考

未解決の問題

  • /var/lib/texmf/fmtutil.cnf-TEXLIVEDIST ...
more ...

Debian でログインシェルをzshにしている人が snappy を使う場合の注意

Snappy について

Canonical が主導しているパッケージシステムで、Universal Linux Package と銘打つように、ポータブルなパッケージングができそうな感じ。
ポータビリティを上げるために、dockerみたいな感じで ...

more ...


Google Cloud Pub/Sub をGolangから使おうとしてハマったことまとめ

Date Tags GCP / golang

概要

Google Pub/SubGoのSDK から使おうとしていました。
やっているといくつか詰まったので、メモしておきます。

  1. サービスアカウントを利用するためにCredentials JSONを指定する
  2. サブスクリプションの Pub/Sub ...
more ...

さくらのクラウドでN百台を管理するためにterraformとansibleを使っている話



Ansible でバージョンチェックする

やりたいこと

サーバー管理には ansible を使っていますが、apt で入れているパッケージに対して、以下をやりたい状況がありました。
- インストールされていなかったらインストール
- あるバージョン未満だったらアップデート

pipやgemといった言語のパッケージマネージャと違って、apt ではバージョンの制約を書くことが面倒です。
いい感じに playbook の中でバージョン比較をして、インストール/アップデートすべきかを判定したいと考えました。

結論

  • バージョン比較には ...
more ...