タグ

CIに関するKesinのブックマーク (165)

  • 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
    Kesin
    Kesin 2023/04/28
    見た感じテスト分割の機能としてはCircleCIとほぼ同等にできてそう。JUnitのXMLから過去テストにかかった時間情報を利用した賢い分割にも対応している
  • https://assets.api.gamma.app/export/pdf/brvefmmeby4qbrl/68857306de0f0c77da12ce202bf2fe09/Introducing-actions-runner-controller.pdf

    Kesin
    Kesin 2023/04/27
    actions-runner-controllerのメンテナが直接紹介したスライド
  • モノレポでの GitHub Actions CI の泥臭い高速化

    はじめに みなさんこんにちは、物流業界の価値最大化をミッションに掲げ運送会社のDXに寄り添うアセンド株式会社でCTOを務めている丹羽です。 1日5.2回のリリースを実現するプロダクトチームの開発体験を支えるCIの高速化についてご紹介します(先週3/20週の平均値)。1日に数回デプロイというレベルでの素早く開発するにおいて、 push 時の CI Check の速さは地味ですが開発体験にとって見逃せない存在になります。特にモノレポ環境ではジョブが複数ある中でいかに省略ができるかが鍵となり、泥臭くも数十秒でも高速化のため戦ったポイントを紹介します。 アセンドでは顧客課題を中心にプロダクト開発をするためにフルサイクルエンジニアという開発スタイルを取り、1エンジニアがフロント・バックエンドだけでなく設計からリリース・サポートまでのソフトウェアのライフサイクル全体にオーナーシップを持って開発していま

    モノレポでの GitHub Actions CI の泥臭い高速化
    Kesin
    Kesin 2023/03/29
    大規模なmonorepoになるとCIサービス単独で対応するのは大変そう。turborepoのリモートキャッシュを契約するか自前でキャッシュサーバーを立てたらturborepoのビルド時間も改善しないかな
  • コスト安なCI環境を目指してオートスケールするCI環境を構築する - 電通総研 テックブログ

    こんにちは。X(クロス)イノベーション部 ソフトウェアデザインセンター の山下です。 今回はユーザーに合わせてオートスケールするGitHub ActionsのRunnerについて紹介しようと思います。 課題と目的 公式の推奨している方法について 構築の手順 事前準備 terraformの実行 terraformファイルの作成 terraformの実行 GitHub Appにhookの設定を追加 実際に利用する場合 まとめ 課題と目的 GitHub Actionsを使ってCIを実施するのは一般的になってきています。 ISIDでもGitHub Actionsを活用してCIを実施しています。 しかし、GitHub社が提供しているrunners(GitHub-hosted runners)では困る場合があります。「GitHub Actionsでオンプレミス環境のCI/CDを実行する方法」の記事で

    コスト安なCI環境を目指してオートスケールするCI環境を構築する - 電通総研 テックブログ
    Kesin
    Kesin 2023/03/15
    philips-labs/terraform-aws-github-runnerで構築する例
  • IDOLY PRIDEのチュートリアルを自動テストする仕組み | QualiArtsエンジニアブログ

    はじめに 株式会社QualiArtsでUnityエンジニアをしている田中です。IDOLY PRIDE(以下、アイプラ)にてアウトゲーム開発などを行っていましたが、最近は開発基盤チームに異動し、自動テストを主な業務としています。 QualiArtsでは最近開発の品質を高めるべく、自動テストについて技術的な検証を進めております。 ここでの自動テストがターゲットとするのはいわゆるUIテストで、一定の操作に基づく実機での検証を自動化することを指します。 今回はそんな自動テストの検証の一環として、アイプラのチュートリアルのテストを自動化した話を紹介します。 アイプラのチュートリアル まずはじめにアイプラのチュートリアルについて説明します。アイプラでは、はじめてプレイするユーザーに向けてチュートリアルの機能を用意しています。ユーザー規約の提示からユーザー名の選択、各種機能の紹介からライブを実際にしてみ

    IDOLY PRIDEのチュートリアルを自動テストする仕組み | QualiArtsエンジニアブログ
    Kesin
    Kesin 2023/02/02
    自動テストのレポートをGithub Pagesに上げてしまうのいいな
  • CLI バージョンマネージャー aqua のススメ - Retty Tech Blog

    この記事は Retty Advent Calendar 2022 Part1 の14日目の記事です。昨日は今井さんの『ストーリーポイント定規を作ってみた』でした。 今年も Part2 があるのでこちらもよろしくお願いします。自分は Part2 の16日にも記事を書きます。 はじめに aqua について チュートリアル 1. aqua のインストール 2. ツールの追加 2.1 Registry とは 2.2 aqua.yaml の生成 2.3 aqua generate によるツールの追加 3. ツールのインストールと実行 aqua のここが便利! バージョンの指定、切り替えが簡単にできる バージョン切り替え時の挙動について バージョンの指定について aqua generate -s の利用 aqua.yaml による設定の共有ができる 設定ファイルの読み込みについて Renovate

    CLI バージョンマネージャー aqua のススメ - Retty Tech Blog
    Kesin
    Kesin 2023/01/03
    ビルドマシンとかCIで使うためのdockerなどでツールごとにaptのリポジトリ追加とかが面倒だしバージョン固定がやりにくかったりするので試してみたい
  • サプライチェーンセキュリティにおける脅威と対策の再評価 | メルカリエンジニアリング

    ブログの主旨 サプライチェーンセキュリティにおいて既存のフレームワークよりも具象化されたモデルを用いて脅威及び対策を精査することで、実際のプロダクトへのより実際的な適用可能性及び課題を検討した。 具象化されたモデルにおいては「脅威の混入箇所と発生箇所が必ずしも一致しない」という前提に立ち、各対策のサプライチェーンセキュリティにおける位置付け及び効力を検討した。とりわけ、ともすれば無思考的に採用しかねないSBOM等の「流行の」対策に対して、その課題や効果の限定性を明らかにした。 これらの脅威分析に基づき、「サプライチェーンの構成要素に存在する多数の開発者それぞれに対して責任を分散して負わせる」形態のパイプラインを置き換えるものとして、「各構成要素に存在する開発者に対して一定の制約を強制する代わりに、サプライチェーンセキュリティに関するオペレーションを一点に担う中央化されたCIパイプライン」

    サプライチェーンセキュリティにおける脅威と対策の再評価 | メルカリエンジニアリング
    Kesin
    Kesin 2022/12/20
    コンテナ関連でkoとかapkoを初めて知った。DockerfileのRUNだと依存関係を追跡しきれないのでパッケージのインストールを宣言的に書くというアプローチなのか。Dockerfileほどの柔軟性は不要なところにマッチするかも
  • Qodana: JetBrains の静的コード解析ツール

    Qodana は JetBrains IDE のインスペクションを CI パイプラインに導入してコード品質の改善を支援する静的コード解析エンジンです。 今すぐ無料でお試しください!

    Qodana: JetBrains の静的コード解析ツール
    Kesin
    Kesin 2022/12/14
  • Limit scope of npm tokens with the new granular access tokens

    Limit scope of npm tokens with the new granular access tokens npmsecurityuser-management December 6, 2022 You can now create access tokens with limited scope using the new granular access tokens functionality in npm. With granular access tokens, you can: Restrict which packages and/or scopes a token has access to Grant tokens access to specific organizations for user management Set a token expirat

    Limit scope of npm tokens with the new granular access tokens
    Kesin
    Kesin 2022/12/07
    npmのトークンの権限を細かくコントール可能になり、アクセスできるリポジトリやIP制限も可能。CI/CD用途を意図しているので2FA不要。素晴らしい
  • 未知の脅威に対抗するメルカリのCI再設計 | メルカリエンジニアリング

    この記事は、Mercari Advent Calendar 2022 の3日目および Developer Productivity Engineering Campブログシリーズの一環で、メルカリCI/CDチームのMichael Findlater (@michaelfindlater)が執筆したものです。 ※記事は2022年2月3日に公開された記事の翻訳版です。 ここではメルカリにおける次世代Continuous Integration(CI)システムの実装、そしてそれに向けたいくつかの技術的な取り組みについて解説します。またこの施策の動機とも言える、サプライチェーンアタックがどのようにCI/CDエンジニア達にとって今後より重要になってきたのかについて解説します。 背景 これまでも常にCI/CDパイプラインに対する攻撃は存在していたものの、ここ最近のこのエリアに対しての攻撃の急増は脅威

    未知の脅威に対抗するメルカリのCI再設計 | メルカリエンジニアリング
    Kesin
    Kesin 2022/12/03
    大規模な組織でセキュアなCIの環境をちゃんと整えるのは大変そうだけど既に実現できててすごい
  • philips-labs/terraform-aws-github-runner でオートスケールするセルフホストランナーの構築・運用 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、生産性向上チームの @miyajan です! この記事は、Cybozu Advent Calendar 2022 の一日目です。philips-labs/terraform-aws-github-runner を使ってオートスケールする GitHub Actions のセルフホストランナーを構築・運用している知見を書きます。 この話題については過去に発表しましたが、それから一年以上経って変更も多いため、あらためてブログ記事にしました。 背景 サイボウズには、サイボウズ社内のネットワークからしかアクセスできないシステムに依存して開発しているチームが複数あります。これらのチームが GitHub Actions を利用したいと思っても、GitHub が提供する Actions のランナーからはサイボウズ社内のネットワークにアクセスできません。このため、サイボウズ社内の開発チームが G

    philips-labs/terraform-aws-github-runner でオートスケールするセルフホストランナーの構築・運用 - Cybozu Inside Out | サイボウズエンジニアのブログ
    Kesin
    Kesin 2022/12/01
    philips-labs/terraform-aws-github-runner興味はあったけどREADMEだけで既にかなり複雑な感じだったのでどういう機能と仕組みになっているのかの解説助かります
  • スペックを上げてクラウドで殴るCI / pixiv TECH SALON #pixivTECHSALON

    pixiv TECH SALON ( https://techsalon.pixiv.co.jp/ )の発表資料です。

    スペックを上げてクラウドで殴るCI / pixiv TECH SALON #pixivTECHSALON
    Kesin
    Kesin 2022/11/30
  • Amazon ECS と AWS Lambda で汎用 self-hosted runner を提供する基盤 - クックパッド開発者ブログ

    技術部 SRE グループの @s4ichi です。ここ最近は業に加えて Overwatch2 のヒーローとして戦いに明け暮れています。救わなければならないレートがある。 GitHub flow に従った開発では GitHub Actions が非常に便利です。特に最近では CI 用途だけでなく、ソフトウェアのデリバリーなども Actions で完結させる事例も見かけます。しかしながら、クックパッド社内では GitHub Enterprise Server を使っているため、GtiHub Actions の利用には self-hosted runnner の利用が不可欠になっています。 そこで、社内では Amazon ECS 上に ephemeral で汎用的な self-hosted runner を提供しています。実行する job の数に応じた autoscaling を備え、runn

    Amazon ECS と AWS Lambda で汎用 self-hosted runner を提供する基盤 - クックパッド開発者ブログ
    Kesin
    Kesin 2022/11/08
    AWSでセルフホストランナーと言えばEC2かEKSだったのでECSのパターンは初めて見た。docker周りが不便になってしまうけどAMIを更新する代わりにDockerfileで済むのは簡単でいいな
  • GitHub Actions self-hosted runners のオートスケーリング構成の紹介(クラウドサービス開発を支える CI の裏側) - NTT Communications Engineers' Blog

    はじめに こんにちは、クラウド&ネットワークサービス部で SDPF のベアメタルサーバー・ハイパーバイザーの開発をしている山中です。 先日 NTT Engineers' Festa という技術イベントが開催され、多くのエンジニアで賑わいました。 NTT Engineers' Festa は NTT グループのエンジニア技術交流するイベントであり、ハンズオンやディスカッション、登壇発表など様々なセッションが数日に渡って行われます。 私もこのイベントに参加し、自分のチームで行っている GitHub Actions の self-hosted runners を活用した Continuous Integration(以下、CI)事例について発表をしました。 概要としては、オンプレミスの VMware vSphere(以下、vSphere)環境上で自作の Ruby アプリケーションと Docke

    GitHub Actions self-hosted runners のオートスケーリング構成の紹介(クラウドサービス開発を支える CI の裏側) - NTT Communications Engineers' Blog
    Kesin
    Kesin 2022/11/04
    セルフホストランナーのオートスケーリングを自前で実装している例。ランナー自体をコンテナにしていればオンプレ上でも環境が統一できるので既存資産の流用を確かにやりやすい
  • Github actions のコスパについて考えた - たゆたふ。

    Github actions はとても便利だ。テストやビルドを自動化するのに活用している。 パブリックリポジトリだと無料で実行環境が利用できるのがありがたい。 その無料の実行環境 Github-hosted runner では重すぎる処理を実行したくて Github actions の Self-hosted runner 環境を作った話は前回のエントリで書いた。 hero.hatenablog.jp 環境構築の動機となった目的は果たしたものの、作った環境はコスト性能比的にも良い選択だったのだろうか? と思ってちょっと調べてみた。 今回はそれについて記す。 レイヤ数の多い大きな Docker イメージのビルドをギリギリ Github-hosted runner で実行していたのだけど、マルチアーキテクチャビルドをしようとして遂に処理できなくなった。仕方がないので、Self-hosted r

    Github actions のコスパについて考えた - たゆたふ。
  • Scaling out iOS builds on AWS with EC2 mac

    Kesin
    Kesin 2022/10/05
    JenkinsとEC2 macでオートスケール可能なmacのビルドプラットフォームを構築する要素をシンプルに解説してくれている。macインスタンスは起動してから24時間は課金されるとか、AnkaとTartといったM1でも使えるVMなど
  • 動的に仮想環境を構築して CI/CD を実行する

    Kesin
    Kesin 2022/07/04
    すごい。k8sを使うとかwebhookを受けてインスタンスを立ち上げるまでの一連をOSSとして自作するとか色々見たけど、同等のことを実現できる最小構成かな
  • Insights PRO subscriptions now available for all - Bitrise Blog

    Kesin
    Kesin 2022/06/23
    ビルドとテストの分析をするInsightsの強化版であるProの値段が確定。30日以内にpushしたユーザーの数x200クレジットになる模様。Github Actionsはまだこの分析分野の機能が無いので他のCIはここに力を入れてきてる気がするな
  • Handling Flaky Tests at Scale: Auto Detection & Suppression - Slack Engineering

    At Slack, the goal of the Mobile Developer Experience Team (DevXp) is to empower developers to ship code with confidence while enjoying a pleasant and productive engineering experience. We use metrics and surveys to measure productivity and developer experience, such as developer sentiment, CI stability, time to merge (TTM), and test failure rate. The DevXp team has continuously invested in test i

    Handling Flaky Tests at Scale: Auto Detection & Suppression - Slack Engineering
    Kesin
    Kesin 2022/05/05
    Slackでの大規模開発におけるiOSとAndroidのFlaky test対策。最初はFlaky判定されたテストを結果から隠蔽していたが、弊害が大きかったので自動でテストコードを無効化するコミットをして自動生成のJIRAをアサインする方法にし
  • HashiCorp NomadでGitHub Actions Self-hosted Runnerを簡単にautoscale運用する

    HashiCorp NomadでGitHub Actions Self-hosted Runnerを簡単にautoscale運用する HashiCorp Nomad おさらい Nomad は HashiCorp が2015年から開発を続けている、非常に軽量かつ高速なワークロードスケジューラーです。Nomad が管理するクラスターに対して、コンテナアプリケーションはもちろん、Java アプリ (.jar)、任意のバイナリ、QEMU 仮想マシンなど、レガシーアプリを含む様々な種類のワークロードをオーケストレーション・スケジューリング実行することができます。GPU を利用するワークロードにも対応しています。 世界で見ると実際のミッションクリティカルな番環境での稼働実績も多数あり、下記では利用事例の一部が紹介されています。 有名な例としては、Cloudflare 内部での利用事例や、Circle

    HashiCorp NomadでGitHub Actions Self-hosted Runnerを簡単にautoscale運用する
    Kesin
    Kesin 2022/04/14
    k8sを使わない構成が今どき一周回って珍しい