ぶていのログでぶログ

思い出したが吉日

rfコマンド v1.6.0をリリースした / Rubyでかけるワンライナーツール

前回ブログで書いたときはv1.4.0だったのでそこから2つほどバージョンアップした。 意識的にrfコマンドを普段遣いしていて*1気になったところと、jqコマンドのオプションの互換性を意識した変更をした。 github.com *2 github.com 主な変更点 -A オプション…

任意のURLからダウンロードするasdf/rtxプラグイン asdf-simple-download を作った

github.com モチベーション 私は普段ソフトウェアのバージョン管理にrtxを使っている。 大抵のソフトウェアは有志によりプラグインが作られているので rtx plugin add すればインストールすることができる。 しかしながら、プラグインがないソフトウェアも存…

asdf/rtxでFATAL: Found legacy version file 'main.tf' with unsupported required version constraint expressionがでる

結論から書くとasdf-hashicorpに含まれるparse-legacy-fileがrequired_versionパラメータのパースができなくてエラーになっている。 github.com このスクリプトがどのように使われているか正しく理解していないのだが、名前から察するに古いTerraformを使う…

wsshuttleを使ってWindowsとWSLのポートフォワードを行う

Mac環境やLinux環境ではsshuttleを便利に使っていたのだが、Windows/WSL環境になってからはsshuttleがうまく動かずにいた。 正確に書くと、WSLからはポートフォワードできるのだが、Windows側からはポートフォワードできない。 例えばサーバのリモートKVMに…

Canonical MAASでDebian 12 (bookworm)のカスタムイメージを作ってインストールする

Canonical MAAS(以降MAAS)ではUbuntu、RHELとその互換ディストリ、VMware ESXi、Windowsのインストールに対応している。 maas.io 各公式イメージを使ってインストールする以外にも、カスタムイメージを作りそれを使ってインストールすることもできる。カスタ…

Debian 12 (bookworm)にProxmox VE 8をインストールする

ProxmoxVEの公式(?)WikiにはDebian 11へのインストール手順が書いてあるが、Debian 12の手順は今のところなさそうだった。 しかしながら、Debian 11向けの手順を見ながらなんとかインストールできたのでメモしておく。 pve.proxmox.com 手順 以下に全コマン…

kubeadmを使ってUbuntu22.04にkubernetes 1.27.4をデプロイする

自分用のメモ コンテナランタイムを選択する kubeadmでは以下のコンテナランタイムを選択することができる。 Docker containerd cri-o Dockerが手軽そうだが、Docker内蔵のcontainerdをkubeadmが優先的に選択してしまい、かつ、Docker提供のcontainerdではCR…

Canonical MAASの3.4からvirshホストが新規に追加されなくなる?

⚠ MAAS 3.4 Beta3で確認した内容なので今後変更される可能性があります MAAS 3.3にはハードウェア同期スクリプトが一時ファイルを削除しないバグあり、MAAS3.4を使用していたのだがこのバージョンからKVMの項目にVirshがなくなっていることに気がついた。 以…

RubyのYAML.dumpは改行の前にスペースを置くとエスケープされる

RubyのオブジェクトをYAML.dumpしてYAMLの設定ファイルを作るというコードを書いているときに、掲題の挙動に気がついた。 通常、複数行が含まれる文字列をYAML.dumpすると |- を使った表記になる。 $ ruby -ryaml -e 'puts YAML.dump("foo" => "a\nb")' --- …

rfコマンドv1.4.0をリリースした

rfコマンドを普段遣いしていて気になったところをちょくちょく直していて、先程v1.4.0をリリースした。 前回ブログを書いたときはv1.1.0だったので3つほどバージョンアップした。 github.com github.com github.com 以下では、このバージョンアップによる変…

Ubuntu 22.04までのlibyamlだとvalueがないHashのキーをダンプすると空白が入る

root@e5432af20b73:/# ruby -v ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux-gnu] root@e5432af20b73:/# dpkg -l | grep libyaml ii libyaml-0-2:amd64 0.2.2-1build2 amd64 Fast YAML 1.1 parser and emitter library root@e5432af20b73…

rfコマンドv1.1.0をリリースした

github.com rfコマンドのv1.1.0をリリースした。 もう少し機能を追加してからにしようと思ったけど、サクサクリリースしていこう精神でバージョンを上げた。 以下、追加された機能や変更点の説明をする。 バイナリをstripしてファイルサイズを少し減らした c…

Dash/Zealで使えるmruby APIのDocsetを作った

mruby APIのオンラインドキュメントをDocset化した。 DocsetはDashやZealで閲覧できる。 オフラインでmrubyのAPIを参照できるので便利。 なお、私はMacを持っていないのでDashでの動作確認はしていないのであしからず…。 ↓のFeed URLから追加できるはず(Zeal…

rfコマンドv1.0.0をリリースした / Rubyのコードでplain text/JSON/YAMLを整形できるCLIツール

Rubyのコードでplain text/JSON/YAMLを整形できるrfコマンドを作っている。 このrfコマンドのv1.0.0をリリースした。 といいつつも、前回のv0.2.0から大きく機能を増やしたということはなく、バグの除去やテスト環境の構築のみになっている。 だが、v0.3.0、…

CLIツールのテストフレームArubaを使うときのTips

前回の記事でrfというツールを作っていることを書いた。 記事を書いた時点ではテストコードが一切なかった。 さすがに、テストコードがないのは今後開発を続けていくのは不安なのでArubaを使ってテストコードを書いた。 github.com Arubaはあまり使い方を紹…