継続的ブログ

主にweb系の技術について書いています

Rails

docker build 時に必要な RAILS_MASTER_KEY を Buildkit の Secret Mount で渡す

docker build 時に assets:precompile してコンテナに assets を含めてしまう場合などは RAILS_MASTER_KEY をどうにかして渡す必要があるかと思います。 ARG で渡すことも可能ですが、 docker history で見ることができてしまうので公式でも秘匿情報を扱う際…

docker環境でvimからrspec実行

qiita.com 少し前にjokerさんの ↑ の記事を参考にして、docker環境でvimからrspec実行できるようにして、最高に快適になりました。 ありがとうございます。 記事ではdirenv使って環境変数でコンテナ名を指定してフィルターしているみたいですが、自分はリポ…

mark_for_destruction を before_validation で

gitlabのコード読んでいていいなと思ったやつ。 before_validation で値が空のものに mark_for_destruction でフラグ立ててやる。 これなら空のやつでもとりあえず save しとけばいいので、before_validation でやるのもいいなと思った。 project.rb before_…

Vueのテンプレートでassetsのimageを使う(rails + webpacker)

assets/images 下の画像をVueのtemplate内で使いたい。 erb内でなら image_tag で行けるが、digestついてるので単に <img src="assets/images/image.png" />とはできない。 解決法 調べたらいくつか方法はありそうだったが、webpackerのドキュメントを読むと、 config/webpacker.yml の resolved_p…

CircleCI2.0に移行しました(Rails)

早くなるという噂を聞いたので試しにやってみたら、少しだけ早くなりました。(8min→6min) .circleci/config.yml version: 2 jobs: build: docker: - image: ruby environment: - TZ: "/usr/share/zoneinfo/Asia/Tokyo" - LANG: ja_JP.UTF-8 - LC_ALL: C.UT…

クローラー(スクレイピング)をRspecでテスト

今回初めて、個人用にクローラーを開発してみました。 JavaScript多めのサイトのため、「Capybara + Poltergeist」を使用しました。 順調に開発は進んだのですが、テストってどう書けばいいんだろうと思い、知り合いに相談したところ、下記方針に決まりまし…

メール受信 → 解析(Postfix + Rails)

Railsアプリと連携して下記のことをしたい。 メール受信でRailsアプリ内プログラム実行 メールの中身を確認 今回はMacのローカル環境で検証します。 環境 Mac OS Rails Ruby(rbenv) Postfix 手順 まずはメール受信できるように 1. Postfixの起動(元々入っ…

DockerでWhenever(gem)が動かなくてハマった話

久々の更新です。 最低でも月1で書きたいなあと思ってたのですが、2ヶ月以上も空いてしまいました。 最近はRailsはもちろんのこと、React NativeやDockerもバリバリ使ってます! さて、標題の件ですが、いやー、かなりハマりました。 現在、開発環境にDocker…

Devise&OmniauthでFacebook認証したいけど、emailがnilで返ってきてハマった

追記 gemのアップデートで取れるようになりそうですね! omniauth-facebook+GraphAPI ver 2.4でemailフィールドが取得されない件の対応 - Qiita 今Railsで作っているサービスで、DeviseとOmniauthを使って認証系実装している時にちょっとハマったお話。 Fac…

rails console上でのSQL表示をデフォルトに

rails consoleで、どんなSQLが発行されているかその場で確認したい logをみれば確認できますが、面倒くさいですよね。 rails consoleで下記コマンドを打てばOKです! ActiveRecordのログの出力先を標準出力に変更することが出来ます。 ActiveRecord::Base.lo…

Vagrant + ChefでRails開発環境構築②

追記 (2015/05/26)激古なNginxがインストールされてしまうため、使用するnginxのレシピを「nginx::source」に変更しました。それに伴い、chef.json内にnginxの設定を追加しました。 Vagrant + ChefでRails開発環境構築① - 継続的ブログ 続きです。 Railsの…

Vagrant + ChefでRails開発環境構築①

VagrantとChefでRailsの開発環境構築したのでメモ。 ここら辺の技術はホント流れが早いですよね。 2015年5月時点で、なるべく最新(っぽい)感じで構築しているつもりです。 環境 VirtualBox 4.3.28 Vagrant 1.7.2 ChefDK 0.6.0 環境構築 VirtualBoxのインス…