ツナワタリマイライフ

日常ネタから技術ネタ、音楽ネタまで何でも書きます。

ruby の検索結果:

VagrantとAnsibleでphpipamをインストール

はじめに Ubuntu上のVagrantとAnsibleで遊びまくる週間です。 take-she12.hatenablog.com take-she12.hatenablog.com take-she12.hatenablog.com phpipam 過去何度か取り扱ってますね。これguiでDBのセッティングするからansibleで全部完結させるのは無理だよなーと思いつつ、playbook書く練習もかねて、途中までやってみます。 Vagrant + shellでのインストール…

Vagrant + AnsibleでrbenvとCapistranoとServerspecをProvision

…rbenvを入れて、ruby2.3を選択したのち、gem installでsshkit、capistrano、serverspecをいれたい。 正直いつもなんとなくrbenvいれるけど普段使っててバージョン切り替えよう!なんてシーンに出会ったことがない。。。が、いれる。 まずは手動でいれつつ、playbookを足していく。以下のサイトが参考になる。 ruby 2.3.1をCentOS7に導入する。 - Qiita ひっかかったのはrbenv install 2.3.1の部分で…

UbuntuのVirtualBox上にVagrant+Ansibleでpipとbeautiful soupをinstallする

…が経っていて忘れていたので苦戦しました。実業務でも、仕事は全部(作業メモも)gitにあげる週間づいて、プライベートの勉強でも書いたコードは全部githubにあげて、業務中も参考にするぐらいの勢いでいこうと思います。 今度やっていきたいことは、 beautifulsoupとhatenapiを使ったスクレイピング rubyとcapistranoとserverspec環境のprovisioning phpipamのprovisioning です!自分のクラウド環境育てるの楽しいね!

Ubuntu16.04にVirtualBoxとVagrantとAnsibleをインストール

はじめに Windowsノートに入れたUbuntuちゃんの環境整備中です。 take-she12.hatenablog.com take-she12.hatenablog.com 仮想化環境 持ち歩かないサーバとして働いてもらうので、VMホストになってもらいます。仮想化環境は仕事で使っているOpenStackを試すべく、DevStackを使ったAll-in-One構成も考えたのですが、メモリが4GBしかないので、今回はVirtualBox+Vagrantにします。 MacBo…

同期と今までの振り返りと今後について話した

…す。 成長したこと Ruby Rubyは一通りかけるようになった。Rubyぐらいな気がする。ずっとなんとなく使い続けてるのは。逆にいえばRubyしか使えない。 その他プログラミング言語 / フレームワーク 使いこなせる、手に馴染むところまで来た技術はmarkdown、vagrant、capistranoぐらいで、あとは中途半端に手を出して軽く動かしてみて終わったものが多い。Ruby on Railsに関してもアプリを2つと担当製品1つぐらいで、その後触ってないのでもう忘れてし…

sshkitを使ってみた

…assの簡単版、かつRuby製。 github.com 環境構築 Vagrantでササっとね。 take@MacBook-Air ~/v/sshkit> cat Vagrantfile Vagrant.configure(2) do |config| config.vm.box = "CentOS71" config.vm.define :sshkit do | sshkit | sshkit.vm.hostname = "sshkit" sshkit.vm.network …

capistranoソースコードリーディング bin編

…r/bin/env ruby require "capistrano/all" Capistrano::Application.new.run Capistrano::Aplicationオブジェクトをnewしてrunを実施しているので、本体はそっちだ。 なおcapifyは2系で存在し、現在は廃止になったコマンド。わざわざファイル作ってhelp出してるところが可愛い。 take@MacBook-Air ~/capistrano> capify ----------------…

capistranoソースコードリーディング Filter編

…String) - Rubyリファレンス そしてgという表現は部分式呼び出し(subexpression call)と呼ぶらしい。 正規表現 (Ruby 1.9.3) これ、,までの英数字でマッチさせる、というのを再帰的に繰り返すことで、host filterの,区切り形式かどうかを見ているんですね。 HOSTS='server1,server2,server3'という形式であればok。これを,でsplitして分割して返してあげてますね。 ただこれ、avに元々正規表現を含んで…

