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
480
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
Satoshi Kaneyasu
October 29, 2024
Tweet
Share
More Decks by Satoshi Kaneyasu
See All by Satoshi Kaneyasu
密集、ドキュメントのコロケーション with AWS Lambda
satoshi256kbyte
0
190
【PHP】破壊的バージョンアップと戦った話〜決断と説得
satoshi256kbyte
0
140
今更聞けないセキュリティ用語の基礎知識 2025新春
satoshi256kbyte
0
110
AWS re:Invent 2024個人的まとめ
satoshi256kbyte
0
200
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
300
おもにクラウドの話してます#4 OPスライド
satoshi256kbyte
0
60
AWS認定資格を勉強した先に何があったか
satoshi256kbyte
2
270
Amazon Aurora Serverless v2のアプデと、Amazon Aurora PostgreSQL Limitless DatabaseのGAについて
satoshi256kbyte
0
170
Amazon Neptuneで始めてみるグラフDB-OpenSearchによるグラフの全文検索-
satoshi256kbyte
4
540
Other Decks in Programming
See All in Programming
ペアーズでの、Langfuseを中心とした評価ドリブンなリリースサイクルのご紹介
fukubaka0825
2
320
ソフトウェアエンジニアの成長
masuda220
PRO
10
1.1k
Conform を推す - Advocating for Conform
mizoguchicoji
3
690
AWS Organizations で実現する、 マルチ AWS アカウントのルートユーザー管理からの脱却
atpons
0
150
Pythonでもちょっとリッチな見た目のアプリを設計してみる
ueponx
1
550
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
130
color-scheme: light dark; を完全に理解する
uhyo
3
240
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
120
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
1k
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
690
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.2k
GAEログのコスト削減
mot_techtalk
0
120
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
74
9.2k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.4k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
Designing Experiences People Love
moore
140
23k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Scaling GitHub
holman
459
140k
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をハッシュ化したものをキーの 一部とする キャッシュがヒットしない場合のみ、
ライブラリをインストールするように変更
理屈はわかるけど、これを誰がやるのか? • アプリエンジニアの方がやるのがベターだと思いますが、ライブラリ管 理ツールの動きをしっかり把握してる人って案外少ないので、手を挙げ る人は少ないかも • パイプラインを作ってくれる人が外部にいる場合もあるでしょうが、 その方にチューニングまで求めるのはちょっと微妙な気がします • (余談)プラットフォームエンジニアという役割の人は、そうそう
現れないと思います • リーダーが明確に指示を出す/誰かが手を挙げる しないとこの辺の改 善はおざなりになるかも
<まとめ> 手を挙げることの大切さと、それに必要なこと • 今回述べたようなあんまり皆がやりたがらないことに手を挙げる人が リーダーとかアーキテクトになってくのだと思います • やったことないことに挑戦するのは勇気がいります • 何がどうなって動いていると、やったことなくてもあたりをつけること ができるので、それが勇気の源泉になることがあります
• 目の前の機能の実装で忙しいでしょうか、たまには手を止めて自分の目 の前のコードは何がどうなって動いているか目を向けると将来的に仕事 の幅を広げることにつながるかもしれません
以上です。