Slide 1

Slide 1 text

@koluku 2025/01/17 Fujiwara Tech Conference 2025 asdf-ecspresso作って 友達が増えた話

Slide 2

Slide 2 text

● この話は本人の許可を得て面白おかしく書いています ● 内容はそこまで無いです 諸注意

Slide 3

Slide 3 text

● @koluku (コルク) ○ サーバーサイドエンジニア ■ not SRE ● 所属遍歴 ○ 2020/04 ~ 株式会社カヤック ○ 2023/11 ~ ピクシブ株式会社 ● OSS ○ kayac/asdf-ecspresso, koluku/s3s 軽い自己紹介

Slide 4

Slide 4 text

● @koluku (コルク) ○ サーバーサイドエンジニア ■ not SRE ● 所属遍歴 ○ 2020/04 ~ 株式会社カヤック ○ 2023/11 ~ ピクシブ株式会社 ● OSS ○ kayac/asdf-ecspresso, koluku/s3s 軽い自己紹介

Slide 5

Slide 5 text

● @koluku (コルク) ○ サーバーサイドエンジニア ■ not SRE ● 所属遍歴 ○ 2020/04 ~ 株式会社カヤック ○ 2023/11 ~ ピクシブ株式会社 ● OSS ○ kayac/asdf-ecspresso, koluku/s3s 軽い自己紹介 偶然にもfujiwaraさんと同じ会社

Slide 6

Slide 6 text

asdf / mise でecspressoをインストールできるように した人です $ asdf plugin add ecspresso $ asdf install ecspresso latest $ asdf global ecspresso latest # or $ mise use --global ecspresso

Slide 7

Slide 7 text

作った背景

Slide 8

Slide 8 text

時は2022年11月、 ecspresso v2の候補版として v1.99.x が出始めた時期

Slide 9

Slide 9 text

v2が出るということ は後方互換性の不安 があるのでは?

Slide 10

Slide 10 text

v2が出るということ は後方互換性の不安 があるのでは? v2が出るということは後 方互換性の不安があるの では? 普通のdeploy関連ではほ ぼ非互換はないので 大丈夫ですよ

Slide 11

Slide 11 text

v2が出るということは後 方互換性の不安があるの では? よかったー

Slide 12

Slide 12 text

v2が出るということ は後方互換性の不安 があるのでは? v2が出るということは後 方互換性の不安があるの では? いや、でもAWS側で 仕様変わって動かな くなることたまに あったよな?

Slide 13

Slide 13 text

v2が出るということ は後方互換性の不安 があるのでは? v2が出るということは後 方互換性の不安があるの では? v2に乗り換えない場 合でもhomebrewの バージョンが進ん じゃって都合悪いこ と多そう?

Slide 14

Slide 14 text

v2が出るということ は後方互換性の不安 があるのでは? v2が出るということは後 方互換性の不安があるの では? 現行バージョンと RC版のバイナリを切 り替えるの面倒じゃ ない?

Slide 15

Slide 15 text

v2が出るということ は後方互換性の不安 があるのでは? v2が出るということは後 方互換性の不安があるの では? ……

Slide 16

Slide 16 text

バージョン 管理ツール 作ります!

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

バイナリバージョン管理といえば2022 年はまだanyenv系が主流だった

Slide 19

Slide 19 text

が、開発にあたってanyenv系は プログラミング言語系のバージョン管理 という色が強かったので却下

Slide 20

Slide 20 text

そこで当時流行り始めたasdfに着目

Slide 21

Slide 21 text

● asdf-vm/asdf-plugin-template からテンプレートビルドして asdf-ecspressoに名前を変える ● シェルスクリプトで書かれたbin/list-all、bin/download、bin/install の参照先をGitHub Releasesに向けるだけ 意外と簡単に作れる asdf plugin

Slide 22

Slide 22 text

No content

Slide 23

Slide 23 text

自己満足

Slide 24

Slide 24 text

1ヶ月後

Slide 25

Slide 25 text

No content

Slide 26

Slide 26 text

● .ecspresso-version というバージョン番号が書かれたファイルを置くと 複数のバージョンでecspressoをインストールしていてもプロジェクトごと に指定のバージョンで実行できる機能 ○ これ自体はasdfの機能 ● GitHub Actionsで実行するecspressoのバージョンとローカルのバー ジョンを合わせたい目的でMRが作られたぽい これはどういうPR?

Slide 27

Slide 27 text

ただその時は めんどくさくて忙しかったので PRを放置してしまった

Slide 28

Slide 28 text

さらに2ヶ月後

Slide 29

Slide 29 text

意訳 「はよレビューしろ」

Slide 30

Slide 30 text

_人人人_ > こわい! <  ̄^Y^Y^Y ̄

Slide 31

Slide 31 text

意訳 「さーせん、気がついていなかったので今から見ます」

Slide 32

Slide 32 text

特に問題なかったのでMerge

Slide 33

Slide 33 text

ところでこのPRを送ってきたのは誰か

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

No content

Slide 36

Slide 36 text

No content

Slide 37

Slide 37 text

No content

Slide 38

Slide 38 text

さらに1ヶ月後

Slide 39

Slide 39 text

YAPC::Kyoto 2023の前夜祭後に はてな京都オフィスに遊びに来たとき のこと

Slide 40

Slide 40 text

No content

Slide 41

Slide 41 text

ところで お名前をうかがっても よろしいでしょうか?

Slide 42

Slide 42 text

cohalzです

Slide 43

Slide 43 text

No content

Slide 44

Slide 44 text

asdf-ecspresso 僕の個人リポジトリで すけどkayac orgの ほうがいいですか ね?

Slide 45

Slide 45 text

まぁそっちのほうが 安心かも asdf-ecspresso 僕の個人リポジトリで すけどkayac orgの ほうがいいですか ね?

Slide 46

Slide 46 text

というわけで会社にお願いしてリポジトリを移譲 => kayac/asdf-ecspresso

Slide 47

Slide 47 text

それ以降会う度に ダル絡みするようになりました

Slide 48

Slide 48 text

教訓: 雑なOSS contributeでも 必要な人はいるし それで知り合いは増えることがある

Slide 49

Slide 49 text

No content