Slide 1

Slide 1 text

Privateリポジトリで 管理しているソースコードを 無料でGitHub Pagesに公開する ネクスト受講生・xryuseix (@ryusei_ishika)

Slide 2

Slide 2 text

自己紹介 Twitter: @ryusei_ishika ネクストキャンプの受講生です。 Webセキュリティと開発が好きです。 このスライドは今朝南武線の中で書きました。 2

Slide 3

Slide 3 text

そもそもprivateリポジトリでGitHub Pagesは使用できます (本末転倒) これってstring? number? https://expressjs.com/ja/starter/hello-world.html 3

Slide 4

Slide 4 text

そもそもprivateリポジトリでGitHub Pagesは使用できます (本末転倒) これってstring? number? https://docs.github.com/ja/pages/getting-started-with-github-pages/about-github-pages 4

Slide 5

Slide 5 text

そもそもprivateリポジトリでGitHub Pagesは使用できます (本末転倒) これってstring? number? 5

Slide 6

Slide 6 text

なのでこのLTは乞食向けです これってstring? number? 6 お金持ちの皆さんはお帰りください

Slide 7

Slide 7 text

じゃあまだ聞いている人は 乞食ってことで🤟 これってstring? number? 7

Slide 8

Slide 8 text

そもそもprivateでレポジトリを管理して、 publicで公開したい時って何? これってstring? number? 8 * 基本的にGitで管理したいが、特定のファイルだけ公開したくない時 * 非可逆・元に戻しにくいビルドが行われる場合 * minifyなどを用いており、かつソースコードは公開したくない *ビルドにcredencialが必要な場合 僕は特定のファイルをハッシュ化して、 そのハッシュ値だけを公開するWebサイトが作りたかったです

Slide 9

Slide 9 text

考えました!我流なのでもっといい方法あるかも これってstring? number? 9

Slide 10

Slide 10 text

やりかた これってstring? number? 10

Slide 11

Slide 11 text

やりかた 11 deploy.yaml (publicのGitHub Actions) workflow_dispatchを設定しておく action.yaml (privateのGitHub Actions) deploy.yamlのworkflowを発火する Personal Access Tokenが必要!

Slide 12

Slide 12 text

やりかた これってstring? number? 12

Slide 13

Slide 13 text

やりかた これってstring? number? 13 • actions/checkoutは別リポジトリの特定のブランチからcheckoutできる • さっきとは別のPersonal Access Tokenが必要! • 下の例ではprivateディレクトリを作成し、特定のリポジトリのmainブラン チをそこへ保存しています • この後の処理で、公開したくないファイルを削除、ビルド後のminifyされ たファイルだけを公開、などを行います ←publicの workflow file

Slide 14

Slide 14 text

乞食の方々、ご清聴ありがとうございました! これってstring? number? 14 まとめスライドで特に言うこともないので、 もう一度Twitterのアカウントでも書いとき ます。 @ryusei_ishika