API をシナリオベースでテストできる StepCI を試してみた
これは、豆蔵デベロッパーサイトアドベントカレンダー2022第22日目の記事です。 概要 # ここ数年、マイクロサービスの開発に携わっています。 そんな中で、イテレーティブにマイクロサービスの開発を続け、安定してリリースを続けるためにはAPI間のテストが重要であると実感しています。 これまでも、さまざまな方法を試してきましたが、たまたま目にしたStepCIが使いやすそうだったので、使用感を書いていきます...
記事を読むAWS上に継続的デリバリ環境を構築してみた 第1回:VPC作成~Apacheインストール
これは、豆蔵デベロッパーサイトアドベントカレンダー2022第19日目の記事です。 私は今入社2年目で、主にアプリケーション開発に携わってきました。 AWSやCI/CDについては、概要は知っていても自分ではほとんど触ったことのない分野でした。 しかし、その知識はアプリケーション開発をする上でも必要であると感じ、実際に簡単な継続的デリバリ環境を構築したので、構築した環境の構成と手順を紹介します。 継続的デリバリ環境は、開発したプログラムを利用環境へリリースする作業を自動化できます...
記事を読むSlack の GitHub インテグレーションで GitHub Actions ワークフローのイベントを通知可能に
Slack の GitHub インテグレーションを使えば、PR(Pull Request) や issue のオープンや更新などのイベントを通知できます。PR に Slack からコメントすることも可能です。 GitHub + Slack 先日、GitHub Actions ワークフローのイベントも通知できるようになったことが Changelog に流れていました...
記事を読むGitHub Actions ワークフローでリテラルの AWS アカウント ID を使用しないためのヒント
庄司です。 GitHub Actions で AWS にアクセスする場合 GitHub の OIDC プロバイダから発行される ID Token を AWS の IAM 外部プロバイダとして使用できます。 これにより、AWS_ACCESS_KEY_ID や AWS_SECRET_ACCESS_KEY のような永続的なクレデンシャルを設定する必要がなくなり、誤って公開されるリスクが大きく減少しました...
記事を読むGo で CI/CD パイプラインを書ける Dagger Go SDK
4月に「話題の CI/CD ツール Dagger を体験してみる」という記事で、コンテナベースのポータブルな CI/CD ツール Dagger を紹介しました。YAML より少しリッチな CUE 言語(cuelang) で記述し、コンテナ環境で実行するため CI 環境だけでなく手元でも動作確認できるユニークなツールでした。 先日、Dagger から Go 言語による SDK が公開されました。Go でパイプラインを記述できます...
記事を読むカスタムワークフローで GitHub Pages デプロイが可能に
GitHub Pages は専用のブランチか docs などのターゲットディレクトリを指定して公開する方式です。したがって、SSG(Static Site Generator) を使う場合、ソースコードだけでなくビルド成果物もリポジトリ管理する必要がありました。7月に GitHub Actions ワークフローによるデプロイがベータ版として利用可能になりました...
記事を読む自動打鍵テスト - 画面操作・検証だけでなくテストコード自体も自動生成してしまう真の自動化
イントロ # この記事では、豆蔵が支援するプロジェクトでのWebアプリに関するテスト自動化の事例を紹介します。 特にそのプロジェクト特有という内容ではなく、どのプロジェクトでも共通するポイントについて具体例を交えてまとめました...
記事を読むGitHub Actions 再利用可能ワークフローでネスト呼び出しと Matrix strategy が解禁
以前の「GitHub Actions - 再利用可能ワークフローを使う」の記事時点では、以下のような制約がありました...
記事を読むソフトウェアサプライチェーンセキュリティのための GitHub Actions ワークフロー
昨今 OSS をソフトウェア開発で使用するのは当たり前になっているため、依存しているアップストリームの OSS の脆弱性によりアプリケーションが侵害されるリスクは常にあります。直接使用している OSS のみならず間接的に依存しているものもあります。我々開発者は、Maven / NPM などの公式パッケージレジストリを経由して OSS コードに由来するバイナリやコンポーネントを取得して使用します...
記事を読むGitHub Actions のセルフホストランナーを M1 Mac で動かす
GitHub Actions では、GitHub 側で Linux / Mac / Windows のランナーが実行のたびにプロビジョニングされ使用されます。通常はこれで十分ですが、オンプレの PC や AWS の EC2 インスタンスなどに自前のランナーを用意して実行することもできます。 About self-hosted runners - GitHub Docs この記事では、M1 Mac をセルフホストランナーとしてセットアップしワークフローを実行する手順を紹介します...
記事を読む