TypeScript+Browserify+mochaでフロントエンド開発環境
成果物
動機
TypeScriptでフロント開発するときにテストコードもtsで書きたい(という話を聞いた)
使ったもの
- Node v5.1.0
- TypeScript v1.7.5
- gulp
- browserify
- mocha
- power-assert
出来ること
gulp-mochaでtsのプロダクトコード・テストコードをテストしながら開発
browserifyでbundleしてブラウザで実行可能な状態に
他にもやったこと
- gulp-mocha使わずmocha単体で
mocha --compilers ts:espower-typescript/guess test/*.ts
- gulp-typescriptで一時的にファイル吐き出すtaskの定義(トランスパイル後のファイルをテストしたいケースとかで使える?)
やってないこと
- watchfyで差分ビルド
CentOS6.5にvagrantをいれた
なぜか
- 物理マシンに全部入れるの、めんどくさい(環境の違いとか
- 同じマシンでアプリケーションとかDBとか全部動かすの嫌だった
- ヒャッハァー!!汚物は消毒だァー!!が出来るのは素晴らしい
- Dockerでいいじゃん説はすごいあるけど、とり急ぎアプリ動かせる環境が欲しかったので避けた
まずVirtualBoxいれます
dkmsというのを入れておくといいらしいので先に入れる。 yumリポジトリの指定は32bitの方を。マシンが32bitなので
$ sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm $ sudo yum info dkms $ sudo yum install -y dkms
次にVBox
$ cd /etc/yum.repos.d/ $ sudo wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo $ sudo yum install -y VirtualBox-4.3 $ sudo usermod -a -G vboxusers app
そしてvagrant
$ sudo yum -y install rubygems $ wget http://files.vagrantup.com/packages/7ec0ee1d00a916f80b109a298bab08e391945243/vagrant_1.2.7_i686.rpm $ sudo rpm -ivh vagrant_1.2.7_i686.rpm
これだけだとバグがあって動かないみたいなのでコードを直接修正しなきゃいけないとか。怖い。
cd /opt/vagrant/embedded/gems/gems/vagrant-1.2.7/plugins/hosts/fedora/ vim host.rb diff host.rb host.rb.org 39,40c39 < #version_number = /Fedora.*release ([0-9]+)/.match(f.gets)[1].to_i < version_number = /[Fedora|CentOS].*release ([0-9]+)/.match(f.gets)[1].to_i --- > version_number = /Fedora.*release ([0-9]+)/.match(f.gets)[1].to_i -[3298]% cat /etc/redhat-release
このあとvagrant init
して無事Vagrantfileが生成された。
が、vagrant upしようとするとvirtualboxが立ち上がらない。dkmsがどうのって文句言われている。
とりあえずvirtual boxとかdkmsをyum remove
してやって最初からやり直し。
ググったらdkmsの対処まで含めて手順を後悔してる記事があったので、それの通りにvirtual boxをセットアップする
ここのsudo /etc/rc.d/init.d/vboxdrv setup
までやって、すべてOKだったのでvagrant up
無事マシンが起動された。
所感
楽だと思ってたのにすごいめんどうくさかったです。
参考リンク
vagrantをCentOS6.4にインストール 32bit と 64bit CentOS 上で Vagrant を導入するまでのメモ(CUI) VirtualBox導入手順(CentOS 6.4) DKMSのビルドで「Your kernel headers for kernel 2.6.32-358.xxx cannot be found at /lib/modules/2.6.32-xxx/build or /lib/modules/2.6.32-358.xxx/source」というエラーが出る
chocolatey使ってみた
Windowsでパッケージ管理ソフトがあるという話を最近よく見かけたので、なんもソフトが入っていないWinタブで試してみました。
環境
- win8.1
- chocolatey0.9.9.5
やったこと
ここを参考にしつつ。
Chocolateyをインストール: Cygwinからも使う
管理者でcmdを開いて、以下のコマンド。
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%systemdrive%\chocolatey\bin
然る後に、以下のpackages.configをchoco install
<?xml version="1.0"?> <packages> <package id="ConEmu" /> <package id="Everything" /> <package id="Firefox" /> <package id="VBoxGuestAdditions.install" /> <package id="adobereader" /> <package id="ccleaner" /> <package id="chgkey" /> <package id="chocolatey" /> <package id="dropbox" /> <package id="git" /> <package id="google-chrome-x64" /> <package id="lhaplus" /> <package id="python2" /> <package id="vagrant" /> <package id="vim" /> <package id="virtualbox" /> <package id="winmerge-jp" /> <package id="skype" /> <package id="visualstudiocode" /> </packages>
結果
何個かこけたので、それだけ後で調べます。
おわり。