現在使用されているシェルが知りたい
echo $SHELL
Linuxでユーザ環境設定ファイル(bashの場合)
2014年8月26日火曜日
HoundCIホスティングでエラー
README通りに
./bin/setup
を実行して色々引っかかりながら進めてきたけど、
下記エラーを克服できずにはまってます。。。
remoteってどこなんでしょう?
./bin/setup
を実行して色々引っかかりながら進めてきたけど、
下記エラーを克服できずにはまってます。。。
remoteってどこなんでしょう?
2014年8月24日日曜日
An error occurred while installing pg (0.17.0), and Bundler cannot continue.
HOUND CIを入れる過程で発生。
brew install postgresql
上記を実行することで解決。
brew install postgresql
上記を実行することで解決。
An error occurred while installing capybara-webkit (1.1.1), and Bundler cannot continue.
HOUND CIを入れる過程で発生。
macの場合は下記で行う
libqtwebkit-devライブラリを追加することで解決するようだ。
→参考
macの場合は下記で行う
brew update
brew install qt
rvmでのRubyバージョンアップデート方法
RVMでRubyのバージョンアップ
rvmのアップデート
rvm get stable
Rubyの新しいバージョンをインストール
rvm install 2.1.2
rvm use 2.1.2
rvm use 2.1.2 --default
rvmのアップデート
rvm get stable
Rubyの新しいバージョンをインストール
rvm install 2.1.2
rvm use 2.1.2
rvm use 2.1.2 --default
モダンなインフラ環境で使用する用語整理
インフラ周りのツールの意味がよくわからなくなったので整理。
- Chef
サーバ構築作業の自動化ツール。
レシピは構築方法と言うより、サーバのあるべき状態を記述したもの。
Chefはレシピの記されたとおりにサーバの状態を収束させることを行う。
処理内容はRuby構文を使用可能。
似たツールとしてPuppetやCFEngineがある。
シェルよりも簡単に記述できる。 - Vagrant
サーバ仮想化ソフトウェア(VirtualBoxなど)への操作をコマンドで行えるようにし、仮想サーバの作成、立ち上げ、破棄を可能にするRuby製ソフト。 - Docker
アプリ開発者もインフラ管理者も知っておきたいDockerの基礎知識
コンテナ管理ソフト。
コンテナ型であるためクラウド上での制約を受けにくく、OSブートが必要ないため高速で動作する。
ハイパーバイザ型…ハイパーバイザの上に仮想マシンを載せ、仮想マシン上にOSやミドルウェア、アプリケーションが載っている。
コンテナ型…コンテナとはWebサーバなどのアプリケーション実行環境を管理する仕組み。OSの上にコンテナ管理ソフトが載り、コンテナ上にミドルウェアやアプリケーションが載る。 - フロントエンド
ユーザーに対して最も全面にある仕組みや環境のこと。
UIと同じ意味で扱われることが多い。
データ入出力や処理はバックエンドと呼ばれる。 - トポロジー
形態。位相幾何学。
2014年8月10日日曜日
DevLOVE現場甲子園に向けて2014途中経過メモ
CI
会社のプロジェクトに適用中であるが、未完成である。
完成させることができれば自分で始めたCI環境構築実績として残る。
Windowsの場合は以外にバッチが難しいけど、少し慣れてきた。
既存プロジェクトの変更を行うのはやっぱり難しい。みんな結構簡単そうにやってない?
Ruby
Railsの仕組みに関して理解した。
Railsに関してコマンドの種類はある程度把握して、
何かするときにどこを調べればよいかわかるようになった。
Ruby on Rail Tutorialを5回ほど写経したのが良かった。
勉強会
社内の方と知り合いになることが出来た。
初めて懇親会に参加も出来た。
課内での発表を行った。
AdventCalendarをやろう。
TDD
Railsでのテストを少し行えるようになった。
OSS
Jenkinsのバグと思われる部分を治そうとしたが、
バグではなかった。
しかしソースを追うことが出来た。
Git
基本的な開発に使う分には問題がない。
過去ブランチの変更方法とコミットの検索を行えるようにする。
結論
前回から自分が成長した点
去年のDevLOVE甲子園では、現場を変えた発表が多かったしそういったものを進んで聞きに行った。
自分はなにをした?CI、バージョン管理、Gitの管理者にもなれるように今あと一歩の状態。
3本柱のうち自動テストはこの後でやる。上に上げた太字が今年の後半でやること。
現場を変えていく。
今回参加の目的は?
自分がどれだけ彼らに近づけたか測る。
今回の参加でみんなは現場をどう変えたのか再度学びに行く。
2014年8月4日月曜日
2014年7月23日水曜日
2014年7月11日金曜日
2014年5月25日日曜日
20140524_yokohama.devtestingメモ
この本で言っているユニットテストとは?
→オブジェクト間の振る舞いを表すテスト。
あるメソッドを呼んで、それがどういった戻り値を返すといったことをテストするのではなく、
あるメソッドにオブジェクトを渡した時にそれが内部でどう扱われているかといったことをテストする。
振る舞いをテストするといった時にテストコードがスパゲッティになることを防いで、
やるテストをはっきりさせること。
メソッド名で振る舞いを表せれば、テスト内容も振る舞いに寄って行きそうだよね。
ユースケースシナリオ
ユースケースシナリオとユニットテストの間でこのデータがどこのテーブルと関連づいているかは
テストする前にはっきりさせておく必要がある。
列車事故が悪いのは、
・クラスの内部構造まで把握しなければいけないこと
・呼び出し元が期待した結果を一発で返していないこと
・テストを保守するときに難しくなる
複数の責務がある場合にはその責務は全て分割されているのであれば、
それをまとめる行為に別の名前があるから、その名前がメソッド名になる。
→オブジェクト間の振る舞いを表すテスト。
あるメソッドを呼んで、それがどういった戻り値を返すといったことをテストするのではなく、
あるメソッドにオブジェクトを渡した時にそれが内部でどう扱われているかといったことをテストする。
振る舞いをテストするといった時にテストコードがスパゲッティになることを防いで、
やるテストをはっきりさせること。
メソッド名で振る舞いを表せれば、テスト内容も振る舞いに寄って行きそうだよね。
ユースケースシナリオ
ユースケースシナリオとユニットテストの間でこのデータがどこのテーブルと関連づいているかは
テストする前にはっきりさせておく必要がある。
列車事故が悪いのは、
・クラスの内部構造まで把握しなければいけないこと
・呼び出し元が期待した結果を一発で返していないこと
・テストを保守するときに難しくなる
複数の責務がある場合にはその責務は全て分割されているのであれば、
それをまとめる行為に別の名前があるから、その名前がメソッド名になる。
2014年5月6日火曜日
Ruby on RailsからMySQL接続に発生するエラー
2014年5月3日土曜日
プロファイルがHIDの時RN-42とOSX間で通信が途絶える件について
RN-42レポート
秋月で売っている安価なBluetoothモジュールについて記す。
もともとこのモジュールをなぜ手にしたかというと
HHKBを無線化したかったからである。
http://addsict.hatenablog.com/entry/2013/07/27/164647
HHKBは無線版が存在しない。
しかも最近公式から下記のような商品が出た。
http://www.pfu.fujitsu.com/direct/hhkb/detail_enebrick.html
違う…違う…
俺(ら)がほしいのはそれじゃない…。
というわけでGWだし、参考サイト見る限り2日で行けそうと思ったのでやってみたわけだ。
しかし、ここで使ってるBluetoothモジュールRN-42に問題が発生しどうも動かない。
というわけで、悪戦苦闘した結果を伝えたいと思う。
HHKBの無線化は参考サイト通りやるだけで動くようになる(RN-42は秋月の評価版を使用)
http://akizukidenshi.com/catalog/g/gK-07378/
とても素晴らしい。
ただし参考サイトで使っているモジュールはRN-42HIDというもので秋月では手に入らないものになっている。
それとArduinoからRN-42への入力は分圧しているが、
私の環境では分圧しちゃうと信号が届かないので分圧はしなかった。
データシート見る限り分圧しないとモジュールが壊れる気はする。
分圧版
http://secretbase-of-forest.blogspot.jp/2014/04/rn42bluetootharduinoandroid.html
非分圧版
http://benkyo-chu.blogspot.jp/2014/04/rn-42-bluetooth-bluetootharduinoled.html
私の環境で秋月のRN-42評価版を使用した場合に問題が起きるのは、
通信相手としてMBAを選択した場合だけであった。
Windows7とiPhone5では問題が起きず通信が途切れることはないのだが、
MBAとの通信でのみキーボードとの通信が5〜6秒ごとに途絶え、その間のタイプが無視されてしまっていた。
調べてみるとArduinoとHHKBには問題がなく、
RN-42とMBA(OSX 10.9.2)間でのやりとりに問題があるようであった。
このことはRN-42に電源供給のみで他の部品を接続していない状況で
MBAとペアリングを行い、挙動を確認することで判明した。
この組み合わせでも一定間隔でRN-42のLEDが消え、かつBluetoothの接続がMBA側で途切れていることが確認でき、通信→切断→再接続…を繰り返していた。
これはWindows7やiPhone5間ではない挙動であった。
柱上変圧器さんと同じ症状である。[RN-42-EK HID版だが]
(下記コメント欄)
https://www.youtube.com/watch?v=I2gzqrchnlQ
参考サイトの作者に問い合わせを行って見たところ、
やはりRN-42HID版を手に入れてやるのが良いとの助言。
また、OSX 10.9 Marvericksで、途切れる症状は出たことがないとのこと。
参考サイトで同じ症状が出ているもなかさん(下記コメント欄)とも連絡をとってみたところ、
http://addsict.hatenablog.com/entry/2013/08/18/170204
GalaxyNexus(Android)では症状が出ずに、
MBP(OSX)で同じ症状が出ていたとのこと。
RN-42評価版とOSXの組み合わせ(プロファイルはHID)で症状が出るみたい。
取り敢えずもうネット情報でも太刀打ち出来なくなったのでサポートに聞いてみることにする。
誰か何か知ってたら教えて。
参考までにRN-42の設定は下記である。
Mode = Pair
Profile= HID
HidFlags=200
Authen=1
PinCode=1234
秋月で売っている安価なBluetoothモジュールについて記す。
もともとこのモジュールをなぜ手にしたかというと
HHKBを無線化したかったからである。
http://addsict.hatenablog.com/entry/2013/07/27/164647
HHKBは無線版が存在しない。
しかも最近公式から下記のような商品が出た。
http://www.pfu.fujitsu.com/direct/hhkb/detail_enebrick.html
違う…違う…
俺(ら)がほしいのはそれじゃない…。
というわけでGWだし、参考サイト見る限り2日で行けそうと思ったのでやってみたわけだ。
しかし、ここで使ってるBluetoothモジュールRN-42に問題が発生しどうも動かない。
というわけで、悪戦苦闘した結果を伝えたいと思う。
HHKBの無線化は参考サイト通りやるだけで動くようになる(RN-42は秋月の評価版を使用)
http://akizukidenshi.com/catalog/g/gK-07378/
とても素晴らしい。
ただし参考サイトで使っているモジュールはRN-42HIDというもので秋月では手に入らないものになっている。
それとArduinoからRN-42への入力は分圧しているが、
私の環境では分圧しちゃうと信号が届かないので分圧はしなかった。
データシート見る限り分圧しないとモジュールが壊れる気はする。
分圧版
http://secretbase-of-forest.blogspot.jp/2014/04/rn42bluetootharduinoandroid.html
非分圧版
http://benkyo-chu.blogspot.jp/2014/04/rn-42-bluetooth-bluetootharduinoled.html
私の環境で秋月のRN-42評価版を使用した場合に問題が起きるのは、
通信相手としてMBAを選択した場合だけであった。
Windows7とiPhone5では問題が起きず通信が途切れることはないのだが、
MBAとの通信でのみキーボードとの通信が5〜6秒ごとに途絶え、その間のタイプが無視されてしまっていた。
調べてみるとArduinoとHHKBには問題がなく、
RN-42とMBA(OSX 10.9.2)間でのやりとりに問題があるようであった。
このことはRN-42に電源供給のみで他の部品を接続していない状況で
MBAとペアリングを行い、挙動を確認することで判明した。
この組み合わせでも一定間隔でRN-42のLEDが消え、かつBluetoothの接続がMBA側で途切れていることが確認でき、通信→切断→再接続…を繰り返していた。
これはWindows7やiPhone5間ではない挙動であった。
柱上変圧器さんと同じ症状である。[RN-42-EK HID版だが]
(下記コメント欄)
https://www.youtube.com/watch?v=I2gzqrchnlQ
参考サイトの作者に問い合わせを行って見たところ、
やはりRN-42HID版を手に入れてやるのが良いとの助言。
また、OSX 10.9 Marvericksで、途切れる症状は出たことがないとのこと。
参考サイトで同じ症状が出ているもなかさん(下記コメント欄)とも連絡をとってみたところ、
http://addsict.hatenablog.com/entry/2013/08/18/170204
GalaxyNexus(Android)では症状が出ずに、
MBP(OSX)で同じ症状が出ていたとのこと。
RN-42評価版とOSXの組み合わせ(プロファイルはHID)で症状が出るみたい。
取り敢えずもうネット情報でも太刀打ち出来なくなったのでサポートに聞いてみることにする。
誰か何か知ってたら教えて。
参考までにRN-42の設定は下記である。
Mode = Pair
Profile= HID
HidFlags=200
Authen=1
PinCode=1234
2014年4月20日日曜日
JenkinsのJDK自動インストールで間違ったアカウントを設定すると以後使えなくなる件について
古いJDKをダウンロードするにはオラクルアカウントが必要になる。
Jenkinsでも例外ではなく、初期にアカウントの入力が求められる。
初期設定後にアカウントを弄りたいときは
/descriptorByName/hudson.tools.JDKInstaller/enterCredential
へアクセスすれば良いようだ。
2014年04月21日追記
再設定はジョブの結果にリンクが貼られていた。
相変わらずログの情報見落とすな…。
2014年04月21日追記
再設定はジョブの結果にリンクが貼られていた。
相変わらずログの情報見落とすな…。
P.S.
JDKに関する設定ファイルは下記に保存されている。
JENKINS_HOME/hudson.tools.JDKInstaller.xml
ファイルのアカウント部分を削除してみても設定画面に
再度アカウント入力のリンクが出現しなかった。
その為設定ファイルを削除してJenkinsを再起動することで、
アカウント情報の削除が行えた。
2014年4月19日土曜日
Gradleのビルドスクリプトにて"Could not read script"エラー
久しぶりにJenkinsのビルドジョブを実行したら下記のエラーが…。
handshake alert: unrecognized_nameとは一体?
SSHの鍵の問題でもなく、メイン機でも同様に発生。
調べてみるとJava1.7のバグらしい。
Could not read script "URL" due to handshake alert: unrecognized_name #29
下記を参考にJAVA_HOMEを1.6に書き換えることで動くようになりました。
OSXでJavaのバージョンを切り替える
2014年04月21日追記
下記のようにgradle.propertiesでGradleの設定ファイルを作ってSNIを無効にするのが一番いいかも。
P.S.
ついでに出て間もないJava1.8で試してみたら同様のエラーが出ました…。
handshake alert: unrecognized_nameとは一体?
SSHの鍵の問題でもなく、メイン機でも同様に発生。
調べてみるとJava1.7のバグらしい。
Could not read script "URL" due to handshake alert: unrecognized_name #29
下記を参考にJAVA_HOMEを1.6に書き換えることで動くようになりました。
OSXでJavaのバージョンを切り替える
2014年04月21日追記
下記のようにgradle.propertiesでGradleの設定ファイルを作ってSNIを無効にするのが一番いいかも。
P.S.
ついでに出て間もないJava1.8で試してみたら同様のエラーが出ました…。
2014年2月23日日曜日
Jenkinsのワークスペースパスがおかしい
Jenkinsにて空のジョブを作成して実行すると下記エラーが出るんやけど...
.@2ってなんですのん?
Started by user hogehoge Building on master in workspace .@2 java.io.IOException: Failed to mkdirs: .@2 at hudson.FilePath.mkdirs(FilePath.java:1072) at hudson.model.AbstractProject.checkout(AbstractProject.java:1405) at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:652) at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:557) at hudson.model.Run.execute(Run.java:1679) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:230) Finished: FAILURE
[Jenkinsの管理] -> [システムの設定] -> [高度な設定]
で設定できたー。参考
2014年2月17日月曜日
Rubyのお勉強
Javaばっかりやってきていたので、動的言語が気になり、
Rubyになんとなく目が止まったのでRails使ってWEBサイトちょちょいと
作れるようになりたかったのでお勉強中。
「初めてのRuby」写経し終わり、「パーフェクトRuby」の4章まで進んだところで、
Rails Tutorialの日本語版が出たとのことでそっちに専念してます。
動的言語ってことでIDEの補完機能に頼ってばっかりもいられなくなったので、
タイピング能力高める+エディタの乗り換えのため、
HHKBと「実践Vim」を購入。
実践Vimには編集土台となる文章が公開されているので、
gitのリポジトリ作って編集しやすいようにしといた。
以上
Rubyになんとなく目が止まったのでRails使ってWEBサイトちょちょいと
作れるようになりたかったのでお勉強中。
「初めてのRuby」写経し終わり、「パーフェクトRuby」の4章まで進んだところで、
Rails Tutorialの日本語版が出たとのことでそっちに専念してます。
動的言語ってことでIDEの補完機能に頼ってばっかりもいられなくなったので、
タイピング能力高める+エディタの乗り換えのため、
HHKBと「実践Vim」を購入。
実践Vimには編集土台となる文章が公開されているので、
gitのリポジトリ作って編集しやすいようにしといた。
以上
登録:
投稿 (Atom)