CLOVER🍀

That was when it all began.

Terraform

Sonatype Nexus Repository 3へローカルディレクトリーのアーティファクトをデプロイ(deploy:deploy-file)するPythonスクリプトを書く

これは、なにをしたくて書いたもの? 以前、Groovyでこういうスクリプトを書きました。 Nexus 3向けにMavenのローカルリポジトリのファイルをリモートリポジトリにデプロイするスクリプトを書く - CLOVER 最近ではGroovyを使っていないので、こういうのはPyt…

GitLab CI/CDのDocker Executorで、ジョブを実行するシェルを確認する

これは、なにをしたくて書いたもの? GitLab CI/CDのRunnerとしてDocker Executorをよく使うのですが、ジョブのscriptがどのシェルで動作しているのかを知りたいと思いまして。 ドキュメントと実際の動作の2つを確認してみたいと思います。 GitLab CI/CDのDo…

Terraform Provider for Grafanaを使って、GrafanaをTerraformで操作してみる

これは、なにをしたくて書いたもの? 最近OpenTelemetryまわりを扱う時にGrafanaが出てくるのですが、このセットアップを毎回Web UIで操作して行うのが面倒だなと思いまして。 Terraformでなんとかならないかな?と思って見てみたら、Grafana自身がTerraform…

GitLab CI/CDのキャッシュの設定方法を確認する

これは、なにをしたくて書いたもの? GitLab CI/CDのキャッシュについて、雰囲気しか見ていなかったのでちゃんとドキュメントを見ておこうかなと。 GitLab CI/CDのキャッシュ ドキュメントとして見ておくものはこちらですね。 CI/CD YAML syntax reference /…

TerraformのRemote StateをGitLabに保存して、複数のユーザーで操作する

これは、なにをしたくて書いたもの? GitLabにはTerraformのステートを管理する機能があります。 こちらは以前にも使ったことがあるのですが、複数人で操作した時にどういう挙動になるんだっけ?というのを見ていなかったので 試してみることにしました。 結…

Sonatype Nexus 3のDockerレジストリーをDocker Hubのミラーとして使う

これは、なにをしたくて書いたもの? Dockerデーモンの設定に、Docker Hubのミラーが設定できることを知ったので、Sonatype NexusでDockerレジストリーを 作成して使ってみることにしました。 Docker Hubのミラーを設定する Docker Hubのミラー設定に関する…

TerraformやVagrantでbash補完ができるようにする

これは、なにをしたくて書いたもの? TerraformやVagrantのコマンドでbash補完ができることを全然知らなかったので、メモしておこうかなと。 環境 今回の環境はこちら。 $ terraform version Terraform v1.12.2 on linux_amd64 $ vagrant version Installed …

GitLab CI/CDでジョブを実行する条件を設定する

これは、なにをしたくて書いたもの? 前に、GitLab RunnerをGitLabに登録してジョブを動かせるようにしてみました。 Ubuntu Linux 24.04 LTSにGitLab Runnerをインストールして、TerraformでGitLabに登録する - CLOVER 今回は、ジョブを実行する条件を設定し…

TerraformでGitLabのDefault branchとProtected branchesを設定する

これは、なにをしたくて書いたもの? GitLabのDefault branchとProtected branchesを、Terraformで設定してみましょう、ということで。 Default branch Default branchはこちらの話です。 Default branch | GitLab Docs 新しいプロジェクトを作成した時に作…

Ubuntu Linux 24.04 LTSにGitLab Runnerをインストールして、TerraformでGitLabに登録する

これは、なにをしたくて書いたもの? 前に、GitLab Community EditionをUbuntu Linux 24.04 LTSにインストールして、Terraformでリソース定義をしてみました。 Ubuntu Linux 24.04 LTSに、GitLab Community Edition 17をインストールする - CLOVER GitLabの…

GitLabのリソースをTerraformで定義する

これは、なにをしたくて書いたもの? GitLabにはTerraformのProviderがあるようなので、こちらを試してみたいなということで。 gitlab GitLab Provider GitLab Providerのドキュメントはこちら。 gitlab ProviderがサポートするGitLabのバージョンは、直近3…

WildFly 34とKeycloak 26でJakarta SecurityのOpenID Connectを使った認証と認可設定を試す

これは、なにをしたくて書いたもの? 前に、MicroProfile JWT AuthをWildFly 33とKeycloak 25で試してみました。 WildFly 33 × Keycloak 25でMicroProfile JWT Authを試す - CLOVER この時に思ったのですが、Jakarta SecurityでOpenID Connectを扱っており、…

LocalStack × Terraform × AWS SAMでAWS Step Functionsを動かしてみる

これは、なにをしたくて書いたもの? AWS Step Functions Localを使ってAWS Step Functionsをローカルで動かしてみたのですが、AWS Step Functions Localだけではなくて AWS SAMでAWS Lambdaのローカル環境を起動する必要があったり、AWS CLIでステートマシ…

WildFly 33 × Keycloak 25でMicroProfile JWT Authを試す

これは、なにをしたくて書いたもの? MicroProfile JWT Authというものを、1度試しておきたいなということで。 WildFlyとKeycloakを使って試すことにします。 MicroProfile JWT Auth? MicroProfile JWT Authのページはこちら。 eclipse/microprofile-jwt-au…

