「日経電子版×Sansanアプリ開発プロジェクト成功への道〜アプリ開発者勉強会Vol.3」で発表した資料です。 http://connpass.com/event/16885/
「日経電子版×Sansanアプリ開発プロジェクト成功への道〜アプリ開発者勉強会Vol.3」で発表した資料です。 http://connpass.com/event/16885/
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がいい感じに調整してくれるのでGitHubのprivateリポジトリをCircleCIでテストするのは簡単ですが、テスト過程で他のprivateリポジトリをcloneするにはちょっとした工夫が必要になります。 CircleCIにuser keyを登録する まずCircleCIの "Project settings" > "Checkout SSH keys" に行きます。 みたいなのがあるので、ボタンをクリックします。するとGitHubのOAuthページが表示され公開鍵への書き込み権限を要求されるので許可します。 これによりあなたのGitHubアカウントに新しい公開鍵が設定され、それに対応する秘密鍵がCircleCI上に登録されます。なので、あなたがアクセス権限を持つGitHub上のPrivateリポジトリにはこの時点で全てこのCircleCIのプロジェクトからはア
はじめまして!今年1月からジョインしましたtjinjinです。feedforceではアニメインフラを担当しています。ちなみに今季オススメアニメはSHIROBAKOです。 今回サーバCIにDockerを導入しましたので、実際の設定や工夫した点など投稿したいと思います。 feedforceのサーバCI 弊社ではこれまでCircleCIまたはJenkinsとAWSを組み合わせてサーバのCIを行って参りました。 参考: JenkinsでサーバのCIを始めました しかし、CircleCIを利用するプロジェクトが増えるにつれ、CircleCIに実行待ちが発生するようになりました。CircleCIの実行ログを確認したところ、AWSのセットアップに時間がかかっていることがわかったので、環境のセットアップ時間を短縮できるもののはないかと探していました。そんな折、Dockerがいいのではという話を耳にしました
tl;dr 変更したファイルにrubocopやjscsを実行して、pull requestに自動でコメントさせる方法。 コマンドをパイプでつないで、CIからsaddlerコマンドで書き込みする。 デモリポジトリに rubocop, travis ci, jscs, travis ci エラーになるpull requestしてみてね! saddlerの実行結果イメージ 一番目がjscs, 二番目がrubocop。 流れ diffのあるファイル名を取り出す $ git diff --name-only origin/master README.md bin/run-tests.sh lib/example/travis_ci.rb こんなdiffにrubocop や jscsを実行したい。 diffのあるファイル名を取り出す。 lint実行したいファイルだけに絞り込む $ git diff -
TL;DR Terraform + GitHub + CircleCI + Atlas を用いてAWSの操作を自動化した 各ツールの役割は下記のような感じ Terraform => インフラへの変更ツール GitHub => .tfファイルのバージョン管理 CircleCI => CI、Terraformをawsに対して実行 Atlas => インフラの状態を記録するterraform.tfstateの管理 インフラの継続的デリバリー - naoyaのはてなダイアリーにて、言及されていた範囲(Route53の変更、Chefの適用)をAWSの操作全体に拡大した 背景 今までの問題点 AWSの各種操作がブラウザからポチポチ業… 手作業なので誤操作に気づきにくい。事故りやすい インフラの実構成がバージョン管理出来ていない ちなみにRoute53に関してはroadworkerを用いてコードで管理済
CircleCI自体もコンテナなんだが、さらにその上でdockerコンテナ立ててcookbookのテストしてしまうというアレです。 「Docker使えるならChef要らないじゃん」という話は大賛成なんだが、既存のcookbook資産を使いたいことも、まあある。 【追記】続きにさらにテストの時間短縮させる工夫書いた 動いたの? 動いた!!!!!!!!!!! 最小限で動いたところでタグを切った。コードは下記リンク参照。 CircleCI上で、 「chefでdockerコンテナにcookし、それをserverspecでテストする」 を実現しています。 以下、ポイントなど CircleCIでdockerをどう準備するか 無理にapt-get -y install dockerとかやってインストールしても、docker psすら返ってこなくなる。 公式にサポートしてるserviceを使うとうまくいっ
Jan 7, 2015 ※ 現在(2015/01/07)Circle CIのiOSビルドはベータとなっているため、利用するにはサポートへの連絡が必要です。 できること GitHubへのコミット毎に以下のタスクを実行します。 ユニットテストの実行 ipaの作成 ipaのバリデーション CrittercismにdSYMをアップロード Circle CIにテストレポートを出力 iTunes Connectにipaをアップロード これらの作業を自動化すると、masterブランチにgit pushするだけでテストが通ったアプリがiTunes Connectに登録され、 TestFlight(新)からダウンロードできるようになり、そのままApp Storeに申請することまで出来るようになります。 Circle CIのメリット 無料(1 container) 見た目がきれい private reposi
はじめに 皆様、新年あけましておめでとうございます 今年も不定期に思いつきで記事をあげていくのでよろしくお願いいたしますm(_ _)m 昨今TravisCIに代表されるCIサービスが流行ってますね。 Rettyでは内製JenkinsでCIを頑張っているのですが、CircleCIでiOSのBetaできるよって公式ドキュメントを見つけたので、大晦日〜正月にかけてトライしてみました。 だいぶ記事が長いので「結論から知りたい」という方はこちらのまとめから御覧くださいませ。 CircleCI事始め アカウントの作成 まずはアカウントを作ります。 アカウントはGithub認証を利用したものになるため、Githubアカウントがないと登録できません。 CircleCIのアカウント作成はこちらからどうぞ。 対象リポジトリの選択 登録したらまずはCI対象にするリポジトリを選びます。 アカウントにOrganiz
この当時の内容と大きく変わっていませんが、最新のRails開発について公式テックブログに書きました。そちらも合わせてご参照ください。 この記事はGunosy Advent Calendar 2014の22日目の記事です。 こんにちは、Gunosyのtoshimaruです。Gunosyでは主にRuby on Railsアプリを担当しています。 はじめにGunosyでは昨年度よりAPIの実装をRails実装からGo実装へと変えたことでAPIのパフォーマンスの大幅な改善が行われました。そんなわけで「GunosyってRails捨ててGoを使ってるんじゃないの?」とお思いの方もいらっしゃるかもしれませんがそんなことはありません。大規模アクセスのない管理画面などではRuby on RailsはまだまだGunosyで現役バリバリです1。高速にWEBアプリを作る必要のあるシーンにおいてはGoはRailsに
PHPerがRailsデビューしてWebAPIを作りRSpecでテスト書いてCap3/CircleCIでデプロイして分かった事を1ヶ月前の自分に教えたいので、まとめてみたRubyPHPRailsRSpec タイトル長い。すまぬ。PHPerとして約10年近く。Ruby自体は案件によってちょこっとだけ触ったことがある程度。Rails自体を本格的にさわるのは今回が初めて。PHPだとCakePHPを中心にZend/Symfonyなどいくつか。そんな僕が今回、Rails4デビューをして、WebAPIを作り、RSpecでテスト駆動開発風味で、GitHubプルリクベースの、CircleCI経由デプロイをするまでの開発の流れをひと通りやってみて、分かったことがいくつかあったので、それをまとめてみた。過去の自分のために。 注意点としては、今回作ったのはWebサービスではなく、スマホゲーム(ネイティブ)のサー
VAddyとCircleCIを組み合わせると、簡単に継続的セキュリティテスト環境が実現できます。 git pushするとCircleCIのジョブが起動し、テストサーバにコードをデプロイ、そのテストサーバに向けてVAddyからWebの脆弱性検査を実施します。 今回は、 git push -> Unit test -> Deploy(Staging) -> VAddy test -> Deploy(Production) という流れで解説します。 Unit testが失敗した場合は後続の処理は行われませんし、VAddy testが失敗した場合も本番にコードがデプロイされません。 こうして、ユニットテストとWeb脆弱性検査を定期的に実施して問題のないコードのみを本番環境にデプロイできます。 前提 この記事では、CircleCIインスタンス内に立てたWebサーバに対しての脆弱性検査ではなく、Cir
This document describes how to skip or cancel work when triggering pipelines. There are a couple of ways to do this. The jobs within a pipeline can be skipped on commit, or workflows can be cancelled using the auto-cancel feature. Both methods are described below. By default, CircleCI automatically triggers a pipeline whenever you push changes to your project. You can override this behavior by add
フロントエンドのパラダイムを参考にバックエンド開発を再考する / TypeScript による GraphQL バックエンド開発
少し前までアプリケーションのデプロイと言えば capistrano などをコマンドラインから叩いてデプロイ、みたいなことをやっていたが、最近は少し様子が違うのでそのやり方、KAIZEN platform Inc. での事例を紹介する。 GitHub のイベントを契機に CI as a Service にデプロイを担当させる GitHub で Pull Request を送って開発するのが前提になっているのは以前にも紹介した。 最近は Travis CI や CircleCI などに代表される CI (Continuous Integration) as a Service があって、CI も自分たちで環境を構築しなくてもクラウドに任せることができる。KAIZEN では CircleCI を積極的に使っている。 これらの CI as a Service は基本的に GitHub と連携するこ
2024年4月1日より、Supership株式会社は親会社であるSupershipホールディングス株式会社に吸収合併されました。 合併に伴い、存続会社であるSupershipホールディングスは社名をSupershipに変更し、新たな経営体制を発足しました。本件に関する詳細は、プレスリリースをご確認ください。 2024年4月1日より、Supership株式会社は親会社であるSupershipホールディングス株式会社に吸収合併されました。 合併に伴い、存続会社であるSupershipホールディングスは社名をSupershipに変更し、新たな経営体制を発足しました。 本件に関する詳細は、プレスリリースをご確認ください。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く