Jenkins + GitBucketなインスタンスでFuelPHPをバージョン管理する環境構築してみた
以前までの記事でデプロイ、テストの自動化ができたわけですから、これで後はゴリゴリコーディングするだけ、ということで、Route 53でドメイン購入までしたわけですが、いまさらになってGitHubをリポジトリホストに使うのはちょっと厳しいなと。
できればAWSのVPC内にGitサーバ立てて、プライベートなリポジトリホストを使用するつもりだったのですが、そのためにインスタンス立ち上げるのはもったいない、という理由からGitHubを採用していました。しかし、Jenkinsサーバを立てている現状、Jenkinsサーバにリポジトリホストとしての役割を兼任させればいいじゃんという結論に。
HTTP経由でリポジトリを参照するようにしようかなと思っていたところ、社内でGitBucketというGitHubのクローンでサーバ立てたという話を聞き、すごく良さそうだったので試してみることにしました。
JenkinsでFuelPHPのユニットテストを自動化してみた
Jenkins、いいですよね。オペレーションの自動化には美があります。前回の記事ではGitによるデプロイ自動化を行いましたが、その時点で既にユニットテストの自動化は想定していたので、今回はそれを実現してみます。
これによって、機能を実装してプッシュする度に自動でデプロイされ、その過程でテストが自動で行われるので、特に通知がなければ動作が保証されるようになります。実際に本番環境への適用の際には、もう少ししっかりテストをする必要があるのかもしれませんが、開発環境レベルではテストを意識的に実施せずとも気兼ねなく開発を進めることができます。
ユニットテストにはおなじみのPHPUnitを使います。なお、前回のJenkins導入やデプロイ自動化の話はこちらの記事でまとめてありますのでよろしければどうぞ。
SourceTreeでgitブランチモデルの運用を試してみる
前回の記事ではFuelPHPのバージョン管理をやりまして、ソースコード管理のモデルがとりあえずできたかなという感じです。ただ、gitのバージョン管理をどんなブランチモデルでやろうかなと考えていたところだったので、今回固めてきました。
gitは非常に奥が深いですね。まだ全然把握しきれてはいないと思いますが、とりあえず雰囲気はつかめたと思うので、今後こんな感じのブランチモデルで運用していこーって概要と、こんなケースにはこうやってSourceTreeを操作するよって内容を備忘録的にまとめておきます。
あとで対応できないケースが増えて、モデルの見直しが必要になることもあるかもしれませんが、今はこれでいく!ということで・・・
続きを読むFuelPHPのプロジェクトをGithubでバージョン管理する
今回の記事もFuelPHPです。以前からコードを書いてはいましたが、プログラミングするなら、今の時代はgitでバージョン管理したいですよね。
インフラはみんなだいすきAWSなので、gitサーバを立てるのは難しくないけど、いちいちインスタンス立ち上げるのももったいない、別に隠すものでもないし、Github使おう。
というか、FuelPHP自体がgitでバージョン管理されてるの?え?じゃあ管理しにくくね?え?モデル、コントローラー、ビュー別にそれぞれリポジトリ作るの?え?え?
・・・このように、フレームワークのプロジェクトのバージョン管理って結構面倒くさいらしいんですが、色々ググって、とりあえずこれでいいか、というところまで辿りつけたので記事にまとめておきます。
AWSソリューションアーキテクトになってきた
めでたく合格しました。正直受験したときには「あ、落ちたな(確信)」となるぐらい難しかったのですが、ギリギリのスコアで合格できたみたいです。やったぜ。
AWSの利用経験は2ヶ月くらいしかなく、あんまり実践経験がないため、試験は難しく感じました。難しい難しいとはよく聞くので、それなりの覚悟で臨んだつもりだったのですが、それでも難しく感じます。やばいです。
現時点では明確な参考書もなく、試験内容も絶妙に曖昧な記憶を揺さぶる内容になっていて、非常によくできているので丸暗記ではなかなか合格できなさそうです。
本記事では、AWS認定プログラミングアグリーメントに反しないレベルで、今まで私がやってきた勉強法などを公開します。これから同試験を受験する方の参考になれば幸いです。