2016/06/11のフロントエンドカンファレンスのLTで発表した資料です。
2016/06/11のフロントエンドカンファレンスのLTで発表した資料です。
世の中のみんなは今日も頑張ってOSSのミドルウェアを書いていることと思いますが、そんな我々に欠かせないのがTravis CIというサービスでして、OSSならCI環境を無料で使わせてもらえる! マジで最高のサービスだと思います。日本からだとUSの人達が元気な時間帯とズレてるせいか、pushしたあとビルドが走るのが早くて本当にありがたい。*1 で、CIを回すからには対象の言語バージョンといっしょにOSの違いも確認したい。標準の環境の Linux (Ubuntu) 以外に最近ではなんとOSX環境もあるので、ミドルウェアプログラミング野郎としてはやっぱり両方で動かしておきたいわけです。言語バージョンももちろんあれやこれや、古いの*2から新しいのまで色々動かしたい。 しかしそこには問題があって、有限のリソースというものがある以上、野放図に指定はできないわけです。 普通にバージョンを指定 単に組合せで
いまさら感もあるのだけど、あまり知られていないようなのでTravis CIの高速化+αなtipsを書いておく。 先にNode.js向けの完成形の.travis.ymlはこちら。 language: node_js node_js: - "0.12" - "4" - "6" sudo: false cache: directories: - node_modules Tipsは3つ。 テスト対象のNode.jsバージョンを指定する sudo: false: コンテナベースの環境を使う cache: 依存パッケージをキャッシュする テスト対象のNode.js/io.jsのバージョンを指定する 最近はカジュアルにio.jsを使う人/プロジェクトが増えてきている(要出典)ので、特に政治的な理由でもなければnpmパッケージのテストはNode.jsとio.jsの両方で流しておくのが良いと思う。.tra
Travis CIからデプロイ Travis CIにはDeploymentという機能があり、Heroku等色々なサービスに対応しています。 その一つとして、GitHub Releasesに対してファイルをデプロイする事が出来ます。 Travis CI: GitHub Releases Uploading Git tagとGitHub ReleasesとCHANGELOG.mdの自動化について | Web Scratch GitHub Releasesの使い方に関して zipファイルならなんでも登録でき、登録するファイルサイズはリポジトリにpushするより大きくても問題ないので、バイナリサイズがでかいnode-webkitアプリには向いていると言えます。 この記事は基本的にはTravis-CI で Go の Windows 用バイナリを Github release に登録する - Qiit
まえがき NHK番組表APIのjavascript版を作りました。 NHKの番組表APIが発表されてて、皆思い思いに好きな言語で実装されていくのを見てました。 Golang : https://github.com/mattn/go-nhk Scala : https://github.com/seratch/nhk4s Perl : https://github.com/moznion/WWW-NHKProgram-API Python : https://github.com/drillbits/nhk-api Ruby : https://github.com/mitukiii/nhk_program-for-ruby Emacs : https://github.com/gongo/emacs-nhk-program Titanium : https://github.com/h5
継続的インテグレーションができるようになったのなら、あとは継続的デプロイメントまでやっていただきたいし、大切なのは倍返しじゃなくて繰り返しだねってことで表題の通り。 前にやろうとして調べた時は、HerokuのAPIキーを暗号化して自前でデプロイ用スクリプトを用意して…てな感じでややこしそうだったけど、今はTravis CIで正式に対応していて、コマンド一発で設定できてしまう簡単さで、驚きのあまり出向しそうになった。 The Travis CI Blog: Introducing Continuous Deployment to Heroku HipChatに通知を送る時にも使ったtravis gemからその設定を行える。 $ travis setup heroku Deploy only from ruedap/daplog? |yes| yes Encrypt API key? |yes
たとえば NodeJS 0.9.x などの開発版の環境でCIしたい、でもそのテストの失敗は必ずしもプロジェクトのバグとは限らないので通知はいらないしビルドステータスには影響してほしくない、というケースはあると思います。Travis-CIでこれを設定するにはallow_failuresというのが使えるようです。以下は JSX の .tavis.yml です。 language: node_js node_js: - 0.6 - 0.8 - 0.9 matrix: allow_failures: - node_js: 0.9 # We want to be notified when something happens. notifications: irc: channels: - "irc.freenode.org#jsx" on_success: change # [always|nev
Travis CIを始めとするウェブサービスとして使えるCIを使って、 JavaScriptのブラウザテスト(ブラウザ上でJavaScriptを走らせて行うユニットテスト)をやる方法をサービスごとにまとめてみました。 テストフレームワークとして Buster.JS を使用して行います。 Karma (旧Testacular) では公式サイトにも Karma – Travis CI でCI Serviceとの連携方法が記載されているのでそちらも参考にして下さい。 今回紹介するCI Servicesは以下のものです。 Travis CI drone.io BuildHive Jepso CI テスト実行の流れ Jepso CI を除いては、テスト実行の流れ自体は同じなので先に解説します。 Capture用のローカルサーバを立てる テストしたいブラウザで capture URL へアクセスする
This documentation site is Open Source. The README in our Git repository explains how to contribute. Travis CI relies on Open Source licensing information. What This Guide Covers # This guide covers headless GUI & browser testing using tools provided by the Travis CI environment. Most of the content is technology-neutral and does not cover all the details of specific testing tools (like Poltergeis
Travis CIでブラウザテスト¶ Travis CI はGithubアカウントを使ってログインして利用するCIサービスで、CIしたいプロジェクトを選択すればGithubへpushにhookしてテストが実行されます。 実行するテストの設定ファイルを .travis.yml に書いて置くことでどのようなテストを実行するかを設定できます。 テストが失敗したり、失敗してたテストが直った場合はメールで通知などを飛ばすこともできます。 また、テストの成否はコマンドの終了ステータスで行われていて、 0 なら成功、それ以外だと失敗というステータスになります。 大抵のテストフレームワーク(or 実行環境)などはちゃんと終了ステータスを返してくれるのでテストの成否は正しく判定できます。 こういうウェブサービスの場合、DOMやXHRなどがないJavaScriptのロジックテストのみしか動かせないように思われ
If it won't be simple, it simply won't be. [Hire me, source code] by Miki Tebeka, CEO, 353Solutions travis-ci is a great service. My problem is that it works only with github while I mainly use bitbucket (and please, let's not get into hg/git debate - hg is way better :). The way I found to make this work is to mirror my bitbucket projects on github using hg-git. Below is an example from fastavro.
やってみた。Travice CIにログインしたら自分のGithubのプロジェクトが一覧で出るのでCIしたいプロジェクトをONにする。んでgithubのプロジェクトに.travis.ymlおいてpushするだけ。超簡単。 http://travis-ci.org/#!/hokaccha/node-chain-tiny .travis.ymlはこんなん。 language: "node_js" node_js: - 0.4 - 0.5 - 0.6 テストはnpm testで実行されるっぽいのでpackage.jsonのscripts.testのとろろに実行したいコマンドを書いとく。 これでpushする度にテストしてくれて結果をメールとかで知らせてくれる。 chain-tinyはnodeの0.5と0.6でnodeunitの指定してたバージョンが古くてテスト落ちてた。こういうの気づきにくいのでホン
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く