タグ くりにっき
新着順 10 users 50 users 100 users 500 users 1000 users自作gemでモンキーパッチrbsを利用する - くりにっき
コンテキスト 構成 手順 モンキーパッチrbsを使うメリット 最後に 2024/12/05 20:27追記 コンテキスト 僕が直近2〜3年以内に新しく作ったgemでは全てrbsとsteepを導入してガッツリ型を書いています。 しかし自分のgemのrbsは書けても、自分のgemが依存しているrubyの標準ライブラリのメソッドや依存している別のgemの方... 続きを読む
GitHub Actionsで特定の条件の時だけenvironmentを設定したい - くりにっき
tl;dr; environment を三項演算子でいい感じにする モチベーション TerraformのワークフローをGitHub Actionsで動かしてるんだけど、terraform apply した時(具体的にはmainブランチか手動でのbuild実行時)のみ environment をセットしてDeploymentsに通知したかった。( terraform plan (Terraformのdry run)ではDe... 続きを読む
Herokuにあった個人アプリを軒並み対応した - くりにっき
背景 やったこと1. 廃止 やったこと2. GCPに移行 ユースケース図 URLベースで見たユースケース図 実行環境で見たユースケース図 実際にGCPに移行したアプリ達 Cloud Run Cloud Functions AppEngine GCP移行した全てに共通してること やったこと3. CircleCIに移行 付録A. 道のり 付録B. 調査メモ(移行時に参考にしたドキ... 続きを読む
Ruby 3.1.2 with YJIT vs Ruby 3.2.0-dev with YJIT - くりにっき
tl;dr; モチベーション Ruby 3.2.0-devの何がすごいか Ruby 3.2.0-devでRust版のYJITを使う方法 計測対象のアプリケーション 使ったバージョン 比較 CPU ホスト全体 Ruby 3.1.2 + YJIT Ruby 3.2.0-dev + YJIT pumaのmasterプロセスとworkerプロセスをピックアップ Ruby 3.1.2 + YJIT Ruby 3.2.0-dev + YJIT Memory ホス... 続きを読む
なるべくお金をかけずに個人アプリを運用したい - くりにっき
前々からこの手のことを書きたいとは思ってたけど id:k0kubun さんの下記エントリに触発されて書きました。 k0kubun.hatenablog.com tl;dr; 個人アプリ開発歴 前提 Heroku GCP Google App Engine Cloud Run Firebase Cloud Functions GitHub Pages GitLab Pages 2022/5/7 ブコメレス tl;dr; HerokuやFirebaseを駆使すれ... 続きを読む
至極の難問YAMLクイズ - くりにっき
前置き 練習問題 問題1 問題2 問題3 問題4 参考文献 おまけ:LT直後のみんなの反応 前置き 社内勉強会のLTで発表したら好評だったので投下 自称YAMLエンジニアのsue445が今まで踏んだ罠をクイズにしました Ruby 3.0.0の Psych で動作確認していますが他言語での挙動は調べていません Psychがlibyamlベースなので他の言語... 続きを読む
質問をする技術 - くりにっき
以前社内に書いたポエムなんだけど年に1回くらい引用したくなるので公開した tl;dr; 質問をする時はゴールを提示する【MUST】 理由1 理由2 コンテキストを詳しく共有する【SHOULD】 期待してた結果(expect)と実際の結果(actual)を書く【IMO】 tl;dr; テンプレ 【質問内容】 【やりたいこと or 今困ってること or 質問の... 続きを読む
個人gemのCIをほぼ全部Travis CIからGitHub Actionsに移行した - くりにっき
2日間で30個くらいのリポジトリでGitHub Actionsに移行したのでメモ tl;dr; モチベーション GitHub Actionsを選んだ理由 GitHub ActionsでgemのCIをするための設定 weekly build 公式のactions/setup-rubyではなくmasa-iwasaki/setup-rbenvを利用 ボツ案:Dockerイメージのrubyを使う masa-iwasaki/setup-rbenvを利用 se... 続きを読む
僕がOSS導入時に気にしてること - くりにっき
前置き 観点 GitHubやGitLabなどのリポジトリの場合 https://rubygems.org/ https://hub.docker.com/ 前置き 社のesaに投下したものの反応が薄くて寂しいので全体公開 他人が作ったOSSを使うにあたって、もしあまりメンテされないOSSを使うと結局別のOSSに乗り換える必要があっておつらいので、僕がどんな観点でOSSを選... 続きを読む
ERDをPlantUML形式で自動生成するツールを作った - くりにっき
PlantUML + ERDでPlantERDです github.com モチベーション PlantERDの特徴 使い方 出力するテーブル数の制限について 技術的に頑張ったこと テストのこと Foreign keyで隣接している別のテーブルを探す方法 複数DB対応のつらみ 追記:2019/12/13 9:45 モチベーション 既存プロダクトへの不満が一番大きいです。 https://... 続きを読む
circleci-bundle-update-prをGitHub Actionsで動かせるようにした - くりにっき
投げたPRはこちら github.com 動機 とある事情でCI用途のパーソナルアクセストークンを撲滅したかった件の一環です。 解説 GitHub Actionsはジョブ実行時に自動でアクセストークンをセットしてくれて便利なんですが、API実行の許可は付与されていても git push に対する許可が与えられていませんでした。 具体的には下記... 続きを読む
CIマニアから見たGitHub Actions(Beta)の使い所 - くりにっき
1ヶ月くらい使って勘所が見えてきたのでメモ メリット 1リポジトリ辺り20並列までジョブを並列実行できる ジョブ実行時はアクセストークンが勝手に設定されている マトリクステストがやりやすい 実際にGitHub Actionsに移行したプロダクト zatsu_monitor activerecord-compatible_legacy_migration index_shotgun デメリ... 続きを読む
condo3と地域.rbカレンダーを作った - くりにっき
夏の進捗です。 令和の夏、進捗の夏— sue445 (@sue445) 2019年8月11日 condo3 condo3について モチベーション ユースケース 技術的なこと 技術の選択理由 開発時に苦労したこと 名前の由来 地域.rbカレンダー 技術的なこと メリット condo3 condo3について connpassやDoorkeeper のグループのイベント情報をiCalendarやA... 続きを読む
AWS Lambda CI/CD俺的ベストプラクティス - くりにっき
Lambdaで動くアプリやフレームワークの事例はよく見るのですが、LambdaのCIやCDにしやすさに主眼をおいた紹介はあんまり見ないので現時点での自分のベストプラクティスのメモです tl;dr; このエントリで書いていること Lambdaをデプロイするのに肝になること デプロイしやすさに着眼したフレームワーク紹介 論外 コンソ... 続きを読む
Rails 5.2.2.1にしたらErrno::ENOENT: No such file or directoryのエラーになった - くりにっき
Railsのsecurity fixが出ました weblog.rubyonrails.org 個人アプリ2つアップデートしたんですが、どっちもRails 5.2.2だし余裕だろうと思ったら片方だけ下記のようなエラーになってちょっとハマったのでメモ。 + ./bin/rails db:create (snip) Errno::ENOENT: No such file or directory @ rb_sysopen - /home/circleci... 続きを読む
pixiv TECH SALONで「スペックを上げてクラウドで殴るCI」という発表をしました #pixivTECHSALON - くりにっき
昨日 pixiv TECH SALON という完全招待制のイベントで「スペックを上げてクラウドで殴るCI」で発表したので、その時のスライドを公開します。 他の人たちのスライドも別途まとめて公開される予定ですが、いったん自分の分だけ先に出します。 おまけ:発表中の様子 togetter.com 続きを読む
はてなブックマーク - git-updateがクソ便利 - くりにっき
git-updateがクソ便利 - くりにっき
git-sync にインスパイヤされて作りました qiita.com ソースコード gist.github.com モチベーション 例えばトピックブランチで作業してて、リポジトリのmasterが更新されたから最新のmasterを取り込んでrebaseするってことよくやると思うのですが、その時にいちいち git checkout master git pull --ff git checkout top... 続きを読む
CIマニアから見た各種CIツールの使い所 - くりにっき
社内外でちょいちょい聞かれるのでメモ。 前置き GitHubを使ってる場合 ライブラリを作ってる場合 Travis CIを選択する理由 Travis CIを選択しない理由 アプリを作ってる場合 CircleCIとWerckerの共通点 CircleCIとWerckerの機能差異 GitLabを使ってる場合 GitLab CIの優位点 Jenkinsなどを使った方がいい場合 前置き 10... 続きを読む
circleci-bundle-update-prをCircleCIのorbにした - くりにっき
circleci-bundle-update-prとは CircleCIでbundle updateしてPRを作るgemです。(id:masutaka26 氏製作) github.com モチベーション コアの処理はgemになっていてCircleCIから呼ぶ部分は実質ワンライナーなのでorb化不要な気もしましたが、あるとそれなりに便利そうなので作ってみました 使い方 だいたいこれで動きます... 続きを読む
CircleCI orb Perfect Testing - くりにっき
sue445.hatenablog.com で書いてた 今回作ったorbのインテグレーションテストも頑張ってるのですが、長くなるので別の機会に書こうと思います の件です。 https://github.com/sue445/circleci-ruby-orbs/blob/1.2.0/.circleci/config.yml の解説をします 注)タイトルは半分釣りです tl;dr; orbのテストについて YAMLの... 続きを読む
CircleCI 2.1のorbを作って最速で実アプリに投入した - くりにっき
tr;dr; 【前置き】先日の出来事 orbとは 【今回作ったもの】sue445/ruby-orbs モチベーション 準備 使い方 CircleCI 2.0から2.1に移行したPR ついでにHerokuにデプロイするやつもorbに寄せた Before After 補足 post-deploy Context one more thing tr;dr; https://circleci.com/orbs/registry/orb/sue445/ruby-orbs htt... 続きを読む
CircleCI 2.1 previewのcommandsが便利だった - くりにっき
https://github.com/CircleCI-Public/config-preview-sdk を見てたら commands が便利そうだったのでためしに個人プロダクトに入れてみた。 github.com 準備 Before (CircleCI 2.0) After (CircleCI 2.1 preview) 所感 作業PR 準備 Advanced Settingsの「Enable build processing (preview)」で有効にしないと使えないの... 続きを読む
rubocop-itamaeを作った - くりにっき
itamae のレシピを静的解析するrubocopのプラグインを作りました。 rubocop-itamae (0.1.0): Code style checking for itamae recipes https://t.co/CrfDEV2Cki— RubyGems (@rubygems) 2018年7月16日 github.com コンセプト Itamae/CdInExecute Itamae/CommandEqualsToName Itamae/NeedlessDefaultAction Itamae/RecipeP... 続きを読む
転職エントリ - くりにっき
from : 株式会社ドリコム (2012年7月~2018年6月) *1 to : ピクシブ株式会社 (2018年7月~) タイトルで煽らない、かしこまった見出しもつけない、ウィッシュリストのせない、東亜飯店張らない、fromとtoを両方書く。職場崩壊を暴露しない。キラキラしない。これが私の求める退職エントリです。— laiso (@laiso) 2017... 続きを読む