タグ

ciに関するtakashabeのブックマーク (14)

  • GitHub ActionsにおけるStep/Job/Workflow設計論

    この記事について GitHub Actionsには、以下3つの実行単位が存在します。 Workflow Job Step パイプラインを組む中で出てくる複数個の処理を、1つの実行単位でまとめてしまうか、それとも分割するのかというのは悩むポイントかと思います。 一つのstepのrunフィールドにコマンドを詰め込む?それともstepを分けた方がいい? 一つのJobの中のstepとして記述した方がいい?それとも別のJobに定義した方がいい? 一つのWorkflowの中にJobをたくさん定義する?それともWorkflowを別にする? この記事では、Workflow・Job・Stepそれぞれの性質を踏まえた上で、ベストな処理単位の選び方を考察します。 使用する環境・バージョン GitHub Actions: 2022/5/15時点での機能をもとに考察 読者に要求する前提知識 GitHub Actio

    GitHub ActionsにおけるStep/Job/Workflow設計論
  • reviewdogによるGoのコードレビュー - DeNA Testing Blog

    こんにちは。ゲーム・エンターテインメント事業部の鈴木です。 AndAppの開発をしています。 今回は私たちのチームで使っているreviewdogについて、CIの設定やlinterの組み合わせなど、どのようにしてコードレビューに活用しているか紹介します。 reviewdogとは 一言でいうとコードレビューを補助してくれるコマンドラインツールです。 各種linterの実行結果を渡してあげると、Pull Requestなどの差分に関して警告された行を教えてくれます。 私たちのチームではほとんどがGo言語による開発なため、golintなどの結果を表示するために使っています。 開発はGitHub Enterprise上で行なっており、CircleCI Enterpriseからreviewdogを実行すると以下のような警告がPull Requestのレビューコメントとして付きます。 似たようなツール

    reviewdogによるGoのコードレビュー - DeNA Testing Blog
  • モダンなCI/CDでは欠かせないワークフローを使った高度なビルド管理

    これからCI/CDを導入する方にも、すでに活用されている方にも、CircleCIを通してCI/CDに対する理解を深めるお手伝いができれば幸いです。 前回の記事:「CircleCIで始めるCI/CD導入の基のキ」 対象読者 前回の記事を読んでCI/CDに興味を持たれた方 CI/CDについて学びたい方 CircleCIのワークフローを使ってみたい方 新機能Orbsについて詳しく知りたい方 必要な環境/知識 GitHubのアカウント ソフトウェアのテストについての一般的知識 アジャイル開発についての一般知識 筆者について CircleCIの元開発者で、現在はCircleCI初の海外支社であるCircleCI Japanでさまざまな活動を行っています。 CI/CDパイプライン CircleCIでワークフローと呼ばれる機能は、実は似たような名前で他のCI/CDサービスやツールにも用意されています。

    モダンなCI/CDでは欠かせないワークフローを使った高度なビルド管理
    takashabe
    takashabe 2019/02/04
  • CircleCI で継続的 composer update する - enomotodev’s blog

    みなさんは日々 composer update していますか? 使用しているフレームワークの周辺パッケージの更新に追従し続けるのは大変そうにみえますが、きちんとテストを書いていれば日々の composer update もそれほど苦ではないと思います。 反対に composer update をしていないと依存しているパッケージのセキュリティのバグに脅かされたり、いざパッケージのバージョンをあげることになっても差分が大きすぎて、composer update したらテストがほとんどコケる…ということになりがちです。 そのため個人的には週に1回くらいは composer update をし、パッケージを最新にすることによって、常に更新に追従し続ける必要があると考えています。 Ruby には circleci-bundle-update-pr という gem があり、CircleCI で継続的

    CircleCI で継続的 composer update する - enomotodev’s blog
    takashabe
    takashabe 2018/09/02
  • Jenkinsの無秩序なジョブをDigdagで再定義する - log.fstn

    jenkins で回してる ci のジョブを digdag で書き直してみたけど、フローがひと目で分かるし、git で管理できるし、並列化も簡単だし最高だ。— Kosuke Adachi (@foostan) October 8, 2016 ということで Jenkins のジョブを Digdag に置き換えて Git で管理すると最高なので、今困っている人はやりましょう。1日あれば多分終わります。 今回試したのは CI のジョブですが、どんなジョブでも応用できると思います。 詳しく こないだ Rebuild 152 聴いていたらその会話の中に「Jenkinsおじさん」ってワードが出てきたんですよ。 rebuild.fm Jenkinsをそれなりの規模で使っている人ならお馴染みだと思うんですが、Jenkinsって自由度が高くてジョブの編集も簡単にできるから気をつけないとジョブがカオスな状態に

    Jenkinsの無秩序なジョブをDigdagで再定義する - log.fstn
  • CircleCI 2.0でbundle updateを定期実行してみた話 - LIVESENSE ENGINEER BLOG

    こんにちは、IESHILでエンジニアをしている須貝です。 今回は先月ローンチしたIESHIL CONNECT(イエシルコネクト)の運用で、CircleCI 2.0を使ってbundle updateを自動で実行するようにした話をします。CircleCI 1.0ではなく2.0というのがちょっとしたポイントです。 ところで、みなさんCircleCI 2.0を使っていますか? 2.0では純粋なDockerベースになっていてローカルでも実行可能、より柔軟に設定を記述できる、とにかく速いなど1.0と比較すると大幅に進化しています。どんどん使っていきましょう。 やろうとした背景 そもそも何でこれをやろうとしたの?という話なんですが、 IESHIL CONNECTはIESHILとは別に新規開発したRailsアプリです。せっかくの新規開発ですから、IESHIL体の開発では手を回せていないことをやろう、とい

    CircleCI 2.0でbundle updateを定期実行してみた話 - LIVESENSE ENGINEER BLOG
    takashabe
    takashabe 2018/05/21
  • Jenkinsに代わるGo製OSS CIツールDrone - LINE ENGINEERING

    この記事はLINE Advent Calendar 2017の5日目の記事です。 はじめまして。LINEIT支援室という部署で社内システムの開発・運用を担当しております、suzuki-shunsukeです。 DroneというCIツールについて書きたいと思います。初心者向けに公式ドキュメントの「Installation」と「Usage」をベースに自身の経験や考えを肉付けして、Droneとは何か?、Droneの構築方法、.drone.ymlの書き方について説明します。Droneの日語情報はまだまだ少ないので参考になればと思います。 JenkinsよりもDroneを贔屓した部分が見られますが、あらかじめご了承ください。 Droneとは 空飛ぶドローンではありません。GitリポジトリのイベントをフックしDockerコンテナ内でジョブを実行することに特化したCIツールです。競合としてJenkin

    Jenkinsに代わるGo製OSS CIツールDrone - LINE ENGINEERING
    takashabe
    takashabe 2018/04/12
  • CircleCI 2.0に移行して新機能を活用したらCIの実行時間が半分になった話 - クラウドワークス エンジニアブログ

    ⠀人 / ⁰⊖⁰ \ オカメインコエンジニアの五十嵐(@ganta0087)です。 CrowdWorksでは、サービスのCI環境としてCirlceCIを利用しています。 今回、CircleCI 1.0から2.0に移行すると同時に、新機能のキャッシュをフル活用したことで、コストを増加させることなくCI実行時間を半分にすることができました。 今回の記事では、CirlceCI 2.0のメリットや、どのようなチューニングを行ったのかをご紹介します。 CircleCI 2.0について CircleCI 2.0は現在ベータ版となっており、「CircleCI 2.0: Beta Access - CircleCI」から申し込むことができます。(試してみたところ個人のリポジトリではすぐに利用できるようです。) 申請したOrganizationのすべてのプロジェクトで突然バージョンが切り替わるわけではなく、

    CircleCI 2.0に移行して新機能を活用したらCIの実行時間が半分になった話 - クラウドワークス エンジニアブログ
  • 自前CIサーバをスクラッチで書いた

    依存するgitリポジトリが数十あり、Mac上でしか動作しないビルドを動かしている、Jenkinsの移行をすることになった。 Jenkinsについては詳しくない。もちろん勉強すりゃいいという話なのだが、アラフォーで覚えが悪いので、今回は自前で簡単なCIサーバを書いてみました。今回のプロジェクトRubyメインなので、Rubyで。 JenkinsはMovable Typeであり、Wordpressである 僕は、JenkinsをMovable Type/Wordpressのようなソフトウェアだと捉えています。 Movable Typeは「ブログ」というコンテンツ形式を広めたソフトウェアです。Wordpressは、Webの管理画面経由で簡単にプラグインを導入することができ、CMSとしてエコシステムが確立しています。 JenkinsのおかげでContinuous Integrationの概念は広まっ

    自前CIサーバをスクラッチで書いた
  • CircleCIアンチパターン 2015春 - tehepero note(・ω<)

    2015-03-31 CircleCIアンチパターン 2015春 CI CircleCI Docker 今日はCircleCIで気持ちよくCIを回すために、抑えておいた方が良いアンチパターンについて書きます。わりと基的な話なので、心当たりがあれば見直してみると良いと思います。 Fat Repository Anti Pattern(巨大なリポジトリ) CircleCIのコンテナは使い捨てですが、対象のリポジトリを毎回cloneするのではなくて、2回目移行は前回のCI時にキャッシュしておいたリポジトリを利用することで差分取得を実現しています。 checkoutフェーズのRestore source cacheのことですね。 この手法によって最新取得のコストを大幅に低減することができますが、コンテナ初期化時にS3からリポジトリのアーカイブを取得するという特性上、あまりにも巨大な数GB超えのリ

    CircleCIアンチパターン 2015春 - tehepero note(・ω<)
    takashabe
    takashabe 2015/11/13
  • 開発者テストの失敗を追跡しやすくすることで大人数での Web サービス開発を加速する - クックパッド開発者ブログ

    会員事業部サービス開発グループ長の村田です。 私は2015年1月から会員事業部でサービス開発エンジニアをやっていますが、2014年4月までは技術部開発基盤グループで Web サービス開発を加速させる様々な取り組みを実施していました。稿では、開発基盤グループ時代に私が取り組んだ開発者テストの失敗を追跡しやすくする取り組みについて説明します。 クックパッドの Web サービス開発と CI クックパッドのサービス開発は、大きくても5名くらいの小さなチームが一つの機能を担当します。しかし、多数のチームが1つの大きな Rails アプリケーションを同時に変更するのが特徴です *1。 Web サービス開発を加速する工夫には様々な方向性が考えられますが、ここでは、クックパッドのようなスタイルでの Web サービス開発を加速するために開発者テストを何如に円滑にするかを考えます。 図: オムキンス クック

    開発者テストの失敗を追跡しやすくすることで大人数での Web サービス開発を加速する - クックパッド開発者ブログ
  • はてなにおける継続的デプロイメントの現状と Docker の導入

    2015 年 1 月 11 日に開催された 「Jenkins ユーザ・カンファレンス 2015 東京」 での発表資料です。Read less

    はてなにおける継続的デプロイメントの現状と Docker の導入
  • Goで書かれたmackerel-agentのOSS化や自動化にまつわるあれこれ

    https://github.com/mackerelio/mackerel-agent Goで書かれたユーザーのサーバーにインストールされる常駐プログラム シングルバイナリが吐けるのでセットアップが簡単 マルチプラットフォーム対応が比較的容易 OSX/Windowsでも動作可能(現状サポート外) 常駐プロセスを書くことに向いている フットプリントが小さく監視対象のサーバーのパフォーマンスに影響を及ぼさない

  • 無料で使える CI サービス 8 個まとめ - 永遠に未完成

    CI サービスをいくつか触ってみたのでまとめ。 今回の目的は、テストを実行すること。なので、ビルドやデプロイ辺りはちゃんとは見ていない。 ドキュメントで確認しただけの項目などもあったりするので、間違っていたらごめんなさい。教えてもらえると助かります。 ただ、これは記事を書いた時点での比較で、今後のサービスの変更に対応する予定はないです。 触ってみたサービス一覧 アルファベット順。 AppVeyor CircleCI Drone IO Magnum CI semaphore shippable Travis CI wercker codeship ってのもあったけど、無料プランは月100ビルドまでとかで常用には耐えないと感じたので中身見てない。 機能比較 機能比較は全て無料プランでのもの。有料だと対応している場合でもここでは x にしている。 比較項目は私の独断と偏見で適当に選出した。 項目

    無料で使える CI サービス 8 個まとめ - 永遠に未完成
    takashabe
    takashabe 2015/01/13
  • 1