Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
Search
Satoshi Kaneyasu
October 29, 2024
Programming
5
440
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
Satoshi Kaneyasu
October 29, 2024
Tweet
Share
More Decks by Satoshi Kaneyasu
See All by Satoshi Kaneyasu
おもにクラウドの話してます#4 OPスライド
satoshi256kbyte
0
25
AWS認定資格を勉強した先に何があったか
satoshi256kbyte
2
74
Amazon Aurora Serverless v2のアプデと、Amazon Aurora PostgreSQL Limitless DatabaseのGAについて
satoshi256kbyte
0
46
Amazon Neptuneで始めてみるグラフDB-OpenSearchによるグラフの全文検索-
satoshi256kbyte
4
410
【5分LT】フロントエンドとバックエンドを繋ぐ認証サービス Amazon Cognito
satoshi256kbyte
2
68
AWS認定資格を受験するにあたり、気づいたこと・実践していたことのまとめ
satoshi256kbyte
2
180
[LT]Amazon Neptuneで始める初めてのグラフDB ー グラフDBを使う意味を考える ー
satoshi256kbyte
2
350
おもにクラウドの話してます#3 OPスライド
satoshi256kbyte
1
33
AWS CodeCommitの次として考えた場合のAmazon CodeCatalyst
satoshi256kbyte
1
1k
Other Decks in Programming
See All in Programming
The rollercoaster of releasing an Android, iOS, and macOS app with Kotlin Multiplatform | droidcon Italy
prof18
0
120
Serverless苦闘史
mosh_inc
0
140
物流システムにおけるリファクタリングとアーキテクチャの再構築 〜依存関係とモジュール分割の重要性〜
deeprain
1
280
The Efficiency Paradox and How to Save Yourself and the World
hollycummins
1
100
イマのCSSでできる インタラクション最前線 + CSS最新情報
clockmaker
5
3.8k
今からはじめるAndroidアプリ開発 2024 / DevFest 2024
star_zero
0
540
ローコードSaaSのUXを向上させるためのTypeScript
taro28
1
730
CSC509 Lecture 12
javiergs
PRO
0
200
[Do iOS '24] Ship your app on a Friday...and enjoy your weekend!
polpielladev
0
220
事業成長を爆速で進めてきたプロダクトエンジニアたちの成功談・失敗談
nealle
3
1.1k
CSC509 Lecture 13
javiergs
PRO
0
150
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
1
3.2k
Featured
See All Featured
The Language of Interfaces
destraynor
154
24k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
27
2.1k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
770
Into the Great Unknown - MozCon
thekraken
33
1.5k
How to Ace a Technical Interview
jacobian
276
23k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Practical Orchestrator
shlominoach
186
10k
How to Think Like a Performance Engineer
csswizardry
21
1.2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
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をハッシュ化したものをキーの 一部とする キャッシュがヒットしない場合のみ、
ライブラリをインストールするように変更
理屈はわかるけど、これを誰がやるのか? • アプリエンジニアの方がやるのがベターだと思いますが、ライブラリ管 理ツールの動きをしっかり把握してる人って案外少ないので、手を挙げ る人は少ないかも • パイプラインを作ってくれる人が外部にいる場合もあるでしょうが、 その方にチューニングまで求めるのはちょっと微妙な気がします • (余談)プラットフォームエンジニアという役割の人は、そうそう
現れないと思います • リーダーが明確に指示を出す/誰かが手を挙げる しないとこの辺の改 善はおざなりになるかも
<まとめ> 手を挙げることの大切さと、それに必要なこと • 今回述べたようなあんまり皆がやりたがらないことに手を挙げる人が リーダーとかアーキテクトになってくのだと思います • やったことないことに挑戦するのは勇気がいります • 何がどうなって動いていると、やったことなくてもあたりをつけること ができるので、それが勇気の源泉になることがあります
• 目の前の機能の実装で忙しいでしょうか、たまには手を止めて自分の目 の前のコードは何がどうなって動いているか目を向けると将来的に仕事 の幅を広げることにつながるかもしれません
以上です。