home-appsをhomeに移行した

直近のブログでも出てきたcorrupt952/home-appsをアーカイブして、corrupt952/homeに移行しました。

github.com

👇

github.com

なぜ移行したのか

元々、自宅用のマシンセットアップように書いていたAnsibleのPlaybookがあり、レポが分散していると管理が面倒だったのでモノレポにしようと思いました。

また公開レポにすることで

  • 秘匿値をコミットしない
  • 適度に抽象化する

あたりを意識せざる負えないので、ちょっとした頭の運動にもなるなと思って公開レポにしました。

後は、誰かに構成を聞かれた時にここ見てって言えるブログ以外のソースが欲しかったこともあり、 公開レポに雑な図を配置しています。

home-appsの内容をhomeに移行する

移行する手順ですが、大まかに以下のような手順で実施しました。

  1. homeレポを作成し、AnsibleのPlaybookをhomeレポにコミットする
  2. home-appsをmanifestsディレクトリ配下に取り込む
  3. manifestsにあるレポ用の設定(renovate.json5など)をレポ直下に移動する

1. homeレポを作成し、AnsibleのPlaybookをhomeレポにコミットする

リポジトリの作成自体は割愛しますが、元々管理していたAnsibleのPlaybookなどをansibleディレクトリに配置してコミットします。

hostsファイルが必要ですが、こちらはコミットせずに別の場所で管理しています。

home-appsをmanifestsディレクトリ配下に取り込む

リンクしているGistを参考にしてmanifestsにhome-appsを取り込みます。

gist.github.com

実際に実行したコマンドは以下の通りです。

git remote add apps git@github.com:corrupt952/home-apps
git fetch apps
git merge -s ours --no-commit --allow-unrelated-histories apps/main
git read-tree --prefix=manifests/ -u apps/main
git commit -m "add: import home-apps"
git remote rm apps
git push origin main --force-with-lease

注意点としてgit mergeをするときには--allow-unrelated-historiesをつけるようにしてください。
このオプションをつけないとマージできません。

manifestsにあるレポ用の設定(renovate.json5など)をレポ直下に移動する

home-appsをmanifestsに取り込んだままだと、不要なファイルやレポ直下に移動したファイルがあるので、それらを処理します。

# 移動
mv manifests/.github .
mv manifests/aqua.yaml .
mv manifests/LICENSE .

# 削除
rm manifests/README.md

また、Argo CDの参照先を変更するためにもマニフェストを変更します。

github.com

これでhomeへの移行は終わりました。

おわりに

homeレポ自体に何を置くのかは悩ましいですが、今のところは 

です。
気が向いたら、他にもオーディオ周りの配線図とかも入れていくかもしれません。