くりにっき

フルスタックキュアエンジニアです

rubocop_auto_corrector v0.4.0をリリースした

rubocop_auto_corrector (0.4.0): Run `rubocop --auto-correct && git commit` with each cop. https://t.co/9EOblqIdUg— rubygems_news (@RubygemsN) 2020年7月7日 rubocop v0.87.0で --auto-correct の挙動が変わったのと、 --auto-correct-all が追加さ…

Railsでdb:migrateの時だけdatabase.ymlを自動で差し替える

前置き モンキーパッチの縛りプレイの内容 モンキーパッチ 注意点 モンキーパッチのポイント ボツ案1 ボツ案2 前置き GitLabでPostgreSQLを使う時にPgBouncer経由でDBに接続してる(database.ymlにpgbouncerの接続先を書いている)のですが、 その状態で rak…

あつ森でDQ3のアリアハン大陸を作った

島の全体図 Before After 内部の解説 アリアハンの城下町 岬の洞窟、ナジミの塔 レーベの村 いざないの洞窟 余談 島の全体図 Before 島改装前のスクショがこれしか残ってなかった。改装直前は建物の他に橋や坂も結構設置してました After 頑張って作った割に…

Cloud Runでは/_ah/で始まるパスは使えない

GCP

タイトルが全て 事象 Cloud RunにDockerコンテナをデプロイしたが、gcloud run deploy --allow-unauthenticated *1 で全公開にしてるにも関わらず /_ah/health (コンテナ内で動いてるアプリのヘルスチェック用のエンドポイント)を呼ぼうとして401エラーに…

CircleCIでマトリックスビルドがサポートされたのでさっそく使ってみた

CircleCIがMatrixジョブのサポートを開始しました。Matrixジョブを使用することで、複雑な組み合わせが必要なジョブをシンプルに記述することができます。詳しくはこちらのブログ記事(英語)から:https://t.co/MZV1zLCdOj— CircleCI Japan (@CircleCIJapan…

【CVE-2020-2179】Jenkins Yaml Axis Plugin v0.2.1をリリースした

昔作ったJenkins Yaml Axis Pluginにリモートコード実行の脆弱性が見つかったので修正してv0.2.1をリリースしています。ご利用の方は速やかにアプデお願いします。 https://github.com/jenkinsci/yaml-axis-plugin/blob/master/CHANGELOG.md#021-2020-04-07 …

gitpanda v0.9.0をリリースした

https://github.com/sue445/gitpanda/blob/master/CHANGELOG.md#v090 最近のGitLabでは https://gitlab.com/gitlab-org/gitlab/-/merge_requests や https://gitlab.com/gitlab-org/gitlab/-/issues みたいに /-/ が含まれるURLになっているようなので*1、そ…

chatwork-ruby 0.12.2とpixela 1.4.1をリリースした

gem

それぞれfaraday v1.0対応です。 chatwork (0.12.2): ChatWork is cloud-based business chat tool https://t.co/BGGvb5ptun— rubygems_news (@RubygemsN) March 21, 2020 https://github.com/asonas/chatwork-ruby/blob/master/CHANGELOG.md#v0122 pixela (…

wgetでPOSTする

tl;dr; wget --post-data="key1=value1&key2=value2" https://example.com/webhook -O /dev/null 経緯 CIの実行中に通知用のwebhookをPOSTして通知をやりたかったんだけど、CIで使ってるDockerイメージに curl が入っていなくて困った 具体的には https://hu…

#プリッカソン でprismdb-rubyとfaker-pretty_seriesを作った

prismdb-ruby faker-pretty_series prismdb-ruby PrismDB のAPIクライアント prismdb (0.1.0): PrismDB API client for ruby https://t.co/hW9Zb5NOnt— rubygems_news (@RubygemsN) March 15, 2020 github.com スピード重視で使い慣れたREST APIを使ったけど…

gitpanda v0.8.0をリリースした

リリースノート https://github.com/sue445/gitpanda/blob/master/CHANGELOG.md#v080 v0.8.0について 社内GitLabのnginx周りの設定を変えた時にAWSからGitLabのAPIが叩けなくなってgitpandaが使えなくなったので、それをちゃんと検知できるようにするためにS…

地域.rbカレンダーのバックエンドをリプレイスした

見た目は変わらないですがバックエンドを変えてます sue445.github.io 今までの運用 カレンダーに追加したいconnpassやDoorkeeperのグループを condo3 でics取得 自分のGoogleカレンダーにインポート https://calendar.google.com/calendar/embedhelper?gses…

RubyKaigi 2020のCFPに採択されました

昨年 に続き、今年も登壇させてもらえることになりました! rubykaigi.org 今回は「Ruby on CI」というタイトルで、CIマニアがRuby製のgemやアプリのCIについて延々と話します。 https://rubykaigi.org/2020/presentations/sue445.html#apr10 CFPはここにあ…

circleci-ruby-orbs v1.5.0をリリースした

https://circleci.com/orbs/registry/orb/sue445/ruby-orbs リリースノート https://github.com/sue445/circleci-ruby-orbs/blob/master/CHANGELOG.md#v150 Ruby 2.7でbundler 2.1.2が入りましたが、bundler 2.1で bundle install --path などの引数がdeprec…

go-mod-tidy-prを作った

GitHub Actions上でgo mod tidyしてPRを作るActionです github.com github.com モチベーション dependabotでgoのモジュールを定期的にアップデートしていると go.sum に古いバージョンのゴミが残り続けます。 github.com/aws/aws-lambda-go v1.11.1 h1:wuOnh…

