CLOVER🍀

That was when it all began.

Goでのビルド時に使う、-ldflagsフラグと-Xについて調べてみた(go tool link)

Go

これは、なにをしたくて書いたもの? 記事や書籍などで、以下のような記述を見かけます。 $ go build -ldflags '-X main.xxxx=....' この-ldflagsと-Xの指定でプログラム内の値を変えているようなのですが、「変えられます」という情報以外のことを あまり見…

Quarkusでのテストを書いてみる

これは、なにをしたくて書いたもの? Quarkusでのテストのやり方、書き方を覚えてみようかなということで。 こちらのガイドに沿って、見ていきます。 Quarkus - Testing Your Application 環境 今回の環境は、こちらです。 $ java --version openjdk 11.0.10…

暗号化アルゴリズムやSSL/TLSなどの、セキュリティガイドラインに関する資料

どういうところを見るのがよいのかな、と時々思うので。 やっぱり、NISTなんでしょうか。 Cryptographic Standards and Guidelines | CSRC SP 800-52 Rev. 2, Guidelines for TLS Implementations | CSRC 英語…と思って眺めていたのですが、IPAに翻訳文書も…

Perlの定義済み変数について

Perlを使っていて、$_や$.といった定義済みの変数にどんなのがあるかいつも忘れるので。 どこを見たらまとまってるんだろう?と思ったのですが、よくよく考えるとPerlのWebサイトを見たらよかったですね…。 Perl predefined variables - Perldoc Browser per…

Goのxerrorsパッケージを試す

Go

これは、なにをしたくて書いたもの? Goのエラー処理に関する情報を見ているとxerrorsというものがよく出てくるので、1度見ておこうかなと思いまして。 xerrorsパッケージ xerrorsパッケージは、Goのエラーハンドリングのためのパッケージです。 xerrors · p…

Terragruntを使って、複数のTerraformモジュールの操作を1回のコマンド実行で行う

これは、なにをしたくて書いたもの? Terragruntを学ぶシリーズ。今回でひと区切りの予定です。 最後は、Terragruntを使って複数のTerraformモジュールの操作を1回のコマンド実行で行ってみます。 Terragruntで、Terraformモジュールの操作を1度に行う Terra…

Terragruntを使って、環境ごとのTerraformの構成ファイルを削減する

これは、なにをしたくて書いたもの? Terragruntを学ぶシリーズ。 今回は、Terragruntを使って環境ごとに作るTerraformの構成ファイルを減らしてみます。 Terragruntで、環境ごとの構成ファイルを減らす Terraformを使って、複数の環境を構築、管理するのに…

GitLabのデフォルトのユーザー名は?

GitLabをOmnibusインストーラーでインストールし、最初にGitLabにブラウザでアクセスするとパスワードの変更を求められます。 このユーザーが「誰?」という話。特に名前も表示されていないのでわからないし、なにより忘れるのでメモしておこうかなと。 正体…

複数バージョンのGoをインストールする

Go

これは、なにをしたくて書いたもの? Goはapt(+PPA)でインストールしているのですが、他のバージョンが使いたくなる時もあったりします。 Ubuntu · golang/go Wiki · GitHub こういう時はどうしたらいいのかな?と思ったのですが、Go自体が複数バージョン…

Terragruntを使って、Terraform実行時の引数やオプション指定をまとめてみる

これは、なにをしたくて書いたもの? Terragruntを学ぶシリーズ。 次は、Terragruntを使ってTerraform実行時の引数やオプション指定をまとめてみます。 Terragruntで、Terraform実行時の引数やオプション指定をまとめる Terraformを実行する時に、引数やオプ…

Terragruntを使って、TerraformのProvider定義をまとめてみる

これは、なにをしたくて書いたもの? 前に、Terragruntを使ってTerraform Backendの定義をまとめてみました。 TerragruntをUbuntu Linux 20.04 LTSにインストールして、Terraform Backendの定義をまとめてみる - CLOVER 今度は、Providerの定義をまとめてみ…

現在保持しているVagrantのBoxを一括でアップデートしたい

vagrant box updateに--boxオプションを指定することで、カレントディレクトリにVagrantfileがない状態でもBoxを アップデートできることを知りませんでした。 これとvagrant listをうまく使えば、現在保持しているBoxを一括でアップデートできそうですね。 …

TerragruntをUbuntu Linux 20.04 LTSにインストールして、Terraform Backendの定義をまとめてみる

これは、なにをしたくて書いたもの? Terraformを使うの時にTerragrantというラッパーを使うと便利、みたいな話があるようなので少し試してみようかなと。 Terragrunt | Terraform wrapper Terragrunt TerragruntとはGruntworkが作成しているTerraformのラッ…

Goアプリケーションをデバッグしたい

Go

これは、なにをしたくて書いたもの? Goで書かれたアプリケーションをデバッグする方法を、押さえておきたいな、と思いまして。 Goアプリケーションのデバッグ Goのドキュメントでデバッグについて書かれているのは、こちらのページです。 Debugging Go Code…

ApacheのMPMを設定を確認する

これは、なにをしたくて書いたもの? ApacheのMPMの設定…接続数やプロセス数、スレッド数まわりの設定をちょいちょい見る割には覚えていられないので、 1度ちゃんと見ておこうかなということで。 環境 今回の環境は、こちら。 $ lsb_release -a No LSB modul…

makeを学んでみる

