並び順

ブックマーク数

期間指定

  • から
  • まで

681 - 720 件 / 1260件

新着順 人気順

ciの検索結果681 - 720 件 / 1260件

  • GitHub Actions でテストを並列化して CI 時間を短縮する - Gunosy Tech Blog

    広告技術部の yamayu です。 ホグワーツレガシーが気になっているのですがまだ手を出せていません。 映画はファンタビ以外は全部見ており、原作は 7 巻の上巻まで読んでいるため楽しめそうとは思っています。 さて、弊社ではこれまで CI/CD ツールとして CircleCI をメインに利用していたのですが、最近は GitHub Actions でも同等の機能が提供されるようになりつつあり、また GitHub の他の機能との連携が容易である等の理由から徐々に切り替えていくような動きがあります。 広告技術部で管理しているリポジトリも少しずつ GitHub Actions への移行を進めており、その中で CI/CD のプロセスの見直しを行いました。 結果として、CI の実行時間を大幅に短縮することができたので、今回はそのことについて書いていきます。 長い重い多いテスト テストの並列化 マルチノー

      GitHub Actions でテストを並列化して CI 時間を短縮する - Gunosy Tech Blog
    • Qodana(IntelliJ IDEAのCode Inspection)のCIへの組み込み ~ Kotlinのコード品質を高めるために ~

      LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog LINE株式会社OA SREチームのhasebeです。 今回の記事ではQodanaについて、導入した背景、導入するにあたってのテクニック、得られた効果などを紹介したいと思います。 背景 私の所属する開発4センターでは、近年、サーバーサイドの言語としてKotlinを採用しています。(LINE社全体としても同じ傾向があるように思います。) 理由については今回の記事では深堀りはいたしません。簡単にいうと、昔からJavaを採用しており、Javaのエコシステムが社内に整っているためです。 われわれ開発4センター以外でも、海外や国内においてKotlinをサーバサイドで利用するケースを見聞きする機会が増えてきました。ですが、歴史的理由からも

        Qodana(IntelliJ IDEAのCode Inspection)のCIへの組み込み ~ Kotlinのコード品質を高めるために ~
      • GitHub - google-github-actions/auth: A GitHub Action for authenticating to Google Cloud.

        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

          GitHub - google-github-actions/auth: A GitHub Action for authenticating to Google Cloud.
        • モダンアプリ開発でケアレスミスが起きないようDatadogで自動ブラウザテストする - CARTA TECH BLOG

          アジャイルやDevOpsなど迅速なシステムの改善~リリースが求められる開発で、懸念されることはデグレードを起こしてしまうことかと思います。 今回はそういったミスを軽減させるためのブラウザテストの自動化に関して書いていこうと思います。 自動テストのサービスとしてDatadogのSynthetic Testのブラウザテストを使用します。 ブラウザテストのテストシナリオとしては複雑な条件を使用しないことが大事です、テストデータが必要、単体試験で検知されるべきレベルのシナリオをここで作成することはメンテナンスの限界が発生して、余計に時間を掛けてしまうことになります。 今回は下記のシナリオをテストします。 ・画面遷移が問題なくできること ・画面に期待通りのテキストが表示されていること さらに今回は最終的に自動化したブラウザテストがCI/CDの一部として組み込まれ、 毎回のリリースでデグレが発生してい

            モダンアプリ開発でケアレスミスが起きないようDatadogで自動ブラウザテストする - CARTA TECH BLOG
          • Overall of Container Security for Application Engineer / アプリケーションエンジニアのための、コンテナセキュリティの全体像

            JAWS-UG コンテナ支部 × JAWS-UG 千葉支部 #1 今知りたいコンテナセキュリティ 配信URL: https://www.youtube.com/live/hv_ZX7NGg20?si=gAEksmcw6BdmVxWL&t=2024

              Overall of Container Security for Application Engineer / アプリケーションエンジニアのための、コンテナセキュリティの全体像
            • CircleCIの消費クレジットとRSpecの実行時間を半減させるために行った9の手順

              概要この記事はCircleCI Advent Calendar 2020の9日目の記事です。 スタディスト開発部の笹木です。今年に入ってからは開発基盤チームという位置づけで、開発環境の整備や、CI含むテスト自動化周りを担当しています。 本記事では、RSpecのテスト実行時間を半減させ、CircleCIの消費クレジットを大幅削減した取り組みについてご紹介します。(消費クレジットについては後述します) 改善の結果が以下のグラフで、定点観測しているジョブの消費クレジットが、ピーク時の半分にまで落とせていることがわかります。もちろんテストコードを減らすといった本末転倒なことはしていません。 RSpecジョブ実行時の、CircleCI消費クレジットを時系列で表したグラフ実施した取り組みは以下の通りです。 CircleCIの料金体系を知る問題を認識するCircleCIの利用状況を可視化するRSpecの

                CircleCIの消費クレジットとRSpecの実行時間を半減させるために行った9の手順
              • Google Cloud 版 Dataform と周辺リソースの図 - ぽ靴な缶

                GCP 版 Dataform がついに GA になりましたね。同時に定期実行の仕組みも出て、一通りの機能が揃った感がある。いまこそ買収以前の SaaS 版(Legacy 版)から GCP 版に移行する時!! しかし GitHub リポジトリと連携する場合、登場人物が多くて難しくなっていると思う。 特に GCP に馴染みがなかったりデータ分析がメインの人は困りそう。公式ドキュメントには step by step で書いてあるものの、なぜ必要なのか分からないまま設定することになる。 なので全体像を図にしたり補足するという趣旨のエントリです。 Dataform とは Dataform とは...という話はしません。公式ドキュメントや世間のブログ記事を読もう。 Dataform を使うと、テーブル同士の依存に基づいて順番に SQL を実行してデータパイプラインを作ったり、依存関係を可視化したり、デ

                  Google Cloud 版 Dataform と周辺リソースの図 - ぽ靴な缶
                • RailsのCIのテスト実行時間を 10分から5分に高速化した話 - Findy Tech Blog

                  FindyでEMをしている栁沢(@nipe0324a)です。 今回は、FindyのとあるRailsのCIのテスト実行時間を10分から5分に高速化した話をご紹介します。 「CIのテスト実行時間が遅い...」 「CIの実行時間を短くしたい!!」 と感じている方はぜひご覧くださいませ。 Findyでは2024年2月現在、1人あたり1日4プルリクを平均で作っています。静的解析や自動テストなどを即時に行うCI環境がないとスピード感のある開発ができなくなるため、CIを高速で回しタスクを完了させる必要があります。機能も増え、テストケースも拡充したことでCIの高速化が求められるようになりました。 また、個人的には、CIは遅くても10分、理想は5分以内で終わるのを1つの目安にしています。これぐらいのスピード感でCIが完了すると、「プルリク作ってレビュー依頼する」、「レビューコメントもらって対応する」といった

                    RailsのCIのテスト実行時間を 10分から5分に高速化した話 - Findy Tech Blog
                  • GitHub ActionsによってPRのAssignee選択・Label付与・リリースPR作成を自動化した話 - YOUTRUST Tech Blog

                    こんにちは、YOUTRUST Webエンジニアの寺井(YOUTRUST/X)です。 YOUTRUSTでは、PR(Pull Request)の作成時やPRへのコメント時のSlack通知や、Asanaチケットに該当PRのURLを貼り付けるプロセスなどがGitHub Actionsによって自動化されています。 私はこれまでGitHub Actionsを使ったワークフロー構築の経験はなかったのですが、YOUTRUSTに入社してからこの半年間で、上記のプロセスに加えていくつかの開発プロセスの自動化に取り組んできました。 今回は、私が自動化に取り組んだプロセスをスクリプトと共に紹介したいと思います。 ① PRのAssigneeの選択 ② PRに対するLabelの付与 ③ リリースPRの作成 ①PRのAssigneeの選択 1.1 何をやったか PRを作成したときに自動でAssigneeが選択されるよう

                      GitHub ActionsによってPRのAssignee選択・Label付与・リリースPR作成を自動化した話 - YOUTRUST Tech Blog
                    • ソフトウェアテストの実行を機械学習で効率化する。Jenkins作者の川口氏が立ち上げた「Launchable」で実現しようとしていることとは(後編)

                      ソフトウェアテストの実行を機械学習で効率化する。Jenkins作者の川口氏が立ち上げた「Launchable」で実現しようとしていることとは(後編) Jenkinsの作者として知られる川口耕介氏は、昨年米国で新会社「Launchable」を立ち上げ、日本にもその100%子会社であるLaunchable Japanを近日中に立ち上げ予定です。 Jenkinsの登場がテストやビルドの自動化を促進し、ソフトウェアの開発生産性を向上させたことは明らかでしょう。川口氏によると、Launchableは機械学習などの技術を用いてそれをさらに前進させるものだとしています。 インタビューを行った5月末の時点で、同社は米国に6人、日本に4人と10人ほどの体制で製品開発を進めています。 果たしてLaunchableはどのようなビジョンで何を実現しようとしているのか、同社共同創業者兼共同CEOの川口氏と、Laun

                        ソフトウェアテストの実行を機械学習で効率化する。Jenkins作者の川口氏が立ち上げた「Launchable」で実現しようとしていることとは(後編)
                      • 「GitHub Actions × AWS」のトレーサビリティ向上委員会

                        GitHub ActionsからAWSを操作できると便利です。OIDC(OpenID Connect)を使えばアクセスキーも不要で、セキュアに運用できます。しかし複数システムにまたがる特性上、トラブルシューティングは面倒です。そこで本記事ではトレーサビリティを向上させ、メンテナンスしやすくする手法を紹介します。トレーサビリティが向上すれば、運用はもっと楽になります。 GitHub ActionsとAWSは赤の他人 当たり前ですが、GitHub ActionsとAWSはまったく異なるシステムです。何を言っているんだという感じですが、トレーサビリティの観点では重要です。なぜなら複数のシステムを扱うときは、トレースできるよう設計しないとトレーサビリティは生まれないからです。 GitHub ActionsやAWSに限らず、普通は他所様のシステムなど知ったこっちゃありません。このお互いに知らんぷりを

                          「GitHub Actions × AWS」のトレーサビリティ向上委員会
                        • GitLab CIテンプレートを作って色んなチームに布教した話 - エムスリーテックブログ

                          これはエムスリー Advent Calendar 2022の32日目の記事です。 前日は@po3rinによる、ただのソフトウェアエンジニアが検索エンジニアになるまで でした。 あけましておめでとうございます。エムスリーエンジニアリンググループでScalaとマミさんが好きな安江です。アドカレを購読しているみなさま、またお目に掛かりましたね。素敵な出会いはたくさんあって欲しいですが、プログラマなら似たコードとの出会いは少なくしたいものです。今年度のAI・機械学習のベストMR第1位に輝いたのもGitLab CIテンプレート用リポジトリの作成という、GitLab CIのテンプレートに関するものでした。本記事では、私が布教したGitLab CIのテンプレートの実例を3つ紹介したいと思います。 1. レビュー依頼ジョブ 2. 古いブランチの通知 3. renovate, scala stewardのテ

                            GitLab CIテンプレートを作って色んなチームに布教した話 - エムスリーテックブログ
                          • Nx活用術!Larger runnerの動的設定でGitHub Actionsのコスパ改善! - Findy Tech Blog

                            ファインディ株式会社でフロントエンドのリードをしている新福(@puku0x)です。 皆さん、GitHub ActionsのLarger runnerはご存知でしょうか? 高性能なマシンを使ってCIを実行できる一方、変更の少ない場合や計算負荷の低いCIではコストパフォーマンスが悪くなってしまいがちですよね?🤷‍♂️ この記事では、Nxの機能を利用してLarger runnerを動的に切り替える方法をご紹介します。 Nxについては以前の記事で紹介しておりますので、気になる方は是非ご覧ください。 tech.findy.co.jp Larger runner(より大きなランナー) 課題 解決策 結果 まとめ Larger runner(より大きなランナー) Larger runnerは、「GitHub Teamプラン」または「GitHub Enterprise Cloudプラン」の場合に利用可能

                              Nx活用術!Larger runnerの動的設定でGitHub Actionsのコスパ改善! - Findy Tech Blog
                            • GitHub Actions を回してピザを頼みたい - いなにわうどん

                              年の瀬ですね。クリスマスの足音も近く、ピザなんかを頼んだら景気が良いかなと思ったので、GitHub 上で Issues を生やすとピザが頼める仕組み(workflows)を構築してみました。 本記事は mast Advent Calendar 2023 の 7 日目の記事です。6 日目は Hitoko T. 先生の記事「我が家に猫3匹がやって来た話|Hiroko T.」でした。猫、癒やしですよね 折角のアドカレの機会ですから、GitHub 上でピザを頼むまでの過程を、GitHub や Web 技術、ピザ等に明るい方にも、そうでない方にもお楽しみいただけるように説明*1*2を進めていきます*3。少し長くなりますが、どうぞお付き合いください。 ピザ 突然ですが、みなさまはピザと呼ばれる食べ物をご存知でしょうか? 初めてピザをご覧になられた方に向けて説明しておくと、小麦粉等を練って構成した生地を

                                GitHub Actions を回してピザを頼みたい - いなにわうどん
                              • GitHub Actions で configure-aws-credentials を使った OIDCではまったこと - tech.guitarrapc.cóm

                                GitHub Actions の OpenID Connector と AWS の OIDC Provider を使うことで、IAM Role を Assume できるというのは前回書きました。 tech.guitarrapc.com 構築中によく出るエラーに関しても書いたのですが、いざ実際に使おうとしたら別のエラーではまったので忘れないようにメモしておきます。 tl;dr; GitHub Actions で並列実行すると時々失敗する。 configure-aws-credentials を1 jobで複数回呼び出したときに初回の認証を上書きできない 正常動作例1 正常動作例2 問題の動作 tl;dr; OpenID Connect で認証すると、AWS OIDC Provider の認証の上限に引っ掛かりやすい Composite Action の中で、 configure-aws-cr

                                  GitHub Actions で configure-aws-credentials を使った OIDCではまったこと - tech.guitarrapc.cóm
                                • GitHub Actions に Arm64 ランナーが来たので Docker のマルチプラットフォームイメージをビルドしてみる

                                  GitHub Actions に Arm64 ランナーが来たので Docker のマルチプラットフォームイメージをビルドしてみる 2024/06/03 に GitHub Actions に Arm64 ランナーが追加されました。 現在はパブリックベータで、Team と Enterprise Cloud プランでのみ利用可能です。料金は x64 の同性能のランナーより 37% 安く、電力効率が高いため二酸化炭素排出量削減にもつながるとのことです。 この記事では、新しく追加された Arm64 ランナーを使って Docker のマルチプラットフォームイメージをビルドしてみます。 マルチプラットフォームイメージとは? マルチプラットフォームイメージとは、複数の異なる CPU アーキテクチャ(場合によっては異なる OS)のイメージを 1 つのイメージとして扱えるようにまとめたものです。マルチプラット

                                    GitHub Actions に Arm64 ランナーが来たので Docker のマルチプラットフォームイメージをビルドしてみる
                                  • GitHub Actions の Workflow の改変を防ぐ

                                    GitHub Actions の Workflow や Workflow 用のスクリプトの変更を防いでセキュリティを改善するための OSS を開発しているので紹介します。 背景 GitHub Actions は非常に便利ですが、 Workflow を書き換えて任意のコマンドを実行できるという、セキュリティ的なリスクがあります。 例えば GitHub Actions で Terraform を実行して AWS や GCP の IaC を実現している場合、 Workflow を書き換えて terraform destroy を実行して インフラを破壊するといったことが考えられます。 GitHub App が使われている場合、 Workflow を書き換えて GitHub App で悪意のある Pull Request を approve したり、はたまた GitHub App で Pull R

                                      GitHub Actions の Workflow の改変を防ぐ
                                    • 【速報】機械学習にもCI/CDの波が。Amazon SageMaker Pipelines 登場! #reinvent | DevelopersIO

                                      せーのでございます。 現在AWS re:InventではAndy Jassyのキーノートが行われています。 [随時更新] AWS re:Invent 2020 Keynote で発表された新サービスまとめ #reinvent | Developers.IO ご機嫌いかがでしょうか、豊崎です。 今年もre:Invent 2020 キーノートではたくさんの新サービス/新機能が発表されるものと思います。 本投稿では、AWS re:Invent 2020のキーノートで発表された新サービスの記事をまとめます。 AWS re:Invent 2020では以下5つのキーノートが計画されています。 12/2: Andy Jassy Keynote 12/4: AWS Partner Keynote 12/9: Machine Learning Keynote 12/11: Infrastructure Ke

                                        【速報】機械学習にもCI/CDの波が。Amazon SageMaker Pipelines 登場! #reinvent | DevelopersIO
                                      • RIE と lambroll で始める Lambda の CI/CD | CyberAgent Developers Blog

                                        こんにちは。 AI 事業本部 AI クリエイティブディビジョンのエンジニアの佐藤 (@Rintaro ...

                                          RIE と lambroll で始める Lambda の CI/CD | CyberAgent Developers Blog
                                        • Digger + GitHub Actionsで作るTerraform/OpenTofuのCI/CD - Qiita

                                          Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに この記事は Terraform Advent Calendar 2024 の 23日目の記事です。 TerraformのCI/CDどうしてますか?私は長年Atlantisを愛用していました。Atlantisは、Terraform/OpenTofu用のCI/CDサーバで、自分で使う分にはどちゃクソ便利なんですが、サーバを自前で建てないといけないのがネックで、なかなか初心者や小規模な環境にはオススメしづらいのが悩ましいところです。 なんかよい代替手段はないかしら?と思って最近使ってみているのがDiggerです。DiggerはGit

                                          • Github Actionsでget-diff-actionを用いてDocker Build時間を削減する

                                            こんにちは!アルダグラムの開発ユニット長の田中です! 突然ですが、少しでもCIの実行時間を削減したいと思いませんか? 今回は、GitHub Actionsとget-diff-actionを活用してDockerビルド時間を削減する方法についてご紹介します。 TL;DR get-diff-actionを使用してライブラリの変更差分を検知します。 変更差分がない場合はライブラリインストール済みのDockerイメージを使用してBuild時間を短縮します。 サンプルコード 具体的な例として、Railsアプリケーションを使用します。 on: pull_request: types: [ closed ] branches: - 'develop' name: Deploy to Amazon ECS jobs: ecr-push: name: Deploy runs-on: ubuntu-latest

                                              Github Actionsでget-diff-actionを用いてDocker Build時間を削減する
                                            • [DevOpsプラットフォームの取り組み #3] Infrastructure as Codeの課題とCloud Native Adapter - NTT Communications Engineers' Blog

                                              はじめに DevOpsプラットフォームの取り組みを紹介する3回目の記事です。 Qmonus Value Streamのアーキテクトの牧志 (@JunMakishi) です。 本記事では、Qmonus Value Streamの独自技術であるCloud Native Adapterを紹介します。はじめにInfrastructure as Codeの課題を指摘し、Cloud Native Adapterを使ってこれらの課題をどう解決するのかを解説します。 Infrastructure as Codeの課題 Infrastructuer as Code (以下IaC) は、特定のツールを指すのではなく、インフラストラクチャをコードで記述し、ソフトウェアと同じように取り扱うプラクティスを指します。インフラストラクチャのリソース構成や設定をコードで記述・適用することで、再現性、一貫性、および透明性の

                                                [DevOpsプラットフォームの取り組み #3] Infrastructure as Codeの課題とCloud Native Adapter - NTT Communications Engineers' Blog
                                              • poetryを利用した動的なバージョン管理とGitHub ActionsによるPyPIへのrelease - Stimulator

                                                はじめに この記事を読んで出来る事 poetryによる外部モジュールバージョン管理 poetry-dynamic-versioningによる動的なバージョン付与 GitHub Actionsを利用したPython周りの基本的なCI/CD設定 GitHubのReleaseタグ付与をTriggerとしたPyPIへのアップロード 今後私がPythonで何かライブラリ作ろうと思ったらこれを実施するぞというメモです はじめに poetryによるモジュールバージョン管理 PyPIへのアップロード GitHab Actionsを用いたCI/CD その他GitHubでやること 参考 poetryによるモジュールバージョン管理 バージョンをGitHubのタグで管理したい事の方が多いはず。 setup.pyを利用する場合は、一般的にsetuptools_scmを使うが、poetryはsetup.pyのようにb

                                                  poetryを利用した動的なバージョン管理とGitHub ActionsによるPyPIへのrelease - Stimulator
                                                • tfmigrate + Atlantis でTerraformリファクタリング機能をCI/CDに組み込む - Qiita

                                                  マイグレーションの履歴を記録することで、マイグレーションファイル名を省略して、単に tfmigrate plan や tfmigrate apply とするだけで、未適用のマイグレーションを適用することが可能になり、よりCI/CDで使いやすくなりました。また履歴モードが有効な場合、 tfmigrate list --status=unapplied で未適用のマイグレーションファイルを列挙することも可能です。 いまのところ storage の種類は s3 と local しか使えませんが、s3 以外のクラウドストレージに保存したい場合は、現状の回避策として local ストレージを使用して一旦ローカルファイルとして保存して、tfmigrate plan / apply の前後で履歴ファイルを自前で同期することは可能です。最新の状況は上記のREADMEを参照して下さい。 tfmigrate自

                                                    tfmigrate + Atlantis でTerraformリファクタリング機能をCI/CDに組み込む - Qiita
                                                  • [DevOpsプラットフォームの取り組み #7] 独自のKubernetesカスタムオペレーターを用いたCI/CDエンジン - NTT Communications Engineers' Blog

                                                    DevOpsプラットフォームの取り組みを紹介する7回目の記事です。 Qmonus Value Stream 開発チームの奥井( @HirokiOkui )です。 連載第7回では、Qmonus Value Streamの中核を担うコンポーネントであるAssemblyLineについて深堀りします。 第2回 および 第6回 で解説したとおり、Qmonus Value Streamでは、AssemblyLineという独自のリソースを定義してCI/CDパイプラインを構成します。 AssemblyLineは、 Tekton と同様にKubernetesのカスタムオペレーターとして実装されています。 AssemblyLineは、Tekton Pipelineを実行するワークフローエンジンとしての責務に加えて、柔軟性の高いCI/CDパイプラインを構成・実行するために必要な様々な機能を有しています。 本記事

                                                      [DevOpsプラットフォームの取り組み #7] 独自のKubernetesカスタムオペレーターを用いたCI/CDエンジン - NTT Communications Engineers' Blog
                                                    • GitHub AppsのToken作成Actionが公式から出たので乗り換えるときの注意点 - 風に吹かれても

                                                      はじめに GitHub ActionsでGitHub Appsを使うときには登録時に入手できるApp IDとsecret keyから一時的に使用できるトークンを発行する必要があります。 このトークンはGitHubが用意しているRest APIやGraphQL APIに対してリクエストすることによって入手することができます*1が、いちいちAPIを叩く準備をするのは面倒なので個人が作成したActionであるtibdex/github-app-tokenやSentryが提供しているActionであるgetsentry/action-github-app-tokenを使うことによって楽をすることができました。 今まで非公式なActionに依存していたトークン生成ですが、GitHubが公式でAppsトークンを作成するActionであるactions/create-github-app-tokenを提

                                                        GitHub AppsのToken作成Actionが公式から出たので乗り換えるときの注意点 - 風に吹かれても
                                                      • Terraform v0.12.29 → v0.15.0にバージョンアップしました | ランサーズ(Lancers)エンジニアブログ

                                                        SREチームの安達 (@adachin0817)です。ランサーズやグループ会社ではTerraform v0.12.29を利用して、AWSのインフラコード化をしています。ようやくグループ会社すべてAWSに移行が完了となり、次なるチャレンジとしてはTerraformのバージョンアップを対応することとなりました。また、以下4/15にv0.15.0もリリースされたということもあり、非常に良い機会となりました。 まずは各プロジェクトについて簡単に説明をしていきたいと思います! Terraform 0.15 is out, which can also be considered a pre-release for 1.0 if all goes well. ✨ It’s finally happening! Great quality of life improvements around Wind

                                                          Terraform v0.12.29 → v0.15.0にバージョンアップしました | ランサーズ(Lancers)エンジニアブログ
                                                        • Capybaraとreg-cliを使ってお手軽にビジュアルリグレッションテストを行える環境を整備しました📸 - メドピア開発者ブログ

                                                          こんにちは、MedPeerの開発を担当している森田です。 今回は私が開発に参画しているMedPeerに元々E2Eテストで利用していたCapybaraと、reg-cliを利用してビジュアルリグレッションテスト(以下VRT)を行える環境を整備したので、それについてご紹介させていただきます。 なぜ、VRTを導入するのか? VRTの要件と技術選定 実際に構築したVRT基盤の概要 VRT基盤の具体的な話 System Spec内でスクリーンショットを取得する reg-cliでスクリーンショットの差分をチェックする 分かりやすいコマンドでVRTを実行できるようにする CIで差分をチェックする OS間での利用フォントによる違いを吸収する おわりに 参考にさせて頂いた資料 なぜ、VRTを導入するのか? MedPeerでは元々System Specを活用したE2Eテストを利用してフロントエンドを含めて品質を

                                                            Capybaraとreg-cliを使ってお手軽にビジュアルリグレッションテストを行える環境を整備しました📸 - メドピア開発者ブログ
                                                          • AWS - GCP の ID 連携を使い、 AWS CodeBuild で Terraform を使って GCP を管理 - スタディサプリ Product Team Blog

                                                            こんにちは。 SRE の @suzuki-shunsuke です。 Google Cloud Platform (以下 GCP) を Terraform で管理するように CI/CD を整備した話を紹介します。 背景 何度か本ブログで紹介したように、弊社では Terraform を使い AWS を始めとする様々なリソースを管理しています。 quipper.hatenablog.com しかし、 GCP はあまりちゃんと管理できていないという課題がありました。 弊社のサービスはほぼすべて AWS 上で動いており、 IaC が既に整備されています。 一方で GCP も以前から使っていますが IaC は整備されてなく、 SRE がたまに developer (以下 dev) から依頼を受けて、手で Project を作ったり IAM 周りを設定したりしていました。 IaC ができていないため、

                                                              AWS - GCP の ID 連携を使い、 AWS CodeBuild で Terraform を使って GCP を管理 - スタディサプリ Product Team Blog
                                                            • GitHub Actionsで「matrixの全テストが通らないとマージできないようにする」設定を簡単に行う方法 - 私が歌川です

                                                              GitHub Actionsで、複数環境でテストしたいのでmatrixに分けて、branch protectionの設定で全環境のテストが通ったらmasterにマージ可能にしましょう、というのをやろうとするとちょっと面倒です。 matrixの数だけ必要なstatus checkに含めないといけない jobの名前を変えたときにrequired status checkの設定も追従させないといけない? (未確認) 「なんか一生CI greenになりませんね」的なことになりそう jobの名前を途中で変えたら選択肢がめちゃくちゃ出てくる gyazo.com 全部のテストに通った、というのを1つのstatus checkで表現したいので、以下のようなjobを追加しました。 needs: test にして、 test jobが全てpassしないと作動しないようにする 1つでもテストが落ちたらcance

                                                                GitHub Actionsで「matrixの全テストが通らないとマージできないようにする」設定を簡単に行う方法 - 私が歌川です
                                                              • warning絶許マンがCIで捗る話し - Qiita

                                                                all: clang-format -style=file < z80.hpp > z80.hpp.bak cat z80.hpp.bak > z80.hpp rm z80.hpp.bak cd test && make cd test-ex && make zexall ci: cd test && make cd test-ex && make ci ローカル: make [all] でメインモジュールを clang-format で整形してからテスト実行 CI: clang-format での整形を省略しつつテスト実行 text-ex/Makefile の実行手順がローカルとCIで異なっています。 ローカル: cd test-ex && make zexall CI: cd test-ex && make ci CFLAGS=-I../ \ -std=c++11 \ -O2 \ -W

                                                                  warning絶許マンがCIで捗る話し - Qiita
                                                                • マイナーなSaaSのCIを作っているんだが俺はもうダメかもしれない - LIVESENSE ENGINEER BLOG

                                                                  はじめに CIの概要 出てきた課題と対策 ライブラリのtimeout値が固定値な上に短い ドキュメントにないパラメータがダマで増えた モニターのゾンビ化 想定したように設定が反映されずに手動で変更 YAMLのdiffツール(dyff)の自己主張が激しい 結局CI化するべきだったのか? 得られたメリット 正直な感想と今後 はじめに インフラGの@yjszkです。先日は青森競輪と盛岡競馬に行ってきて負けました、盛岡のジャンボ焼き鳥が美味しかったです。 さて、前回の記事ではCronitorというサービスのコード化と、CIの構築を行ったことを書きました。 それを実際に運用してみたところ、いくつかの問題が発生しました。今回は、それに対して、現在進行形で苦労している話を書きます。 CIの概要 前回の記事にあるように、CIを構築しました。 GitHub Actionsを使用し、PRにコミットが積まれると

                                                                    マイナーなSaaSのCIを作っているんだが俺はもうダメかもしれない - LIVESENSE ENGINEER BLOG
                                                                  • GitLabとGoogle Cloudの統合がパブリックベータに。GitLabの認証からソースコード管理、ランナーの実行、デプロイまですべてGoogle Cloud上で

                                                                    GitLabとGoogle Cloudの統合がパブリックベータに。GitLabの認証からソースコード管理、ランナーの実行、デプロイまですべてGoogle Cloud上で ソースコード管理やCI/CD機能などの開発プラットフォームを提供するGitLabは、Google Cloudとの本格的統合をパブリックベータとして公開しました。 これによりGitLabの認証、ソースコード管理、CI/CDランナーの実行、デプロイまでパイプライン全体がGoogle Cloudのサービスと連係統合され、ユーザーはこれらを利用して迅速にDevOpsのパイプラインを実行できるようになります。 Imagine a world where you can seamlessly move from code creation to deployment — all within a single integrated p

                                                                      GitLabとGoogle Cloudの統合がパブリックベータに。GitLabの認証からソースコード管理、ランナーの実行、デプロイまですべてGoogle Cloud上で
                                                                    • 人工衛星管制システムにおけるCICD / CICD in satellite control systems

                                                                      Amazon ECSとCloud Runの相互理解で広げる�クラウドネイティブの景色 / Mutually understanding Amazon ECS and Cloud Run

                                                                        人工衛星管制システムにおけるCICD / CICD in satellite control systems
                                                                      • CloudFrontのキャッシュクリア(invalidation)を自動化してみた – 仕組みやCLIコマンドを解説 | thilog

                                                                        こんにちは。てぃろです。 CloudFrontのキャッシュ(chache)をうまく使えてますか? CloudFrontではWebアプリ配信のレスポンスをよくするためにキャッシュを使えます。しかし、アプリを新たにデプロイする時にはキャッシュをクリア(削除)しないと、古いアプリのまま使われてしまう恐れがあります。 そこで、アプリをデプロイするたびにCloudFrontのキャッシュを自動的にクリアできるようにしたいと思います。 CloudFrontのキャッシュ詳しい仕様は公式ドキュメントをご覧ください。 今回も自作のアプリフレームワークを題材に解説していきます。以下がフレームワークの概要説明の資料です。 CloudFrontのキャッシュクリアの操作をマネジメントコンソールで確認するまず、CloudFrontのキャッシュクリアの操作がどのようなものか見ていきます。 突然ですが、公式ドキュメントやマ

                                                                          CloudFrontのキャッシュクリア(invalidation)を自動化してみた – 仕組みやCLIコマンドを解説 | thilog
                                                                        • The Legends of Runeterra CI/CD Pipeline

                                                                          The Legends of Runeterra CI/CD Pipeline Hi, I’m Guy Kisel, and I’m a software engineer on Legends of Runeterra’s Production Engineering: Shared Tools, Automation, and Build team (PE:STAB for short). My team is responsible for solving cross-team shared client technology issues and increasing development efficiency. We focus on the areas that empower other teams to do more and protect the team from

                                                                            The Legends of Runeterra CI/CD Pipeline
                                                                          • 【最強のプルリクレビュー環境】 GitHub ActionsとPHPStanを繋げてPRのコード上に自動で静的解析のエラーが出てくる仕組みを作る - Qiita

                                                                            【最強のプルリクレビュー環境】 GitHub ActionsとPHPStanを繋げてPRのコード上に自動で静的解析のエラーが出てくる仕組みを作るPHPGitHubPHPStanGitHubActions GitHubでプルリクをレビューするとき、こんな風にコード上に勝手にエラーがあるよ!って表示されたら嬉しいなあということがあります。 わざわざCIの実行結果を見に行ってひとつひとつエラーを確認するのは面倒ですからね。 というわけで、今回は上の画像のように自動でエラーがコード上に現れて教えてくれる環境をGitHub Actionsで作りたいと思います。 大前提 PHPStanがプロジェクトに導入されている 今回はPHPStan 1.5.4を使用して検証しています PHPStanが入ってないと話が始まらないので、まずは入れておきましょう。 GitHub ActionsからPHPStanが走るよ

                                                                              【最強のプルリクレビュー環境】 GitHub ActionsとPHPStanを繋げてPRのコード上に自動で静的解析のエラーが出てくる仕組みを作る - Qiita
                                                                            • 1400 行の一枚岩な .gitlab-ci.yml を分割して CI を高速化した - 弁護士ドットコム株式会社 Creators’ blog

                                                                              こんにちは。弁護士ドットコム クラウドサイン事業本部で SRE をしています、大内と申します。 クラウドサイン事業本部の SRE ではサービスの可用性、信頼性の向上や開発の高速化、省力化を目指した開発を日々行っています。 クラウドサイン事業本部では本体アプリケーション(以下本体)のソースコード管理を GitLab で行っています。 そして、本体とその関連サービス、バッチなどを 1 つのリポジトリで管理するモノレポ構成を取っています。 今回は、そんなモノレポ構成のリポジトリの GitLab CI パイプラインを分割し、開発速度を大きく改善した話をご紹介します。 CI 分割以前の CI 構成 モノレポ構成プロダクトの CI が抱えていた課題 他のテストの待ち時間の影響を受けて待ち時間が伸びる テストが失敗するとすべてのデプロイがブロックされる .gitlab-ci.yml の肥大化による、コー

                                                                                1400 行の一枚岩な .gitlab-ci.yml を分割して CI を高速化した - 弁護士ドットコム株式会社 Creators’ blog
                                                                              • GitHub Actions update: Helping maintainers combat bad actors

                                                                                AI & MLLearn about artificial intelligence and machine learning across the GitHub ecosystem and the wider industry. Generative AILearn how to build with generative AI. GitHub CopilotChange how you work with GitHub Copilot. LLMsEverything developers need to know about LLMs. Machine learningMachine learning tips, tricks, and best practices. How AI code generation worksExplore the capabilities and be

                                                                                  GitHub Actions update: Helping maintainers combat bad actors
                                                                                • GitHub Actionsを使ってBrakemanを導入した話 - LIVESENSE ENGINEER BLOG

                                                                                  はじめに Brakemanとは 導入方針 導入方法 終わりに はじめに 普段アルバイト事業部で主にバックエンドの開発をしている@ayumu838です。 最近はStaubのホーロー鍋を買って煮込み料理をよく作って食べています。 食欲の秋なので日々のカロリー摂取量は増加の一途を辿っているのが少し心配です。 ところで皆さんは、自身のRailsプロジェクトに対してセキュリティチェックを行っていますか? この記事では、GitHub Actionsを使ってRailsプロジェクトに対してBrakemanを導入して、セキュリティチェックを行った時の話です。 Brakemanとは ソースコードに対してSQLインジェクションやXSSなどの脆弱性がないかを解析してくれるGemです。 人間が目視で確認していても抜け漏れがあったり、新たに報告された脆弱性に気付きにくかったりするので、こういった自動で検知してくれるツ

                                                                                    GitHub Actionsを使ってBrakemanを導入した話 - LIVESENSE ENGINEER BLOG

                                                                                  新着記事