私のキャリア戦略

…を見る tango-ruby.hatenablog.com これは職種は違うが英語習得を目指してる同期と一緒に進めていくことにした。 Amazon English brian.hatenablog.jp 早速申し込んで15分やってみた。これはとてもいい。英語が流されて、その文章が画面に記載されている。 速度が自分でコントロールできたり、その場で辞書を引いたり(何と英和じゃなく英英事典も使える)、自身の英語レベルに従って作品をおすすめしてくれる。さらに1日15分やったら教えてく…

「Effective Ruby」を読んだ

…noを使ったツール(Ruby)で1kぐらいがっつりコードを書いて、自分でもイケてないのはわかるけどどうすりゃいいかわかんないしなーと漠然とモヤモヤしてたので1step上のRubyコードが書けるようにと買ってみました。 Effective Ruby作者: Peter J. Jones,arton,長尾高弘出版社/メーカー: 翔泳社発売日: 2015/01/09メディア: 大型本この商品を含むブログ (13件) を見る 1つの項目のサイズもちょうどよく、読んでるだけでも面白いので…

言語処理100本ノックの最初5問をRubyで解く

…とですが、自分が使うRubyで。言語処理100本ノック自体は以前会社の勉強会で同期が紹介してくれていたので知っていました。 00. 文字列の逆順 文字列"stressed"の文字を逆に(末尾から先頭に向かって)並べた文字列を得よ. reverse一発。 puts "stressed".reverse take@MacBook-Air ~/ruby> ruby 00.rb desserts 01. 「パタトクカシーー」 「パタトクカシーー」という文字列の1,3,5,7文字目を取…

rubyの定数が定義されているかをdefined?で確認して三項演算子に格納するときに()の有無でハマった

…みる 動作確認をしたrubyのversionは2.0 MacBook-Air:~ take$ ruby -v ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin15] 三項演算子を使ってデフォルト値か定数値どちらかを変数に格納しようとしてみる。 irb(main):001:0> CONST = "hoge" => "hoge" irb(main):002:0> name = defined? …

rubyで指定回数実行して、最大数に達した時エラーにする書き方をまとめる

…oop take$ ruby loop.rb 1 2 3 まぁ、普通のloopだ。インクリを自分で書くところがイケてない。 while num = 1 while num <= 3 do puts num num += 1 end 結果は同様。終了条件をwhileで書ける分短くなるが、インクリを自分で書くところはイケてない。 for for num in 1..3 do puts num end rubyではforは使わないeachを使えって説はよく見るけど連続した数値オブジ…

ansibleでvagrant上のVMにgitlabをインストールするplaybookを書いた

はじめに ついにansibleでレシピを書きました。本はこの本を一通り読みました。良い本です。 初めてのAnsible作者: Lorin Hochstein,Sky株式会社玉川竜司出版社/メーカー: オライリージャパン発売日: 2016/04/16メディア: 大型本この商品を含むブログ (2件) を見る ansibleのバージョン 実際使わなかったんですが、iptables moduleを使うために2.0をいれました。1.9からのアップグレードは失敗したので、pip unin…

自動構成ツール「itamae」をMacのローカル環境管理に使ってみる

…ostgresql ruby-build autoconf libyaml openssl rbenv tmux jq mysql pkg-config readline tree レシピを書く brew.rb %w(ansible libevent oniguruma postgresql ruby-build autoconf libyaml openssl rbenv tmux jq mysql pkg-config readline tree).each do |pk…

Infrastructure as a codeの世界へ行く

… エージェントあり。Ruby製。冪等性あり。レシピはRubyベースのDSL。 Chef エージェントあり。Ruby製。冪等性あり。レシピはRubyベースのDSL。Puppetと似てるな。 Ansible エージェントレス。Python製。冪等性あり。レシピはyaml。 itamae エージェントレス。Ruby製。冪等性あり。レシピはRubyベースのDSL。 社内で実績あるのはPuppetなので、Puppetになりそうな予感です。 インフラテストツール ServerSpec も…

