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
開発者向けSaaS Rocro
Search
Yoshiyuki Mineo
November 29, 2017
Technology
0
730
開発者向けSaaS Rocro
PyData.Tokyo Meetup 2017/11/29
Yoshiyuki Mineo
November 29, 2017
Tweet
Share
More Decks by Yoshiyuki Mineo
See All by Yoshiyuki Mineo
GCP を活用してスケーラブルな CI サービスを作った話
yoshiyukimineo
0
180
Rocro Inspecode Hands On with Bitbucket
yoshiyukimineo
0
110
Rocro Inspecode Hands On
yoshiyukimineo
0
520
RocroにおけるGCP活用事例
yoshiyukimineo
0
970
Other Decks in Technology
See All in Technology
Enhancing SRE Using AI
yoshiiryo1
1
280
企業テックブログにおける執筆ネタの考え方・見つけ方・広げ方 / How to Think of, Find, and Expand Writing Topics for Corporate Tech Blogs
honyanya
0
810
Fin-JAWS第38回reInvent2024_全金融系セッションをライトにまとめてみた
mhrtech
1
120
エラーバジェット枯渇の原因 - 偽陽性との戦い -
phaya72
1
100
カスタムインストラクションでGitHub Copilotをカスタマイズ!
07jp27
6
530
プロダクト価値を引き上げる、「課題の再定義」という習慣
moeka__c
0
210
AWSエンジニアに捧ぐLangChainの歩き方
tsukuboshi
0
220
SREとしてスタッフエンジニアを目指す / SRE Kaigi 2025
tjun
15
6.5k
ソフトウェアアーキテクトのための意思決定術: Software Architecture and Decision-Making
snoozer05
PRO
17
4k
例外処理を理解して、設計段階からエラーを「見つけやすく」「起こりにくく」する
kajitack
12
3.8k
あなたはJVMの気持ちを理解できるか?
skrb
5
2k
Postman Vaultを使った秘密情報の安全な管理
nagix
3
140
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
427
64k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
Optimising Largest Contentful Paint
csswizardry
33
3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
19k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Done Done
chrislema
182
16k
Faster Mobile Websites
deanohume
305
30k
How GitHub (no longer) Works
holman
312
140k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Transcript
開発者向けSaaS Rocro Rocro株式会社 峯尾 嘉征 PyData.Tokyo Meetup 2017/11/29
▪ ソフトウェア開発者向けサービス群 – https://rocro.com – GitHub / Bitbucketと連携 ▪ 9/14
Public Beta開始 – 現在、無料でご利用いただけます ▪ 名前の由来 – アジャイル開発:イテレーションを回しながらソフトウェアをつくる – 回転させながらものをつくる道具 → ろくろ © Rocro Inc. 2
▪ Inspecode – 自動コードレビュー&コード修正サービス – 現在57個のツールをサポート ▪ 静的解析、コードフォーマット、ユニットテスト ▪ Docstand
– APIドキュメント自動生成&ホスティングサービス – Sphinxにも対応 ▪ Loadroid – 自動負荷テストサービス – closed test中。参加を希望する方はご連絡ください。 © Rocro Inc. 3
▪ 静的解析の結果を分かりやすくレポート – A, B, C, D, Fの5段階評価 – Issueを様々な分類でチェック
▪ ファイル ▪ ツール ▪ 言語 ▪ 重要度 ▪ 新規/既存 – トレンド ▪ 5段階評価 ▪ Issue数 © Rocro Inc. 4 Inspecode
▪ Continuous Integration – Git Push/Pull Requestの自動チェック ▪ ツールごとにIssue数の閾値を設定可能 閾値を超えたらFail
– Email/Slack/HipChat通知 ▪ 失敗・回復時だけ通知も可能 – Badge(READMEに貼るアイコン) © Rocro Inc. 5 Inspecode
▪ サポートしているPythonツール – Flake8 – Prospector – Pyflakes – Pylint
– YAPF – pycodestyle (旧pep8) – autopep8 ▪ サポートしているPythonバージョン – 2.7 – 3.4, 3.5, 3.6 © Rocro Inc. 6 Inspecode 近々、noseなど ユニットテストにも対応する予定
Rocroの強み ▪ ࣗಈηοτΞοϓ ▪ ࣗಈमਖ਼ ▪ ࣗಈฒྻԽ ユーザの⼿間を⼤幅に減らし、結果を素早く返すことにフォーカス © Rocro
Inc. 7
自動セットアップ ▪ 強力なデフォルト設定 – レポジトリ内の使用言語を検出して、適切なツールを自動実行 例:Pythonを検出 → Pyflakesなどを適用 – 各ツールの設定ファイルを検出して自動適用
例:Prospectorの場合、.prospector.ymlを検出して適用 ▪ 依存ライブラリを自動でダウンロード – 例:自動でpip install -r requirements.txt エンジニアの各種セットアップの時間を⼤幅に削減 © Rocro Inc. 8
自動修正 ▪ ツールで検出したIssueを自動で修正 → エンジニアの修正作業の時間を大幅に削減 ▪ 修正機能を独自に実装 – Checkstyle, PMD,
golint, gosimple – 今後も対応ツールを増やしていく予定 ▪ PythonではYAPF, autopep8が自動修正に対応 if err != nil { return err } return nil return err © Rocro Inc. 9
自動並列化 ▪ ツールレベルで自動で並列化 – ツールごとにDockerコンテナ – 様々なツールを活用するチームほど 実行時間を大幅に短縮可能 A B
C A B 実⾏時間削減 C © Rocro Inc. 10
End © Rocro Inc. 11