GitHub ActionsでTravis CIのallow_failures的なやつをやりたい

いわゆるジョブが失敗しても成功扱いしたい的なやつ tl;dr; jobs: test: runs-on: ubuntu-latest container: ${{ matrix.ruby }} strategy: fail-fast: false matrix: ruby: - ruby:2.2 - ruby:2.3 - ruby:2.4 - ruby:2.5 - ruby:2.6 - ruby:2.7 - rubylang/…

plant_erd v0.2.0をリリースした

sue445.hatenablog.com github.com リリースノート 苦労点 クロスコンパイルができない 初めてのWindows上でのCI 途中で実行ファイルを分けた ライセンスをどうするか リリースノート https://github.com/sue445/plant_erd/blob/master/CHANGELOG.md#v020 v0…

capistrano-itamaeのCIをDockerizeした

GitHub Actions移行時についでにやったやつ github.com sue445.hatenablog.com 新旧構成 モチベーション 実際の差分 ボツPR まとめ 新旧構成 旧 Vagrant DigitalOcean Wercker 新 Docker GitHub Actions モチベーション capistrano-itamaeではインテグレーシ…

個人gemのいくつかでRuby 2.4以下のサポートを切った

gem

下記エントリの続き sue445.hatenablog.com Ruby 2.7で require "open-uri" open(url).read のように書くと warning: calling URI.open via Kernel#open is deprecated, call URI.open directly or use URI#open のようなdeprecation warningが出ます。 しか…

個人gemのCIをほぼ全部Travis CIからGitHub Actionsに移行した

2日間で30個くらいのリポジトリでGitHub Actionsに移行したのでメモ tl;dr; モチベーション GitHub Actionsを選んだ理由 GitHub ActionsでgemのCIをするための設定 2020/1/4 0:40追記 weekly build 公式のactions/setup-rubyではなくmasa-iwasaki/setup-rben…

2019年振り返り

tl;dr; 登壇 趣味コード お仕事 推し事 見た映画 ライフイベント 地上波デビュー 商業誌執筆 来年の抱負 tl;dr; 色々ありました 登壇 特に意識していなかったんですが今年に入って1~9月まで大小色んなところで毎月登壇していました。 その中でも大きかった…

僕がOSS導入時に気にしてること

前置き 観点 GitHubやGitLabなどのリポジトリの場合 https://rubygems.org/ https://hub.docker.com/ 共通 (2019/12/29 11:30追記) 2019/12/29 11:30ブコメレス 前置き 社のesaに投下したものの反応が薄くて寂しいので全体公開 他人が作ったOSSを使うにあた…

「自前でGitLabを管理するために知っておかなければならないこと」の付録 #gihyosd

これは GitLab Advent Calendar 2019 - Qiita の18日目です。 大事なことなので最初に 付録A:GitLab.comを使いつつ自前のGitLab Runnerを使う 付録B:公式Dockerイメージを使う 大事なことなので最初に 僕がGitLab特集で書いた「自前でGitLabを管理するため…

ERDをPlantUML形式で自動生成するツールを作った

PlantUML + ERDでPlantERDです github.com モチベーション PlantERDの特徴 使い方 出力するテーブル数の制限について 技術的に頑張ったこと テストのこと Foreign keyで隣接している別のテーブルを探す方法 複数DB対応のつらみ 追記:2019/12/13 9:45 モチベ…

Software Design 2020年1月号のGitLab特集に寄稿させて頂きました #gihyosd

商業誌デビューです! gihyo.jp きっかけ GitLab.JP の @hiroponz79 さんにお声がけいただいて参加することになりました。 僕の担当について GitLab特集は全3章構成なのですが、僕は第3章の「自前でGitLabを管理するために知っておかなければならないこと」…

HP Pavilion 23-q191jp ハイエンドモデルのメモリを増設した

3年前くらいに買った HP Pavilion 23-q191jp ハイエンドモデル のメモリを増設したのですが、分解に手間取った&ググっても詳しい分解手順が書いていなかったのでメモ 注意点 メモリ増設の経緯 分解手順 1. モニタの下のキャップを2つ外してネジを緩める 2. …

tanuki_reminderを作った

tanuki_reminderとは 名前の由来 技術的なこと 使い方 tanuki_reminderとは マージされていないMRの一覧を指定した時間にチャットに通知するリマインダーで、 Pull Reminders のGitLabクローンです。 Pull Remindersが便利なのでGitLabでも使いたくて作りま…

GitLab CIとCircleCIのキャッシュ戦略の違い

仕事でCI全般のお悩み相談されることが多くて .circleci/config.yml や .gitlab-ci.yml をリファクタリングすることがよくあるのですが、その時に一番意識してるキャッシュ戦略について長年自分の中の暗黙知になっていて明文化できてなかったので書きます。 …

vagantでgem名とrequireする名前が異なるgemを使う時には注意が必要

タイトルが全て 経緯 原因 経緯 https://hub.docker.com/r/sue445/vagrant-aws/ っていうDockerイメージをメンテしてて*1、Vagrant 2.2.6が出たタイミングでDockerイメージのビルドがコケるようになりました https://app.circleci.com/jobs/github/sue445/do…

Slackからのリクエストを処理するwebhookを1回だけ実行したい

最近そういうことを社内で何回か書いたのでメモ 前提 なぜ重複投稿されるか? 重複実行対策 1. 実行内容を一定時間キャッシュする 2. 排他ロックをする 3. サーバ側での並列処理を捨てる 前提 Slackには特定のイベントが発生した時に任意のwebhookにリクエス…