Ruby

PHPカンファレンス福岡2017でfaultlineについて発表します #phpconfuk

昨年から faultline というエラートラッキングツールを開発しています。 github.com PHPの現場 #4 でも紹介されていたRollbarと同じジャンルのツールです。 php-genba.shin1x1.com faultlineというOSS fautlineはAWSのマネージドサービスのみで構成されてい…

awspecのための簡易AWSリソース取得ライブラリ awsrm をはじめた

AWS Summit Tokyo 2017が開催されている中、皆さんいかがお過ごしでしょうか? 弊社も IoT開発のためのテストサービスであるmockmockを出展しています。 mock-mock.com 皆さん、是非ブースに遊びに来てください。 ちなみに、私は金曜日のAWS Dev Dayに一般参…

最近のCertman活動またはCHANGELOG

certman作ってACMの証明書の作り方を忘れる予定が、各方面からの指摘で詳しくなりつつあるマネジメントコンソールではできないこともできるようになってきた— k1LoW (@k1LoW) 2017年4月12日 SSL証明書を作っては消し作っては消し— k1LoW (@k1LoW) 2017年5月2…

AWS Certificate Manager (ACM) のSSL証明書をAWSマネージドサービスを駆使して自動取得するクライアント Certman を作った #fukuokarb

certmanをcodenizeしたらcertmenになる予定 #fukuokarb— k1LoW (@k1LoW) 2017年3月23日 ACMのSSL証明書取得が本当に毎回面倒だしすぐ忘れるので、いつもの自分の取得方法をCLIツールにしました。 github.com 前提 SSL証明書が必要なドメインを同一アカウント…

awspecのAPIで悩んでいる その2

現在、awspecの各リソースタイプは、リソースの特定にIDか、タグの Name を利用しているます。 しかし、「サーバはペットから家畜へ」と言われるようにAWS上のリソースに名前がつくことのほうが少なくなっているようです。 awspecでもIssueが上がっています…

awspecのアカウント系のAPIに悩んでいる

追記 (2017/3/10 無事解決。マージしました) github.com awspecでアカウントに紐づくような情報のテストが書けるように「いつかやろう」と思っていたら、とうとうそれ系のPull Requestが来てしまったので いよいよ解決しなければならない感じになっています…

"キーレスエントリ"なスキーマに、テンポラリな外部キーを設定するツール tmpfk を作った

細かすぎて伝わらないツールだ。。。 キーレスエントリなスキーマ SQLアンチパターン に「外部キー嫌い(キーレスエントリ)」というのがあります。 外部キー制約(FOREIGN KEY)の設定をしないデータベース設計です。 (最近の)Ruby on Railsはどうなのか…

Codenize.toolsのRoadworkerのソースコードを読む(roadwork -e) #fukuokarb

AWSのCLIツール系では最高レベルに便利なCodenize.toolsからいろいろ学ぼうと思って、Fukuoka.rbでもくもくと読んでいました。 fukuokarb.connpass.com 同時にawspec業もしていたので、面白そうなapplyコマンドまで読み進められなかったのが残念。 以下、メ…

Backlogに添付されたファイルをscpみたいにダウンロードするbacklogcpコマンドを作った

皆さんBacklog使っていますか?私はいつも便利に使っています。 Backlogの添付ファイルをクリックしてダウンロードしなければならない問題 ところで、こんなことありませんか? 素材ファイルを添付してもらったが、それを利用するためにクリックしてダウンロ…

JAWS-UG福岡でawspecの中の話をしてきました #jawsug

JAWS-UG福岡:3度目の濃い目にAWSの話をしてみよう - JAWS-UG九州 | Doorkeeper にてawspecの中の話をしてきました。 speakerdeck.com awspec濃い。#jawsug— f_prg (@f_prg) June 11, 2016 スライドからもわかるように、AWS成分よりもRuby成分多めになりま…

CakePHPで開発しているけれどもMigrationsは捨ててRidgepoleを使っているはなし

タイトルは若干釣りです。 CakePHPにはマイグレーションツールとして、CakeDC/Migrations(CakePHP2)や、Phinxベースのcakephp/migrations(CakePHP3)があります。 とても有用ですし、CakePHP Bakerはみんな知っているツールです。自分もずっとお世話になって…

ssh_config形式のファイルからVulsのconfig.tomlを生成するコマンドを作った

今、脆弱性検出ツールでかなりアツいVulsですが、対象のリモートホストへの接続のためにはTOML形式の設定ファイルが必要です。 なんかssh_configに似ているなーと思ったので、作ってみました。 github.com Usage まずはインストール。 $ gem install ssh_con…

エージェントレスでプラットフォームのインベントリ情報を取得するツールkomaを作った

Ansibleにはsetup module、Chefにはohai、Puppetにはfacterというプラットフォームのインベントリ情報を取得するライブラリや機構があります。 ただ、リモートホストのインベントリ情報を取得したいときに、ohaiやfacterはリモートホスト側にインストールが…

AWSなコマンドラインツールをつくるときにAWS CLIと同じようにAWSアクセスキーやリージョン情報を取得できるライブラリ awsecrets

を作って、awspecやkumomeで使っています。 github.com 使い方 例えば、EC2インスタンスの情報をただ取得するコマンドラインツールを作るとき Awsecrets.load メソッドを利用して #!/usr/bin/env ruby require 'awsecrets' Awsecrets.load ec2_client = Aws:…