Emacsにlsp-mode+terraform-lsをインストールする

これは、なにをしたくて書いたもの? Terraformのコードを書く時はIntelliJ IDEAのTerraform and HCL Pluginを使っていたのですが、Emacsに寄せようかなと思いまして。 LSPを使います。 terraform-mode+lsp-mode+terraform-ls EmacsでLSPを使うにはlsp-mod…

Terraform Keycloak ProviderでKeycloakのリソース定義を試す

これは、なにをしたくて書いたもの? KeycloakでRealmやユーザーを定義するのにWeb UIを使えますが、何度も同じことを操作するのはやや面倒ですし、やり方を忘れます。 管理CLIでも操作できますが、できればリソース定義のような形でやれたらと思うものです…

TerraformのProvider Plugin Cacheを試す

これは、なにをしたくて書いたもの? Terraformを使うと、terraform init時に使用するProviderをダウンロードしてくるのですが、これをそれぞれのディレクトリで行っていると 各ルートモジュール配下の.terraformディレクトリのサイズの合計がだんだん無視で…

Terraform 1.7で追加されたモック(Mocks)を試す

これは、なにをしたくて書いたもの? Terraform 1.6でtesting frameworkが追加されたので、以前に試してみました。 Terraform 1.6で追加されたTerraform testing framework(terraform test)を試す - CLOVER そしてTerraform 1.7ではこれにモックが追加され…

Terraform 1.4で追加された、terraform_data resourceを試してみる

これは、なにをしたくて書いたもの? Terraformには、nullというプロバイダーがあります。 null_resource null Providerにはnull_resourceというリソースが含まれており、こちらを使うことで他のリソースの状態変化に合わせてコマンドを 実行させたりできて…

Terraform 1.6で追加されたTerraform testing framework(terraform test)を試す

これは、なにをしたくて書いたもの? Terraform 1.6で、Terraformのtesting framework(terraform testコマンド)が追加されたようなので、試してみようかなと。 Terraform 1.6 adds a test framework for enhanced code validation 今までTerraformのテスト…

Serverless Frameworkの設定にAWS Systems Manager Parameter Storeを使ってみる(LocalStack利用)

これは、なにをしたくて書いたもの? Severless Frameworkのserverless.ymlでAWS Systems Manager Parameter Storeの値を参照できるみたいなので、試してみることに しました。 合わせて、AWS Lambda関数内からAWS Systems Manager Parameter Storeを参照す…

Sonatype Nexus 3をTerraformで操作する

これは、なにをしたくて書いたもの? TerraformのProviderを見ていると、Sonatype Nexus用のProviderがあったのでちょっと試してみたいなと。 Nexus Provider Nexus Provider Sonatype NexusのTerraform Providerです。 Nexus Provider リポジトリーの定義な…

Amazon SQSにメッセージを送受信するアプリケーションをSpring Bootで書いてみる(AWS SDK for Java v2、LocalStack利用)

これは、なにをしたくて書いたもの? 前に、Amazon SQS(といってもLocalStack上のものですが)を使ってFIFOキューを試してみました。 LocalStackでAmazon SQSのFIFOキューを試してみる(AWS SDK for Javaを使用) - CLOVER 今回は、常駐アプリケーションと…

ElasticMQのキュー定義をTerraformで行ってみる

これは、なにをしたくて書いたもの? ElasticMQを使っていきたいと思うのですが、リソース定義をTerraformで行えないかなと思いまして。 結果を見ると、できるにはできるのですがちょっと難ありです。 ElasticMQ ElasticMQは、Amazon SQS互換のインターフェ…

Serverless Express+TypeScriptを使って、LocalStackにAmazon API Gateway+AWS Lambdaの環境を構成してみる

これは、なにをしたくて書いたもの? AWS Lambdaで使える、フレームワークをちょっと試してみたいなと思いまして。 Serverless Expressというものがあるみたいなので、ちょっと試してみることにしました。 Serverless Express Serverless ExpressのGitHubリ…

Terraformで、LocalStackにAmazon API Gateway+AWS Lambdaの環境を構成してみる

これは、なにをしたくて書いたもの? 以前に、LocalStackでAmazon API Gateway+AWS Lambdaを動かしてみるエントリを書きました。 LocalStackでAmazon API Gateway+AWS Lambdaを動かしてみる - CLOVER 今回は、こちらをTerraformで実現できないかなと思いま…

Terraform、Vagrant、ConsulなどのHashiCorp製品をLinuxのパッケージマネージャーでインストールする

これは、なにをしたくて書いたもの? 自分はTerraformやVagrantなど、HashiCorp製品をそれなりに使っているのですが、いつもzipなりdebなりで インストールしていました。 ですが、最近Terraformのドキュメントにaptやyumリポジトリに関するドキュメントが増…

TerratestでTerraformのテストを書いてみる

これは、なにをしたくて書いたもの? Terraformに対するテストコードを書くのに、Terratestというものが使えるというようなので。 こちらを試してみようかな、と。 Terratest Terratestとは、インフラストラクチャーをテストするためのパターン、ヘルパー関…

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

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

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

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