tech.guitarrapc.cóm

Technical updates

GitHubActions

GitHubのCODEOWNERでレビュアー指定を自動化する

GitHubでPRを作ったときにレビュアーを指定するのが面倒だったので、CODEOWNERでさくっと自動化しましょう。 CODEOWNERとは CODEOWNERの設定 Rulesetsでレビュアー必須と組み合わせる CODEOWNERには通知が来る チームをアサインすると全員に通知が来る Copil…

1PasswordのシークレットをGitHub Actionsで利用する

GitHub Actionsで1Passwordのシークレットを利用するのがとても便利なので、その方法を紹介します。 GitHub Actionsのシークレット管理の難しさ 1PasswordのシークレットをGitHub Actionsで利用する 1password/load-secrets-actionを使えるようにする 1passw…

GitHub Actionsで利用するリモートアクションやワークフローのファイルを触る

GitHub Actionsの良いところといえば、GitHub Actions Marketplaceにあるアクションを利用できることです。また、ワークフローもGitHubを参照して再利用できます。 では、YAMLで定義したリモートアクションやワークフローはいつ、どこにダウンロードされてい…

GitHub ActionsでダウンロードしたActionsのパス

GitHub Actionsが他CIと決定的に違うポイントの1つがカスタムアクションです。他のCIサービスにも類するものはありますが、圧倒的なボリュームと参照しやすさ、作りやすさが他のCIサービスと一線を画しています。1 今回はそんなカスタムアクションの豆知識で…

GitHub Actionsのinputsを環境変数で取れるときと取れないとき

GitHub Actionsには、ワークフローの実行時に渡すパラメータを定義するinputsがあります。このinputsを使うことで外部から変数を受け取ることができます。 今回はinputsで渡した変数を環境変数として受け取れる時と受け取れない時の違いについてです。 input…

GitHub Actionsでスパースチェックアウトを使ってモノレポの一部だけをチェックアウトする

モノレポをCIでビルドするにあたり、最初にして最大の課題がチェックアウトです。先日GitHub Actionsのactions/checkoutでスパースチェックアウトできるようになったので、これを使ってモノレポのチェックアウトを高速化しました。 今後のモノレポチェックア…

GitHub Actionsでモノレポ上の特定パスをチェックアウトスキップしたい

モノレポでリポジトリサイズが大きくチェックアウトに時間がかかって困ることがあります。 今回はこういったときにどうできるのかを考えてみましょう。 概要 GitHub Actions でスパースチェックアウトをする CI におけるチェックアウトの基本 git cloneを高…

GitHub ActionsでREADMEにリポジトリのコードを埋め込みたい

READMEに、リポジトリにおいているコードを埋め込みたい時があります。 そんな時に便利なのが、embedmeです。 https://github.com/zakhenry/embedme 今回は、GitHub Actionsを使ってREADMEにリポジトリのコードを埋め込むことをしたので紹介します。 概要 em…

GitHub Actionsでconfigure-aws-credentialsを使ったOIDCではまったこと

GitHub ActionsのOpenID ConnectorとAWSのOIDC Providerを使うことで、IAM RoleをAssumeできるというのは前回書きました。 https://tech.guitarrapc.com/entry/2021/11/05/025150 構築中によく出るエラーに関しても書いたのですが、いざ実際に使おうとしたら…

GitHub ActionsがOpenId Connectに対応したのでAWS OIDC Providerと連携する

GitHub ActionsでOpenID Connectを経由して各種Cloud Providerの認証を得る機能のがGAしました。 めでたい。 https://github.blog/changelog/2021-10-27-GitHub-actions-secure-cloud-deployments-with-openid-connect/ これにより、aws-actions/configure-a…

GitHub ActionsのローカルComposite Actionで歯がゆいこと

GitHub ActionsのComposite Action (複合ステップアクション) は便利なのですが、制約や歯がゆいことが多く悩ましいです。 では何が難しいと感じているのか、その対処をどうしているのかメモしておきます。 概要 Composite Actions とは Composite Actions …

GitHub Actionsのsetup-dotnetとホストランナーの.NET SDK

GitHub Actionsで .NET Coreビルドを行いたいときに利用するものといえば、setup-dotnetがあります。 https://github.com/actions/setup-dotnet 今回はUbuntu-latestな環境でsetup-dotnetがいる場合と、そうでない場合について考えてみます。 概要 GitHub Ac…

GitHub Actionsで.NET Frameworkプロジェクトをビルドする

Visual Studio拡張のプロジェクトは、今でも .NET Frameworkです。 .NET Frameworkということは、基本的にWindowsでのビルドになります。 今回、AppVeyorでやっていたビルドをGitHub Actionsに移行したのでメモ。 最終的に、次のように .NET Frameworkのビル…

GitHub Actionsことはじめ

GitHub Actions以前調べたのですが、いろいろあって個人プロジェクトでサクッとビルドするのみに使っていました。 今回改めて調べを進めたのでメモ。 幾つかのリポジトリをGitHub Actionsに移行したけど、記事にしようとまとめていたらやった内容以上に調べ…