git-gsubがライフチェンジングだったのでgit-gsub-filesを作った

Gitで何かの仕方を検索していて、いまさらながら git-gsub を知りました。 fujimura.hatenablog.com gemとして公開されており、カジュアルにインストールできてめちゃくちゃ便利です。 となると気になるのが git-rename 。おそらく想像するにファイル名の便…

最近のawspec活動 その2

v0.27.1になりました Evolution of awspec (Gource Visualization) リソースタイプを増やした 現在23個になっています。もう少し増やしたい。けどユースケースを考えながら追加するので、なかなか増えない。。。 AWS Advent Calendar 2015に参加した qiita.c…

Fukuoka.rbでエクストリームフィッシュボールをして、エクストリームな体験をした #fukuokarb

成果です。 github.com ひょんなことから @udzuraさんとペアプロをする機会を得たのですが、成果は出るわ勉強になるわで最高体験でした。教えてもらうことが久しぶりで新鮮過ぎて とりあえず豪華だった…あとメタプロRuby読めって感じだった。 @udzura さんあ…

Fukuoka.rbでawspecを対象にペアプロをしてもらえることになったので、やりたいことを書いておく #fukuokarb

SlackのチャンネルでRubyの質問(というか悩みを相談)をしていたら、緊張ヤバいことにありがたいことに今日のFukuoka.rbで @udzura さんとペアプロをすることになりました。 今年多分最後の #fukuokarb で、 @k1LoW さんと僕とでエクストリームフィッシュボ…

最近のawspec活動

v0.10.1になりました。 github.com リソースタイプを増やした 最初エントリーで紹介したときは6個だったけれどもv0.10.1の段階で17個。 結構増えました。 iam_policy のリソースタイプは @hoppiestar さんのコードをマージさせてもらいました。 awspecの利用…

awspecのソースコードやオブジェクトからドキュメントを生成する

awspecはAWSのリソース構成をServerspecのようにテストするためのテスティングフレームワークです。 ServerspecにおけるResource Typeは、awspecにおけるAWSの各リソースになります。 今回、awspecのリソースタイプのドキュメントを作るにあたって、 ソース…

WIPなPull RequestによるOSS開発とoctoreleaseの相性がいいことに気づいた

awspecはWIPなPull Requestをつかった開発をしています。 理由は 開発者の開発スピードが遅いので、とりあえず今何を作ろうとしているのかがわかったほうが良い気がしている 業務上の慣れ(いつもWIP PR) という、結構ゆるい理由だったのですが、今日「これ…

AWSのリソース構成をServerspecのようにテストする "awspec" をつくった

AWSのリソース構成をServerspecのようにテストできる "awspec" をつくりました。 k1LoW/awspecgithub.com 例えばEC2インスタンスであれば、以下のように書けます。 describe ec2('my-ec2') do it { should exist } it { should be_running } it { should_not…

sconbを0.0.7にアップデートしました(Matchキーワードに対応/フィルタ機能を追加)

自分で地味につかっているsconbですが、簡単なツールながら地味にアップデートしました。 Matchキーワードに対応 Matchがちゃんと扱えないっぽい…それ以外はいい感じ♪ RT @k1LoW: はてなブログに投稿しました .ssh/configをバックアップ(?)するツール sconb …

Fukuoka.rbに参加してstackprofを動かしてみた #fukuokarb

Fukuoka.rb #20に参加しています。 今日は d:id:nagachika さんがRubyKaigi2014のキーノートセッションを解説してくれるという豪華回なので、 id:kawahiro311 と来ました。 その中でtmm1さんの鬼プロファイリングツール群を見せつけられて、高まったのでとり…

.ssh/configをバックアップ(?)するツール sconb を作ってみた

.ssh/configの管理が面倒すぎる CLIでSSHな環境に身をおいていると、 開発案件が増えるたびに.ssh/configを追加 AWSのIAMを作成するたびに.ssh/configを追加 Vagrantでサーバを作成するたびに必要な.ssh/configを追加。 さらに、 こっちの環境には.ssh/confi…

今更"初めてのRuby"と"プログラミング言語 Ruby"を購入した

RubyでFiberやEventMachineを触って遊びたいのだけれども、そもそもyieldとか十分に理解できていないし構文もわからなかったりするので全く進捗がない。 挙句の果てにせっかく購入した"Ruby逆引きハンドブック"が同僚の座右の書になってる。 なので、今更な…

Rubyは空配列もオブジェクト。だからif文はtrue。

オブジェクト指向言語なのだから当然っちゃ当然。ただPHPerには慣れていないところ。Ruby a = Array.new if a puts "true" else puts "nil" end # >> true PHP > false

Ruby 1.9.0 on Ubuntu 9.04でtokyotyrant.rbを一応動かす

使用したRubyクライアントは以下 http://tokyocabinet.sourceforge.net/tyrantrubypkg/tokyotyrant-ruby-1.5.tar.gz動作テストのためのコードは以下を使用させていただいた TokyoCabinet/TokyoTyrant を Rails で使う - なんとなく日記Ruby 1.8系では動くの…

Hoge Language

数日前からRubyを触るようになって、「ほげ言語のパラドックス」ってあるんだなと実感。 自分はPHPとEmacs LispとJavaScriptを触っていて、かつ好きなんだけれども、RubyにはあってPHP、Emacs Lisp、JavaScriptのどれにもないものとしてThreadがある。例えば…