これは、なにをしたくて書いたもの? Goでのビルドツールは、makeを使うことが多いと聞いたので。 いくつか、Goで書かれた有名なOSSを見てみると、確かにMakefileが置かれています。 https://github.com/prometheus/prometheus/blob/v2.24.1/Makefile https:…

Fluentdで複数行のログを読む

これは、なにをしたくて書いたもの? 以前、Fluent Bitで複数行(Multiline)のログファイルを読むエントリを書きました。 Fluent Bitで、複数行のログファイルを読む - CLOVER 今回は、これをFluentdで行ってみます。 FluentdとMultiline Fluentdを使って複…

Linuxのカーネルパラメーターを表示・変更する

これは、なにをしたくて書いたもの? Linuxのカーネルパラメーターを表示したり変更したりするやり方を、いつも忘れるのでいい加減にメモしておこうかなと。 環境 今回の確認環境は、こちらです。 $ lsb_release -a No LSB modules are available. Distribut…

Goのエラーに関するAPIを学ぶ

Go

これは、なにをしたくて書いたもの? Goの本を読んだり、サンプルコードを見ていたりすると、こういうのを目にするのですが。 file, err = os.Create(filename) if err == nil { return } nilかどうかの判定はさておき…。 エラーの中身や種類に踏み込みたい…

Goで定数や関数定義などをパッケージ外からアクセスしたい(エクスポートしたい)場合、名前を大文字で始める必要があるという話

Go

これは、なにをしたくて書いたもの? プログラムを書く時に、Goのソースコードやライブラリのソースコードを見つつ、「これ使ったらいいのかな?」と使おうとすると アクセスできないこととかがあり。 そういえば、Goのスコープ的な話、知らないですね。特に…

Goで変数の型の名前を取得したい

Go

これは、なにをしたくて書いたもの? Goでプログラムを書いていて、「この変数の型はなに?」みたいな時にどうやって型の情報を取得するんでしたっけ?ということで。 今の動機は、デバッグ時とかに型の名前が知りたい、くらいです。 fmtパッケージの%T書式…

Ubuntu Linux 20.04 LTS/18.04 LTSにWineをインストールする

これは、なにをしたくて書いたもの? Linux環境でWindowsアプリケーションを動かせるソフトウェアとして、Wineというものがあるそうです。 今回、このWineをUbuntu Linux 20.04 LTS、18.04 LTSにインストールしてみます。 WineHQ - Run Windows applications…

DockerコンテナをXクライアントにして、ホスト側のXサーバーで描画を行う

これは、なにをしたくて書いたもの? Dockerコンテナ内で動かしたアプリケーションの描画内容を、ホスト側に持ってこれないかな?と思いまして。 どうやらできそうです。 Dockerを用いたGUIアプリケーションの実行 | POSTD 試してみましょう。 環境 今回の環…

SSHポートフォワーディングで、リモートのXをローカルに転送する

X Window Systemに詳しくないのですが、リモートのXをローカルに転送するにはどうしたらいいのかな?と思いまして。 SSHポートフォワーディングで可能なようです。 リモートのSSHサーバーは、X11Forwardingがyesになっている必要があります。 /etc/ssh/sshd_…

Goプロジェクトで使っているモジュールのライセンスを調べたり、集めたりしたい

Go

これは、なにをしたくて書いたもの? こちらのエントリで、Goで書いたアプリケーションに含まれるモジュールなどがわかるだろうか?という確認をしました。 go tool nmコマンドで、Goの実行可能ファイルの定義やシンボルを表示する - CLOVER 次は、使用して…

go tool nmコマンドで、Goの実行可能ファイルの定義やシンボルを表示する

Go

これは、なにをしたくて書いたもの? Goで作ったアプリケーションに含まれるライブラリとかの情報ってわかるのかな?と思って調べてみたのですが、コマンドが あるようです。 go tool nmというコマンドが近い感じですね。 nm - The Go Programming Language …

JavaでAES(ECB/CBC)を使う

これは、なにをしたくて書いたもの? こちらのエントリを書いていて、「JavaでAESを使う時のコードを全然覚えてないな」と思いまして。 MessageDigestに"SHA"とか、Cipherに"AES"とだけ指定した場合、どうなるの? - CLOVER メモしておこうかな、と。 環境 …

Ubuntu Linuxでapt upgradeで保留されたパッケージがあった場合に、アップデートするには?

これは、なにをしたくて書いたもの? Ubuntu Linux 18.04 LTSにインストールしているDocker CEがapt upgradeでアップデートされないという状態になっていたので、 これをどうやってアップデートしたらよいのだろう?と。 結論から言うと、明示的にapt instal…

Go標準のテンプレートエンジンtext/templateを使ってみる

Go

これは、なにをしたくて書いたもの? Goのテンプレートエンジンを調べてみようかなと思ったのですが、標準ライブラリにあるようなので、こちらを試して みることにしました。 Goの標準ライブラリにあるテンプレートエンジン text/templateと、html/template…

MessageDigestに"SHA"とか、Cipherに"AES"とだけ指定した場合、どうなるの?

これは、なにをしたくて書いたもの? このあたりを見ていて https://github.com/openjdk/jdk11u/blob/jdk-11.0.9.1%2B1/src/java.base/share/classes/sun/security/provider/SecureRandom.java#L96-L116 digest = MessageDigest.getInstance("SHA"); Message…