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
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
Search
Satoshi Kaneyasu
October 29, 2024
Programming
5
380
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
Satoshi Kaneyasu
October 29, 2024
Tweet
Share
More Decks by Satoshi Kaneyasu
See All by Satoshi Kaneyasu
Amazon Neptuneで始めてみるグラフDB-OpenSearchによるグラフの全文検索-
satoshi256kbyte
4
310
【5分LT】フロントエンドとバックエンドを繋ぐ認証サービス Amazon Cognito
satoshi256kbyte
2
48
AWS認定資格を受験するにあたり、気づいたこと・実践していたことのまとめ
satoshi256kbyte
2
160
[LT]Amazon Neptuneで始める初めてのグラフDB ー グラフDBを使う意味を考える ー
satoshi256kbyte
2
330
おもにクラウドの話してます#3 OPスライド
satoshi256kbyte
1
29
AWS CodeCommitの次として考えた場合のAmazon CodeCatalyst
satoshi256kbyte
1
800
アプリケーションエンジニアがDistributed Load Testingで 負荷テストをしてみる〜Ver.B〜
satoshi256kbyte
2
62
アプリケーションエンジニアがDistributed Load Testingで負荷テストをしてみる〜Ver.A〜
satoshi256kbyte
2
120
AWS App Studio (Preview)は何分でアプリを作れるのか
satoshi256kbyte
0
270
Other Decks in Programming
See All in Programming
飲食業界向けマルチプロダクトを実現させる開発体制とリアルな現状
hiroya0601
1
390
PagerDuty を軸にした On-Call 構築と運用課題の解決 / PagerDuty Japan Community Meetup 4
horimislime
1
110
gopls を改造したら開発生産性が高まった
satorunooshie
8
240
Java ジェネリクス入門 2024
nagise
0
600
破壊せよ!データ破壊駆動で考えるドメインモデリング / data-destroy-driven
minodriven
16
4k
Re:ProS_案内資料
rect
0
380
讓數據說話:用 Python、Prometheus 和 Grafana 講故事
eddie
0
350
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
2
420
のびしろを広げる巻き込まれ力:偶然を活かすキャリアの作り方/oso2024
takahashiikki
1
400
Googleのテストサイズを活用したテスト環境の構築
toms74209200
0
270
役立つログに取り組もう
irof
26
8.5k
EventSourcingの理想と現実
wenas
6
2.1k
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
328
21k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
It's Worth the Effort
3n
183
27k
Art, The Web, and Tiny UX
lynnandtonic
296
20k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Designing for humans not robots
tammielis
249
25k
4 Signs Your Business is Dying
shpigford
180
21k
Ruby is Unlike a Banana
tanoku
96
11k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
167
49k
[RailsConf 2023] Rails as a piece of cake
palkan
51
4.8k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Build The Right Thing And Hit Your Dates
maggiecrowley
32
2.4k
Transcript
GitHub Actionsのキャッシュと 手を挙げることの大切さと それに必要なこと 2024.10.30 SATOSHI KANEYASU
自己紹介 氏名:兼安 聡 所属:株式会社サーバーワークス アプリケーションサービス部 在住:広島(フルリモート) 担当:DevOps、PM、SM 2024 Japan AWS
Top Engineers (Database) 2024 Japan AWS All Certifications Engineers 認定スクラムマスター X:@satoshi256kbyte 去年よく触ってたDBはAmazon Timestream 今年はAmazon Neptuneをよく触ってます
今日のお話 • GitHub Actionsでビルド処理してたけど微妙に遅かったのでチューニン グしてみました。 • やってたらちょっと思うところが出たのでその話もさせていただきます。 • プロジェクトの一員として日々業務に当たられているプログラマーをイ メージして書いてみました。
GitHub Actions、使ってますか? • GitHub Actionsは、リポジトリ内にYAMLファイルを置くと、GitHubへ の操作をトリガーに、YAMLに書いた処理を自動で行うものです。 • いわゆるCI/CDでよく使います。 • https://github.co.jp/features/actions
GitHub Actionsのサンプル ビルド用コンテナのOSの指定 ソースのチェックアウト Pythonの準備 pipenvのインストール 依存ライブラリのインストール ※ここに数十秒かかる 自動テストの実行
この中でチューニングを試みる ここがチューニングができそう なのでやってみます
actions/cache@v4でキャッシュを効かせる PIPENV_VENV_IN_PROJECT: “true”とした場合、 pipenvでインストールしたライブラリは、 プロジェクトフォルダの.venvに溜まるのでここをキャッシュ対象とする Pipfile.lockが変わってない=必要なライブラ リが変わってないとみなせるので、 Pipefile.lockをハッシュ化したものをキーの 一部とする キャッシュがヒットしない場合のみ、
ライブラリをインストールするように変更
理屈はわかるけど、これを誰がやるのか? • アプリエンジニアの方がやるのがベターだと思いますが、ライブラリ管 理ツールの動きをしっかり把握してる人って案外少ないので、手を挙げ る人は少ないかも • パイプラインを作ってくれる人が外部にいる場合もあるでしょうが、 その方にチューニングまで求めるのはちょっと微妙な気がします • (余談)プラットフォームエンジニアという役割の人は、そうそう
現れないと思います • リーダーが明確に指示を出す/誰かが手を挙げる しないとこの辺の改 善はおざなりになるかも
<まとめ> 手を挙げることの大切さと、それに必要なこと • 今回述べたようなあんまり皆がやりたがらないことに手を挙げる人が リーダーとかアーキテクトになってくのだと思います • やったことないことに挑戦するのは勇気がいります • 何がどうなって動いていると、やったことなくてもあたりをつけること ができるので、それが勇気の源泉になることがあります
• 目の前の機能の実装で忙しいでしょうか、たまには手を止めて自分の目 の前のコードは何がどうなって動いているか目を向けると将来的に仕事 の幅を広げることにつながるかもしれません
以上です。