Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
初心者向け!OSSコントリビュート概要 ~ Keycloakにプルリクエストしてみた話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
kouki.miura
August 28, 2024
Programming
280
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
初心者向け!OSSコントリビュート概要 ~ Keycloakにプルリクエストしてみた話
OSSコントリビュートの方法をOSS Gateで教えてもらい、Keycloakにコントリビュートしてみた、「OSS楽しい」という話です。
kouki.miura
August 28, 2024
More Decks by kouki.miura
See All by kouki.miura
ポジティブアウトカムを用いた医療費削減の可能性について
koukimiura
0
55
VueSapporo#2
koukimiura
0
48
Vuetify4 v-calendarをちゃんと理解する
koukimiura
0
60
認証統合から始めるフロントエンドの機能単位開発 — マイクロサービス思想の適用
koukimiura
0
120
Fiberとは何か?PHPが“非同期言語”になった瞬間
koukimiura
0
82
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
210
Laravel入門:最小構成で理解するMVC
koukimiura
0
140
VueSapporo#1
koukimiura
0
76
Vue.jsを10分で再定義する
koukimiura
1
73
Other Decks in Programming
See All in Programming
The ROI of Quarkus for Spring Boot Applications
hollycummins
0
120
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
4
1k
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
5.9k
コンテキストの使い捨てをやめる — ビジネスルール駆動開発と miko —
ioki
0
200
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
760
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
190
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
670
New "Type" system on PicoRuby
pocke
1
930
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
400
A2UI という光を覗いてみる
satohjohn
1
130
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
260
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
6k
Featured
See All Featured
Building AI with AI
inesmontani
PRO
1
1.1k
My Coaching Mixtape
mlcsv
0
150
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
300
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
250
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
310
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
360
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
210
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
410
Odyssey Design
rkendrick25
PRO
2
700
sira's awesome portfolio website redesign presentation
elsirapls
0
280
Transcript
初心者向け!OSSコントリビュート概要 ~ Keycloakにプルリクエストしてみた話 2024.08.28 クラメソさっぽろIT勉強会 (仮) #4 三浦 恒樹 (MIURA
KOUKI) 診療情報管理士 上級医療情報技師 医用画像情報専門技師 ドゥウェル株式会社
長男が飼っている ハリネズミがアイコン INTRODUCE ・ドゥウェル株式会社 (医療系IT開発・導入会社)に所属 ・マネージャー(プレイングマネージャー) ・仕事では Java,C#,Node.js + JavaScript,TypeScript
・趣味では PHP,Node.js + JavaScript ・3児の父 ・札幌PHP勉強会、JBUG札幌、JavaDO、ゆるWeb勉強会 等に参加
INDEX 初心者向け!OSSコントリビュート概要 ~ Keycloakにプルリクエストしてみた話 ・OSSにコントリビュート? ・OSS Gate ・Keycloak ・コントリビュートの流れ ・良かったこと、失敗したこと
OSSにコントリビュート? ・関わる人の役割 OSS 決定する コミットする (マージする) PRする メンテナー Issueを登録 する
使用する コミッター コントリ ビューター ユーザー
OSSにコントリビュート? ・コントリビュートとは OSS PRする Issueを登録 する コントリ ビューター 「こういう機能作ってみました。 マージしてください」
「ここのバグ直しました。マージし てください」 「インストール手順修正しました。 マージしてください」 「マニュアルの画像更新しました。 マージしてください」 「こういう機能がほしい」 「ここ少し変でしたよ」 「手順どおりインストールできませ ん」 「マニュアルの画像古いです」
OSS Gate https://oss-gate.github.io/about/ 2024.01.14 PHP Lovers Meetup vol.3 + OSS
Gate in 北の大地 (Sapporo Engineer Base共催) ・ワークショップ形式 ・ビギナーとして参加 ・サポーターがビギナーにマンツーマンで手順を教えてくれる ・コントリビュートガイドを読む ・(必要であれば)開発環境を作る ・Issueを登録する ・PRする →PHPの国産CMS baserCMSを選択! →開発環境を作り、テストを実行するとWarningが発生 →Issueを登録することにした ※時間内に終わらず、その日の夜登録
OSS Gate https://github.com/baserproject/basercms/issues/3026 数時間後...対応速い! こちらこそありがとうございまし た。
Keycloak https://www.keycloak.org/ ・OSSのIAM(Identity and Access Management) ・Java - Quarkus -
React.js ・シングルサインオン ・多要素認証 ・パスキー対応 ・OIDC, OAuth2.0, SAML2.0対応 ・LDAP, AD連携 ・外部IdP連携 ・ソーシャルログイン
Keycloak https://www.hitachi.co.jp/products/it/oss/efforts/keycloak/index.html その重要性から、日立製作所 やNRI等のOSS活動が盛ん な大手企業が介入するOSS
コントリビュートの流れ V23~ V22.02 v23~AdminConsoleのメニューの日 本語が壊れていました。 過去バージョンを遡ってみると、v22系 は”Groups”と表示されています。 また、v23でメニューに表示されている のはCreate user画面のGroupsのヘ
ルプ文言でした。
コントリビュートの流れ https://github.com/keycloak/keycloak/issues/27962 1. Contributing Guidelinesを読む 2. ソースコードをCloneしてリソース名等を下調べ 3. Issueを登録する ・テンプレートを埋めていくだけ
・Before reporting an issue ・Area ・Describe the bug ・Version ・Regression ・Expected behavior ・Actual behavior ・How to Reproduce?
コントリビュートの流れ https://github.com/keycloak/keycloak/issues/27965 4. 調べているうちに、英語リソースの指定部分 (画面ソースコード)もおかしいと分かった 5. 2件目のIssueを登録する
コントリビュートの流れ https://github.com/keycloak/keycloak/issues/27965 6. 「YouはPRしてこの問題をfixする気ある?」 Would you possibly be interested in
opening a PR to fix the problem as well? 7. 「はい。光栄です。なる早でfixしてやりますよ。」 Yes. I would be happy to open a pull request to address the issue. I will work on a solution as soon as possible.
コントリビュートの流れ https://github.com/keycloak/keycloak/pull/27964/commits/de87c0f74b5081e3668eaf073136e0ce714118f1
コントリビュートの流れ https://github.com/keycloak/keycloak/pull/27964 8. 「他の日本語分かる人にレビューしてもらって」
コントリビュートの流れ https://github.com/keycloak/keycloak/pull/27964 9. 「日本語の部分、LGTM!」 ※LGTM=Looks Good To Me ありがとうございました!
良かったこと、失敗したこと ▪良かったこと(Keep) ・出会い ・OSSで活躍している人たちは親切 ・活動を通して開発者やユーザーに貢献するという気持ちが感じ取れる ・活動履歴 ・有名OSSにマージされたという達成感 ▪失敗したこと(Problem) ・GitHubの使い方 ・1コミット1PRのルールを守れなかった
・使い方を間違えないようにトレーニングが必要 ▪挑戦したいこと(Try) ・メンテナーになる ・有名OSSのメンテナーになって、多くのユーザーや社会に貢献したい
SUMMARY ・OSSに関わる人たちの役割の整理 ・「コントリビュート」はOSSを良くする活動であれば何でも良い ・OSS Gateでコントリビュートをトレーニングできる ・有名OSS(Keycloak)にコントリビュートすることで自信が付いた ・すべては難しいが、自社製品で使用するOSSのいくつかはコントリビュートしながら 継続利用していきたい ご清聴ありがとうございました。