なつねこメモ

主にプログラミング関連のメモ帳 ♪(✿╹ヮ╹)ノ 書いてあるコードは自己責任でご自由にどうぞ。記事本文の無断転載は禁止です。

2024-01-01から1年間の記事一覧

PowerShell で出力を無に葬り去りたい

PowerShell を使っているとき、例えば New-Item をしたときなど、別に必要ないのに丁寧な出力結果をしてくれることがある。 $ New-Item -ItemType Directory -Path ./dir Directory: C:\Users\natsuneko\dir Mode LastWriteTime Length Name ---- ----------…

Kubernetes で Pod から外部の名前解決ができない

k8s

なぜか Pod 内部から外部、つまりはインターネットへの名前解決が一切できなくなって困っていたのでメモ。 解決方法としては、 Pod を再起動すれば良かった。 $ kubectl -n kube-system rollout restart deployment coredns 参考: dns - Kubernetes: Pods Ca…

Tailscale を使っている状態で k3s クラスタを構築したい

k8s

k3s という軽量 Kubernetes があります。 これを Oracle Cloud 上にある、 Tailscale で接続している Compute Instance に構築しようとしていて、ハマってしまったので備忘録。 前提: Tailscale k3s ドキュメント通りに行くなら、マスターノードとなるイン…

Rust でバイト配列から数値に変換したい

[0x12, 0x34, 0x56, 0x78] みたいなバイト配列から数値へ変換したいケースがある。 その時、読み取り対象によってはビッグエンディアンだったりリトルエンディアンだったりするけど、自分で考えると面倒なので、それを良い感じにする方法。 といっても Rust …

Roslyn の IMethodSymbol で拡張メソッドを扱いたい

C# / VB.NET のコンパイラーである Roslyn はライブラリとして扱うこともでき、コード解析などを行うことができる。 その中でメソッドについての情報が格納されるのが IMethodSymbol だが、以下のような拡張メソッドの場合は、拡張メソッドそのものでは無く…

GitHub Actions の Problem Matcher でデフォルトの Severity を Warning にしたい

GitHub Actions には Problem Matcher といって、stdout やファイルなどに出力されたメッセージを Pull Request などで表示するための機能があります。 こういうの 多くの場合、エラーメッセージと一緒に Severity といって、このメッセージは警告なのかエラ…

AWS Route 53 で256文字以上の TXT レコードを設定したいときは

AWS

DNS の仕様として、 TXT レコードには単一の文字列として 255 文字が最大となっています。 AWS の Route 53 もその仕様に従っているんですが、 DKIM キーなどを設定する際、 256 文字以上になるケースがあるので、値を分割して設定することで、256 文字以上…

The inferred type of 'X' cannot be named without a reference to 'Y'. This is likely not portable. A type annotation is necessary.

pnpm 使って特定の tsconfig.json (Vite のデフォルトの tsconfig.json など) を参照した状態で tsc を走らせると、型エラーが出ることがある。 下記は、その例: The inferred type of 'default' cannot be named without a reference to '.pnpm/vite@5.0.1…

.NET MAUI Blazor Hybrid アプリで Tailwind CSS を使いたい

.NET MAUI Blazor Hybrid アプリというものがあります。 これは、 .NET でクロスプラットフォームなアプリを作成するためのフレームワークで、 Xamarin.Forms の後継です。 同様に、 ASP.NET Core Blazor というものがあり、これは .NET と C# を利用して、 …

dotnet build コマンドで特定のプロジェクトだけビルドから除外したい

例えば GitHub Actions などで定期的にビルドを行っている際、大部分は net8.0 だが特定のプロジェクトだけは net8.0-windows を指定している、などの理由で、ビルドから除外したいケースがあります。 そのとき、 Microsoft Learn では該当プロジェクトを除…

Traefik で Let's Encrypt の DNS チャレンジを Cloudflare でしたい

Traefik というクラウドネイティブ時代に合わせた良い感じのリバースプロキシーを使う機会があって、その際 Let's Encrypt での証明書生成もこいつだけでできるとのことだったので、やり方のメモ。 こういった docker-compose.yml (関係ない部分は略) があっ…

CI 上の Git 操作で差分があるときだけcommit したい

Git

GitHub Actions などで、ファイルを定期的に自動生成して、 commit & push する場面がちらほらあると思います。 そのとき、適当な外部の Action を使っても良いですが、そこまででもないな......というときのためのメモ。 自動生成して commit & push する場…

Terraform の Cloudflare Provider で CAA レコードを作成したい

Terraform で Cloudflare の DNS 設定を管理していたけど、微妙に詰まったのでメモ。 Terraform の Cloudflare Provider で CAA レコードを追加しようと思って調べてみると、以下のように出てくる。 Creation of CAA records · Issue #821 · cloudflare/terr…

Google Chrome 拡張機能 / Firefox アドオン作成ボイラープレート 2024

この記事ははてなエンジニア Advent Calendar 2023 の 12 月 37 日......もとい 2024 年 1 月 6 日の記事です。 みなさんは Google Chrome 拡張機能や Firefox のアドオンは書いたことありますか?わたしは 2 年に 1 回くらい、なぜか書くタイミングがありま…