open3でシェルコマンドを実行してラップする

…すが、せっかくなのでrubyで統一感を出したいと思い、open3を使って実装してみることにします。 open3 外部コマンドを実施して、標準出力、標準エラー出力、終了ステータスが得られる、とても便利。 kaihar4.com - Rubyのopen3が便利だった話 まず、サンプルのcapistranoのtaskを書きました。 deploy/local.rbにローカル定義。 server 'localhost', user: 'root', roles: %w{web} dep…

capistranoでリモートサーバへのコマンド実行を自動化する

…ritten in Ruby. 元々railsプロジェクトを複数のサーバ(productionとstaging)に一気にデプロイをするためのツールです。バージョンが3系からrailsから独立したんですね。 ただこれ考えようによってはリモートサーバにシェルコマンドを送り込むツールとして使うこともできて、今回はその使い方で手順を自動化しようと言う話です。 ちなみに実際の手順書は数十ページに及ぶわ、対象サーバは10種類以上あるわ、1台やるのに30分〜1時間かかるわで、自動化の価値は…

クールでエレガントなドキュメント作成をするのにasciidocかなり良いぞ

…みたいですが、後発のruby製のasciidoctorのほうが楽だったのでそちらをおすすめします。 これはmacかlinux環境が必要なので、windowsユーザにはいちいち持って行って変換するのが少しめんどくさいかもしれませんね。 gem installでいれて、コマンド叩くだけです。クッソ簡単。 iconを出す方法 asciidocでは NOTEやCAUTIONといった注意書きを書けます。これを書くと画像が出て欲しいんですが、デフォルトでは出ません。こんなやつです。 As…

SoftwareDesign4月号を読んだ - オブジェクトストレージの教科書 / OpenStack - Swiftを使ってみる

はじめに SoftwareDesign4月号を買いました。 take-she12.hatenablog.com 今回は特集2、オブジェクトストレージ編です。 オブジェクトストレージの教科書 Amazon S3やOpenStack Swiftの例をあげながら、オブジェクトストレージは何か?を説明しています。part2では分散オブジェクトストレージのアーキテクチャとしてOpenStack SwiftとCephを紹介。さらにpart3では国内のオブジェクトストレージサービスの例とし…

SoftwareDesign4月号を読んだ - 良いプログラムの書き方(Ruby編 お作法を意識して可読性や保守性を高めよう)

…の記事を読んだので。Rubyの特集だけでもささっとやるかぁと思いました。 blog.jnito.com 加えてOpenStack Swiftは社内でも触っているし、最近サーバルームに篭って結線いじってるので光ファイバ+ラック選定の特集、DevOps座談会と関心のある特集ばかりだったので買いました。今回は特集1の良いプログラムの書き方Ruby編を追っていきます。 今すぐ実践できる良いプログラムの書き方 他の言語も目は通しましたがRubyだけ動かしてみることにします。 Ruby編…

社内でブログ書きたすぎてwordpress立てた話

…で、構築ノウハウや、rubyのちょこっと動かしてへぇ〜って思ったネタなんかは溜まっていきます。これは格好の技術ブログの的なんですが、どうも社内から社外のはてなブログに書くのは気持ちの上で乗らず(別に社内情報が流出しなければいいんですが)、さらに社内製品だと何を書いていいか気を使うし、仕事終わったあとに書こうったって思い出せないしで気が進まないでいました。 まぁ別にブログに書かなくても自分でやった仕事はノウハウとしてmarkdownでまとめているんですが、やっぱり小ネタはブログ…

「技術学習の分類とそれについての雑感」を読んで振り返る自分の技術学習方法

…な現象(プログラミング言語の論理上ありえない事象)が起きて、その障害調査をするにも途方にくれてしまいました。 やはりOSレベルで何が裏で動いているのかっていうところを理解しないといけないので、以下の本を読もうと思ってます。 tatsu-zine.com Rubyの力もつくということでちょうどいいなと。 あとは3の観点で、動くサービスを作って世に出すサイクルを早めていきたいです。1はその過程でついてくるのかなと思ってます。 おわりに 物事を分類するって大切。目標がクリアになる。

my thingsを使ってtwitterのつぶやきをslackに通知する

はじめに 最近お試しで同期とslackを使ってみています。一緒に勉強してるJavaScriptのこと以外にも、自分の勉強していることをつぶやく場としても使ってみたり。同期もはてなブログをやっているので、はてなブログに関するチャンネルもあります。 今回はせっかくなので、以前組んだブログの更新予告をslackに流し込む方法がないか探ってみました。 take-she12.hatenablog.com my things はじめて知ったんですが、IFTTTのmobile版といったとこ…

ニュースサイトを参考にブログのカテゴリ分けを再考する

…変換するんやね、本当rubyはやりたいことだいたいできるな。 出力結果はちゃんとこんな感じになります。 [take@tk2-207-13166 ~]$ cat script/output.txt | head 日報をgitlabで管理すると結構いいよ, ソフトウェア開発,ソフトウェア開発-備忘録 2月のアクセス解析と人気記事まとめ, ブログ node.jsでクローリングしてことわざの使用例をつぶやくbotを作った, ソフトウェア開発,ソフトウェア開発-node.js ブログの…

node.jsでクローリングしてことわざの使用例をつぶやくbotを作った

…実現したいじゃない。rubyです。(笑) MacBook-Air:kotowaza take$ cat kyoyo-daite.rb require 'rubygems' require 'twitter' # initialize @array = [] # open file File.open('kotowaza_result.txt') do |file| file.each_line do |line| @array << line.split(",") end e…

atomutilで全エントリーのタイトルとカテゴリを取得する

…"ソフトウェア開発-Ruby", "ソフトウェア開発-シェルスクリプト", "ブログ"] title: 「脳が認める勉強法」から考える、自分にとってベストの勉強法, category: ["本", "教育"] title: 日報をgitlabで管理すると結構いいよ, category: ["ソフトウェア開発", "ソフトウェア開発-備忘録"] title: ブログの記事ネタリストをtoodledoで管理する, category: ["ブログ"] title: node.jsで…

英語でプログラミング言語を学ぶ「JavaScript: The Good Parts 」Object編

…狙いだったんですが、Rubyでいうclass、Javaでいう継承、というように、概念を他言語に例えながらコミュニケーションを取れるのは大きかったですね。逆にこの本は(日本語の本を読んでませんが)最初の言語だったら難しいと思う。そもそも入門本ではないと思うけど。 今後 4章のfunction、付録AのAwful Parts、付録Bのbad Partsをやって、それから何かモノを作ろうという方針になりました。時間をかけすぎるのもよくない。でも本当にいい挑戦ができてると思います。あ…

「一行バカ売れ」から考えるブログや書籍のタイトル付け

…本から新たにこういうことをしよう、というものが増えたわけではないですが、普段自分が考えてることは できるだけ具体的に書く 述語を書く という点です。少し長くなったとしても、何をしたのか、何を使ったのか、名称は具体的に入れます。そしてこの記事の主題は何なのかという述語は記述するようにします。「rubyについて」とかは最悪かなと。 おわりに 名前付けというのは重要です。ブログタイトルに関しては今のところ自分の中で結論が出てるので、これからも読んでもらえるようなタイトルをつけたい。

atomutilを使って全記事のタイトルと本文を取得する

…の投稿予告ツイートをrubyで書く② 複数ページ取得&amp;xmlマージ編</title> <title>新しい言語・フレームワークの学び方を議論した</title> <category term="本" /> <category term="教育" /> <category term="ソフトウェア開発" /> <category term="ソフトウェア開発-備忘録" /> <category term="ブログ" /> <category term="生活" /> <…