Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 159件

新着順 人気順

GithubActionsの検索結果1 - 40 件 / 159件

GithubActionsに関するエントリは159件あります。 githubactionsci などが関連タグです。 人気エントリには 『もう初回コードレビューはAIに任せる時代になった - CodeRabbit -』などがあります。
  • もう初回コードレビューはAIに任せる時代になった - CodeRabbit -

    どんな人向けの記事? レビューによって心理的なダメージを受けやすい方 非エンジニアだが、エンジニアチームがどんな機能を作っているか知りたい方 業務が溜まっていて、レビューに割く時間を捻出するのに苦労している方 コピペできるコードも公開します 初回レビューをAIに任せると、いろんなロールの人の役に立つ レビューは得意ですか? 優秀なエンジニアしかいないチームであれば、PRは1トピックに絞って小さく明確なコミットによって作成され、適切な要約とともに提供されることでしょう。 しかし、実際にはいろいろな制約から、PRが想定よりずっと大きくなってしまったり、関連トピックと異なるコードが混じってしまうこともあります。 実際のところ、大きなPRを適切にレビューするのは難しいことです。また、自分が詳しくない領域のレビューを行わなければいけない機会もあります。 今回の記事は、レビューを作成してくれるAI C

      もう初回コードレビューはAIに任せる時代になった - CodeRabbit -
    • GitHub Actions 逆引きリファレンス

      1.この記事の立ち位置#自分がいつも調べていること、忘れがちな Tips や小ネタを列挙していく。そのため、網羅性は重視しない。 というのも、なにか調べていていろいろ読み漁った挙げ句、1周回って行き着くところは GitHub Actions の公式ドキュメントであり、たとえば Workflow の書き方は以下のページをよく開いている。 Workflow syntax for GitHub Actions - GitHub Docs それでも、公式ドキュメントで参照したい箇所を引っ張るための用語を知るまでに苦労することが往々にあり、この記事が、公式ドキュメントで参照したい箇所を導くための助けとなればと思い、書いていく。 2.Step と Job と Workflowの違いアレコレ#2-1.Step と Job と Workflow の違いの一行まとめ#Step < Job < Workflo

      • Github Actions チートシート

        概要 何度も調べて何度もテストしたりしたので、多用するものをまとめていきたい。 項目 push時に実行 // feature/aaaで動く。 feature/aaa/bbbでは動かない on: push: branches: - feature/* // feature/aaa, feature/aaa/bbbで動く on: push: branches: - feature/** // なにかしらのtagがpushされたときに実行、branchのpushは無視 on: push: tags: [ '**' ] branches-ignore: [ '**' ] // 指定したpathの変更だけでは実行しない on: push: branches: - main paths-ignore: - '*.md' - 'docs/**' on: workflow_dispatch: inputs

          Github Actions チートシート
        • 社内用GitHub Actionsのセキュリティガイドラインを公開します | メルカリエンジニアリング

          この記事は、Merpay Tech Openness Month 2023 の4日目の記事です。 こんにちは。メルコインのバックエンドエンジニアの@goroです。 はじめに このGitHub Actionsのセキュリティガイドラインは、社内でGithub Actionsの利用に先駆け、社内有志によって検討されました。「GitHub Actionsを使うにあたりどういった点に留意すれば最低限の安全性を確保できるか学習してもらいたい」「定期的に本ドキュメントを見返してもらい自分たちのリポジトリーが安全な状態になっているか点検する際に役立ててもらいたい」という思いに基づいて作成されています。 今回はそんなガイドラインの一部を、社外の方々にも役立つと思い公開することにしました。 ガイドラインにおける目標 このガイドラインは事前に2段階の目標を設定して作成されています。まず第1に「常に達成したいこと

            社内用GitHub Actionsのセキュリティガイドラインを公開します | メルカリエンジニアリング
          • 入門 GitHub Actions - メドピア開発者ブログ

            CTO室SREの @sinsoku です。 社内のGitHub ActionsのYAMLが複雑になってきたので、私が参考にしてる情報や注意点、イディオムなどをまとめておきます。 頻繁に参照するページ 新しい機能の説明が日本語ページに反映されていないため、基本的に英語ページを読むことを推奨。 ワークフロー構文 YAMLの基本構文の確認 コンテキストおよび式の構文 github オブジェクトの情報、関数の確認 ワークフローをトリガーするイベント 各イベントの GITHUB_SHA と GITHUB_REF が記載されている About GitHub-hosted runners インストールされているSoftwareのバージョンなどが記載されている GitHub REST API APIを使うときに参照する よく使うaction actions/checkout イベントによってはデフォルトブ

              入門 GitHub Actions - メドピア開発者ブログ
            • GitHub Actions で簡単にバージョン番号付きリリースとリリースノートを作成する方法

              対象読者判定フロー 以下の質問にはいかいいえで答えてください。 Q1: GitHub を使用していますか? はいの方→次の質問に進んでください。 いいえの方→対象外です。すみません。 Q2: ソースコードなどの変更は全てプルリクエストで行って(=master/main 直コミットはしていない(多少ならOK))いますか? はいの方→次の質問に進んでください。 いいえの方→まずはプルリクエストベースの開発に切り替えてみてはいかがでしょう? その後で続きを読んでください。 Q3: リリースノートをちゃんと書いていますか? はいの方→基本的に対象外です。継続して書いていって下さい。楽をしたいと思ってる場合は続きを読んでください。 いいえの方→あなたは対象読者です! この記事を読んで、お手軽自動生成でも良いのでリリースノートを作成しましょう! はじめに 公開しているソフトウエアにバージョン番号を付け

                GitHub Actions で簡単にバージョン番号付きリリースとリリースノートを作成する方法
              • GitHub Actions に入門するなら GitHub Learning Lab の Hello World コースを受講しよう - kakakakakku blog

                GitHub を学ぶときに「GitHub Learning Lab」を使うと便利!という紹介記事を6月に書いた.最近 GitHub Actions を使う機会があり,入門するために「GitHub Learning Lab」の「GitHub Actions: Hello World」コースを受講した.今回も非常に良かった! kakakakakku.hatenablog.com GitHub Actions: Hello World 「GitHub Actions: Hello World」は GitHub Actions を学ぶ入門コースとなる.現在はまだ日本語に翻訳されてなく,英語を選択する必要はあるけど,Bot / Issue / Pull Request を活用したインタラクティブな構成になっていて,楽しく学べる.以下のステップを進めていくことになり,最終的には GitHub Acti

                  GitHub Actions に入門するなら GitHub Learning Lab の Hello World コースを受講しよう - kakakakakku blog
                • https://tech.pepabo.com/2021/03/03/ec_efficiency_with_github_actions/

                    https://tech.pepabo.com/2021/03/03/ec_efficiency_with_github_actions/
                  • なんとなくから脱却する GitHub Actionsグッドプラクティス11選 | gihyo.jp

                    本記事のテーマはGitHub Actionsです。個人的に「もっと早く知りたかった!」と考えているグッドプラクティスを、厳選してお届けします。想定読者は次のとおりです。 普段GitHub Actionsを雰囲気で運用している人 GitHub Actionsをコピペや生成AIで乗り切っている人 他者が書いたコードの意味をより深く理解したい人 本記事でGitHub Actionsの基本は説明しません。グッドプラクティスを含めて基礎から学びたい人は、拙著『GitHub CI/CD実践ガイド』を読んでみてください。GitHub Actionsの基本構文から運用のコツまで、網羅的に解説しています。さて書籍紹介はこれぐらいにして、さっそく本題へ進みます。 GitHub Actionsの設計指針 GitHub ActionsはCI/CDや各種自動化で役立つ、汎用的なワークフローエンジンです。一般的に長期

                      なんとなくから脱却する GitHub Actionsグッドプラクティス11選 | gihyo.jp
                    • GitHub ActionsにおけるStep/Job/Workflow設計論

                      この記事について GitHub Actionsには、以下3つの実行単位が存在します。 Workflow Job Step パイプラインを組む中で出てくる複数個の処理を、1つの実行単位でまとめてしまうか、それとも分割するのかというのは悩むポイントかと思います。 一つのstepのrunフィールドにコマンドを詰め込む?それともstepを分けた方がいい? 一つのJobの中のstepとして記述した方がいい?それとも別のJobに定義した方がいい? 一つのWorkflowの中にJobをたくさん定義する?それともWorkflowを別にする? この記事では、Workflow・Job・Stepそれぞれの性質を踏まえた上で、ベストな処理単位の選び方を考察します。 使用する環境・バージョン GitHub Actions: 2022/5/15時点での機能をもとに考察 読者に要求する前提知識 GitHub Actio

                        GitHub ActionsにおけるStep/Job/Workflow設計論
                      • freeeの自動テストの全体構成 - freee Developers Hub

                        こんにちは、Software Engineer in Qualityチーム(通称SEQチーム)の @teyamagu です。 私たちのチームは普段自動/手動テストの基盤開発や開発フィードバックサイクルの高速化に向けた開発をおこなっています。 その一環で、先日、社内でfreeeの自動テストシステム全体像を共有したのですが、この辺りのことを社外の友人達と話したところ、自動テストの具体的な構成や普段の運用など事例が少なく、どんなことをやっているのかイメージしにくいとの話を伺ったので、社内向け原稿をちょっと手直しして、おすそ分けと言うことで、ここで紹介します。 特に変わったことをおこなっているわけではありませんが、自動テストの関係性の理解に参考になれば幸いです。 基本的な考え方 自動テストが既存のデプロイ・リリースのブロッカーではなく、開発のフィードバックを加速させるために、自動テストそのものが高

                          freeeの自動テストの全体構成 - freee Developers Hub
                        • 業務で使えるかもしれない…!?GitHub Actions の Tips 集 / CI/CD Test Night #7

                          https://testnight.connpass.com/event/311263/

                            業務で使えるかもしれない…!?GitHub Actions の Tips 集 / CI/CD Test Night #7
                          • 共同開発を始めるときに便利な 5 つの GitHub Actions

                            はじめに スタートアップ等において新しいプロダクトを始める時は、負債が無い代わりに何もありません。 そういった時に、ソフトウェアの品質を担保するための CI のセットアップが、初期から重要になってきます。 GitHub を使用している場合は、GitHub Actions を使用されることが殆どだと思うので、そちらを前提に進めていきたいと思います。 1. rhysd/actionlint 様々なエンジニアが action を追加したり、編集したりするようになった時、全員が正しい書き方で書いていくことは難しいです。 また、それを 1 人の GitHub Actions Expert がレビューしていくのは大変で、属人化してしまっているので、避ける方が望ましいです。 以下をコピペすれば、使用できます。 name: Actionlint on: push: branches: [ main ] p

                              共同開発を始めるときに便利な 5 つの GitHub Actions
                            • ついに最強のCI/CDが完成した 〜巨大リポジトリで各チームが独立して・安全に・高速にリリースする〜 - ZOZO TECH BLOG

                              こんにちは。SRE部の巣立(@ksudate)です。 我々のチームでは、AWS上で多数のマイクロサービスを構築・運用しています。マイクロサービスが増えるにつれて、CI/CDの長期化やリリース手法の分散など様々な課題に直面しました。 本記事では、それらの課題をどのように解決したのかを紹介します。 目次 目次 はじめに CI/CDのこれまで Release PRによるリリース CI/CD実行時間の長期化 マイクロサービスごとのリリースが難しい リリーサーの制限ができない ドメイン単位の並行リリース リリース手法が分散する ブランチ間の同期が必要 パイプラインの増加 CI/CD実行時間の長期化 リリーサーを制限できない CI/CDの刷新 高速かつシンプルなCIパイプライン 変更差分を利用したCIパイプラインの実行 承認機能付きのCDパイプライン GitHub Environmentsによるリリー

                                ついに最強のCI/CDが完成した 〜巨大リポジトリで各チームが独立して・安全に・高速にリリースする〜 - ZOZO TECH BLOG
                              • GitHubの新機能「GitHub Actions」で試すCI/CD | さくらのナレッジ

                                GitHubが2019年11月、新機能「GitHub Actions」を正式に公開した。GitHub上のリポジトリやイシューに対するさまざまな操作をトリガーとしてあらかじめ定義しておいた処理を実行できる機能で、今まで外部サービスとの連携が必要だった自動テストや自動ビルドなどがGitHubだけで実現できるようになる。今回はこのGitHub Actionsについて、機能の概要や基本的な使い方などを紹介する。 GitHubだけでCI/CD的な機能を実現できる「GitHub Actions」 昨今では、ソフトウェア開発におけるさまざまな工程を自動化するような技術の開発や普及が進んでいる。その1つに、CI(Continuous Integration、継続的インテグレーション)やCD(Continuous Delivery、継続的デリバリー)と呼ばれるものがある。CIはソフトウェアのビルドやテストを

                                  GitHubの新機能「GitHub Actions」で試すCI/CD | さくらのナレッジ
                                • GitHub Actions のワークフローをチェックする actionlint をつくった - はやくプログラムになりたい

                                  GitHub Actions のワークフローを静的にチェックする actionlint というコマンドラインツールを最近つくっていて,概ね欲しい機能が揃って実装も安定してきたので紹介します. github.com なぜワークフローファイルの lint をすべきなのか GitHub Actions が正式リリースされてからだいぶ経ち,GitHub 上での CI は GitHub Actions が第一候補となってきているように感じます.僕も新規にリポジトリを作成して CI をセットアップする場合はほぼ GitHub Actions を使っています. ですが,GitHub Actions には下記のような問題があり,actionlint でそれらを解決・緩和したいというのが理由です. ワークフローを実装する時は,GitHub に push して CI が実行されるのを待って結果を確認するという

                                    GitHub Actions のワークフローをチェックする actionlint をつくった - はやくプログラムになりたい
                                  • GitHub Actionsのワークフローを可視化するactions-timelineを作った

                                    最初に作ったのがCIAnalyzerです。なるべくツール自体の運用の手間がかからないように常駐サーバー無し、データの保存先と可視化はマネージドサービスを使う前提で設計しました。具体的にはデータの保存先をBigQueryとすることによって自前でDBを管理する必要をなくし、webhookを受けるのではなくcronで定期的にAPIを叩くことで常駐サーバーを不要にし、データの可視化はBigQueryと簡単に連携できてマネージドサービスであるLooker Studioを使用する前提としました。 CIAnalyzerのアーキテクチャ CIAnalyzerを作ったきっかけはAzure Pipelineの分析機能に感銘を受けたことで、それと同等の分析を当時自分が業務とプライベートで使用していたJenkins, CircleCI, Bitrise, GitHub Actionsでも可能にしたいと思って開発を

                                      GitHub Actionsのワークフローを可視化するactions-timelineを作った
                                    • Go で書いた CLI ツールのリリースは GoReleaser と GitHub Actions で個人的には決まり - tellme.tokyo

                                      Go で書いた CLI ツールのリリースは GoReleaser と GitHub Actions で個人的には決まり February 4, 2020 lt;dr GoReleaser と GitHub Actions を使うと簡単にビルドしたバイナリを作ってアップロードできる。 2つの YAML を書いてリポジトリにコミットする .github/workflows/release.yml .goreleaser.yml git tag して push する バイナリがリリースされる 専用のツールをローカルにインストールする必要はない。 本題 前に、Go のコマンドラインツールを簡単にリリースする | tellme.tokyo というブログを書いた。 それよりももっと楽になったので紹介する。 基本的にこのページで紹介する方法では 2 つの YAML をリポジトリに置くだけで終わる。 ロー

                                        Go で書いた CLI ツールのリリースは GoReleaser と GitHub Actions で個人的には決まり - tellme.tokyo
                                      • GitHub Actions ことはじめ - tech.guitarrapc.cóm

                                        GitHub Actions 以前調べたのですが、いろいろあって個人プロジェクトでサクッとビルドするのみに使っていました。 今回改めて調べを進めたのでメモ。 幾つかのリポジトリを GitHub Actions に移行したけど、記事にしようとまとめてたらやった内容以上に調べることになってめちゃめちゃ時間かかった。 目次 目次 TL;DR トレンド GitHub Actions の基本 使用条件 使用制限 料金 ホストランナーの指定 ハードウェアリソース インストールされるツール IP OSの選択 実行権限 ファイルパス 環境変数 シークレット GITHUB_TOKEN コンテキスト Artifact トリガーイベント Cache Actions 通知 YAML Getting started YAMLシンタックス on env jobs.<job_id>.needs jobs.<job_id

                                          GitHub Actions ことはじめ - tech.guitarrapc.cóm
                                        • GitHub Actionsと"仲良くなる"ための練習方法

                                          CI/CD Conference 2023 #CICD2023 https://event.cloudnativedays.jp/cicd2023/talks/1766

                                            GitHub Actionsと"仲良くなる"ための練習方法
                                          • GitHub Actionsをローカルで実行する(nektos/act) - くらげになりたい。

                                            GitHub Actionsを試すときに、いちいちコミットしないといけないのがめんどくさいので、 ローカルで確認できればな〜と思い、色々調べたときの備忘録。 Dockerを立ち上げてローカルで実行できるのがあった...(*´ω`*) ・nektos/act: Run your GitHub Actions locally 🚀 使ったサンプルはこれ(*´ω`*) # ./github/workflows/build.yml # ./github/workflows/test.yml name: Act Sample on: release: types: [created] jobs: build: runs-on: ubuntu-latest steps: - run: | echo "MY_ENV_VAR = ${{ env.MY_ENV_VAR }}" echo "MY_2ND_EN

                                              GitHub Actionsをローカルで実行する(nektos/act) - くらげになりたい。
                                            • Amazon ECSで動かすRailsアプリのDockerfileとGitHub Actionsのビルド設定 - メドピア開発者ブログ

                                              CTO室SREの@sinsokuです。 Dockerイメージのビルドを高速化するため、試行錯誤して分かった知見などをまとめて紹介します。 AWSのインフラ構成 assetsもECSから配信し、CloudFrontで /assets と /packs をキャッシュする構成になっています。 Rails on ECS デプロイ時にassetsが404になる問題 以前の記事に詳細が書かれているため、ここでは問題の紹介だけしておきます。 Rails等のassetsファイルをハッシュ付きで生成し配信するWebアプリケーションの場合、ローリングアップデートを行うと、アップデート時に404エラーが確立で発生してしまいます。 引用: メドピアのECSデプロイ方法の変遷 Dockerfile 実際のDockerfileには業務上のコード、歴史的な残骸などが含まれていたので、綺麗なDockerfileを用意しま

                                                Amazon ECSで動かすRailsアプリのDockerfileとGitHub Actionsのビルド設定 - メドピア開発者ブログ
                                              • 同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々

                                                tl;dr git rev-parse HEAD^{tree} でツリーオブジェクトのハッシュ値が取れるので、ブランチが異なる場合でも同じソースツリーであるかどうかを判定できます。 これを利用して、すでにテストを通ったtreeのハッシュ値をどこかに記録しておいて、同一のソースツリーに対するテストをスキップできます。 本題 よく使われている、develop/mainブランチ運用をしている場合に、ちょっとした修正を本番に入れたい場合には以下のようなフローを踏むことになるでしょう。 featureブランチをdevelopブランチの先頭から切って修正を作ってテストが通るのを待つ developブランチにfeatureブランチにマージしてテストが通るのを待つ mainブランチにdevelopブランチをマージしてテストが通ったらdeployする さて、この時、他の作業が混ざらない限りにおいては1,2,

                                                  同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々
                                                • GitHub Actionのジョブ実行画面からPull Requestを辿れるようにした - Lambdaカクテル

                                                  こういうのを作りました。 ジョブに紐付いたPull Requestへのリンクが表示される 行ったこと: リンクを生成するジョブを1つ生やした 綺麗な表示はStep Summary機能 (後述) の力を借りている ジョブ実行画面からPull-Reqに戻りたい GitHub Actionsのジョブ実行画面には、その実行元となったPull Requestへのリンクが存在しないため、困っていた。 よくあるシチュエーション: Pull Requestを見るとジョブがコケていた 様子を見に行くうちに履歴がどんどん深くなる -- ジョブ画面内での遷移はどんどんヒストリが積まれる Pull Requestに戻れなくなってしまう この話を同僚にしたところ共感の嵐だった。したがって隠れた需要がありそうだということが判明し、うまくやる方法を考えることにした。 結果、GitHub Action上でPull-Req

                                                    GitHub Actionのジョブ実行画面からPull Requestを辿れるようにした - Lambdaカクテル
                                                  • GitHub Actionsの手動実行パラメータのUI改善について速報で解説する

                                                    11/10に突如素晴らしいアップデートが来たので、興奮冷めやらぬうちに公式よりちょっとだけ詳しい解説を書きます。 GitHub Actionsは素晴らしいCI/CDサービスであり、特にpush, pull-request, その他あらゆるGitHub上の行動をトリガーにしてワークフローを起動させる設定を簡単に書くことができます。しかし、手動でワークフローを起動させる機能の追加は他のトリガーに比べて後発でしたし、パラメータを入力するための機能やUIが少々貧弱と言わざるを得ないものでした。 一方、古より存在するJenkinsはpush, pull-requestなどの自動トリガーを設定するのは難易度が高かった[1]反面、手動でジョブを起動する機能やUIは充実していました。基本の自由テキスト以外に、プルダウンによる選択、booleanのチェックボックス、Jenkinsに登録したシークレットからの

                                                      GitHub Actionsの手動実行パラメータのUI改善について速報で解説する
                                                    • GitHub ActionsのJobが落ちたときに何をするべきかを記述するPlaybookの仕組みを作って運用している話 - newmo 技術ブログ

                                                      newmoではGitHub Actionsを自動テスト、Lint、デプロイなどに利用しています。 また、newmoではmonorepoで開発しているため、1つのリポジトリに複数のチーム/複数のアプリケーションが存在しています。 GitHub Actionsではpathsを使うことで、特定のファイルが変更された場合のみ特定のWorkflowが実行できます。 newmoのmonorepoのworkflowでは基本的にpathsが指定されていますが、それでも普段は触らないファイルを変更して意図せずにCIが落ちることがあります。 GitHub ActionsのCIが落ちたときに、そのCIの仕組みを作った人やチーム以外だと何をすべきかわからないことがあります。 この問題の解決するを手助けするシンプルな仕組みとして、GitHub ActionsにCIが落ちたときに何をするべきかを表示するPlayboo

                                                        GitHub ActionsのJobが落ちたときに何をするべきかを記述するPlaybookの仕組みを作って運用している話 - newmo 技術ブログ
                                                      • Cloud Run と GitHub Actions を使って Pull Request 単位でプレビュー環境を立ち上げる - wadackel.me

                                                        はじめに 最近 Google Cloud Platform の Cloud Run が GA となったのが話題に上がりました。また gcloud コマンドを GitHub Actions 上で簡単に扱うための GoogleCloudPlatform/github-actions もリリースされました。これまで使われることの多かった actions/gcloud は deprecated となりアーカイブされています。 これらのサービス、ツールを使うことでかなり簡単に Docker コンテナを動かす環境を構築できます。そのユースケースの一つとして、実際に僕が携わっているプロジェクトでレビューコスト低減のために行っている、Pull Request (以下 PR) 単位で独立したプレビュー環境を起動する方法についてメモがてらブログにまとめようと思います。 前提 以下のようなアプリケーション、プロ

                                                          Cloud Run と GitHub Actions を使って Pull Request 単位でプレビュー環境を立ち上げる - wadackel.me
                                                        • GitHub Actionsを使いこなせ!/Get Started GitHub Actions

                                                          OCHaCafe Season7 #3の資料です.

                                                            GitHub Actionsを使いこなせ!/Get Started GitHub Actions
                                                          • GitHub Actionsでいい感じのリリースノートを完全自動で作成する

                                                            きっかけ スプリントで実装した内容をリリースする際、リリースノートを毎回作成しています。 GitHub のリリースノート自動生成機能も便利なのですが、それでも「毎回ボタンをクリックする一手間が面倒だな。自動化したいな〜」と思っていました。 そこで、結構前に勉強も兼ねてリリースノート自動作成のアクションを自作したところ、チーム内で好評だったのでご紹介したいと思います。 (色々あってすっかり記事にするのが遅れてしまいました・・) 要件 main ブランチにマージされたら自動でタグとリリースノートが生成されること リリースノートには前回リリースとの差分が表示されること 同日に複数回リリースしても識別できること リリースノートのテンプレートを指定できること 完成形はこちら いきなりですが、生成されるリリースノートはこんな感じです。 完成形のアクションはこちらになります。 name: Create

                                                              GitHub Actionsでいい感じのリリースノートを完全自動で作成する
                                                            • ジョブを細かく分けてGitHub Actionsのテストを効率化する

                                                              改善戦略 実行のタイミングやGitHubの状況や依存サーバーのネットワークの状況によって変動はあるものの、早くて7分、だいたい10分〜15分くらいかかっている。早いか遅いかは、他の開発と比べても内容や状況が違うのでなんとも言い難いが、個人的な感想としては「遅い」。というより、一切の工夫をしていなかったので、もっと早くできるはずだと考えた。 ビルドされたファイルを複数の環境で共有する 処理全体の中で時間がかかっている処理は3つ。 依存パッケージのインストール ビルド テスト さらに、課題の一つとして「テスト実行時に開発用依存パッケージ(devDependencies)がインストールされているせいでテストが失敗しない問題がある」というものがあり、これを処理に追加しないといけない。 開発用依存パッケージのインストール ビルド 依存パッケージを一旦すべて削除 本番用依存パッケージのインストール テ

                                                                ジョブを細かく分けてGitHub Actionsのテストを効率化する
                                                              • スプレッドシートの内容を GitHub のリポジトリに自動的に同期する仕組みを作った

                                                                [{ "teamName": "チームA", "players": ["Aさん", "Bさん", "Cさん", "Dさん"] }] スプレッドシートの内容を Node.js で取得 スプレッドシートの内容を Node.js で取得するために @googleapis/sheets を使用しました。 認証情報は Application Default Credentials (以下 ADC) が設定されていることを前提にしました。事前に認証情報に紐付いているメールアドレスに対して、スプレッドシートを閲覧できる権限を与えておく必要があります。 これにより以下のコードでスプレッドシートの内容を取得することができます。 const sheetId = ""; const auth = new GoogleAuth({ scopes: [ "https://www.googleapis.com/aut

                                                                  スプレッドシートの内容を GitHub のリポジトリに自動的に同期する仕組みを作った
                                                                • GitHub Actions の Environments が予想通り最高だったので勢いで一通り試した - しばやん雑記

                                                                  Universe 2020 で発表された機能の中で一番楽しみだったのが GitHub Actions の Environments です。デプロイ先ごとに環境変数と Protection rule を設定出来るようになります。 Azure Pipelines では Approvals and checks と Environments という同等の機能がありますが、そのまま GitHub にもっていったという感じです。予想通り便利でした。 Using environments for deployment - GitHub Docs これまで Azure Pipelines を使っていて、デプロイに特化した機能があるのはかなり便利だと実感していたので、Azure Pipelines から GitHub Actions への移行はこの辺りが実装されるまでは難しいと思っていました。 一通り試し

                                                                    GitHub Actions の Environments が予想通り最高だったので勢いで一通り試した - しばやん雑記
                                                                  • 『GitHub Actions 実践入門』の電子書籍版を BOOTH で販売開始しました(追記:技術書典応援祭でも販売開始しました) - 生産性向上ブログ

                                                                    TL;DR 『GitHub Actions 実践入門』という、GitHub Actions の入門書を執筆しました。 miyajan.booth.pm BOOTH で PDF 版を 1,000 円で販売しております。A5 相当で 150 ページほどあります。ぜひお買い求めください! 2020/03/15 追記 techbookfest.org 技術書典応援祭で PDF 版を 1,000 円、物理本 + PDF 版を 1,500 円(+ 送料 400 円)で販売しております! 本の内容 概要 『GitHub Actions』の入門書です。 GitHub が提供する CI/CD サービスの GitHub Actions の基礎的な知識からはじめ、実際に活用してみるところまで扱います。 想定読者 GitHub Actions の入門者から中級者を対象としています。 この本は、以下の三点を意識しな

                                                                      『GitHub Actions 実践入門』の電子書籍版を BOOTH で販売開始しました(追記:技術書典応援祭でも販売開始しました) - 生産性向上ブログ
                                                                    • pull_request_target で GitHub Actions の改竄を防ぐ

                                                                      本記事では GitHub Actions で pull_request event の代わりに pull_request_target を用い、 workflow の改竄を防いでより安全に CI を実行する方法について紹介します。 まずは前置きとして背景や解決したいセキュリティ的な課題について説明した後、 pull_request_target を用いた安全な CI の実行について紹介します。 本記事では OSS 開発とは違い業務で private repository を用いて複数人で開発を行うことを前提にします。 長いので要約 GitHub Actions で Workflow の改竄を防ぎたい GitHub の branch protection rule や codeowner, OIDC だけでは不十分なケースもある pull_request event の代わりに pull_r

                                                                        pull_request_target で GitHub Actions の改竄を防ぐ
                                                                      • Kindle で購入した書籍をブクログへ自動で登録する

                                                                        ⚠️ Amazon から送信される Kindle のメールに仕様変更があり、現在動作しません。何かいいアイデアがあればコメント下さい。 はじめに いきなりですが、みなさん読書の管理ってどうしていますか? 僕は、ブクログ というサービスを使っています。以前は、読書メーター を使っていたんですが、ブクログは本に記載されている ISBN コードや Amazon の Asin コードから本を登録できる[1]ということを知って最近移行しました。 どうせなら自動化したいなと思い、調べてみました。すると同じことを考えた先人たちがいらっしゃったので参考にしつつやってみることにしました。当記事はその紹介です。 作ったもの Kindle で書籍を購入した際に Amazon からメールが届きます。そのメールから使いたい Asin コードだけを抜き出して、購入した書籍をブクログに登録します。その際、処理のログをス

                                                                          Kindle で購入した書籍をブクログへ自動で登録する
                                                                        • GitHub Actionsって何?触ってみて理解しよう!入門・逆引きリファレンス - Qiita

                                                                          ある日のこと 「さーて、今日もGitHubにコミットをプッシュしていくぞ〜〜」 「ローカルでコミットした変更をgit push origin mainして、、」 「github.comのレポジトリを見にいくと、、お!反映されているな!Initial Commitってちゃんと出ているぜ!」 「そういえば、いつも気にしていなかったけどActionsタブってのがあるな?これってなんだ?」 これがGitHub Actionsです。レポジトリごとに用意されていて、Actionsタブから管理、確認することができます。 「ほ〜。GitHub Actionsっていうのか・・なんのためにあるんだろう?ここで何ができるの?」 GitHub Actionsとは GitHub ActionsはGitHubがサービスの一環として提供する、ワークフロー自動化サービスです。 簡単に言えば、「開発している時にやりたいこと

                                                                            GitHub Actionsって何?触ってみて理解しよう!入門・逆引きリファレンス - Qiita
                                                                          • GitHub Actions でキャッシュを使った高速化 - 生産性向上ブログ

                                                                            GitHub Actions Advent Calendar 2019 の 15 日目の記事です。 この記事では、GitHub Actions のキャッシュ機能について解説します。 目次 CI/CD とキャッシュ 簡単な例 (npm) 実験用リポジトリ作成 キャッシュ actions/cache Inputs と Outputs キーのマッチング順序 ビルド失敗時 キャッシュクリア 複数 OS で matrix ビルドするときのキャッシュ 言語ごとの例 アーティファクトとキャッシュの違い 制限事項 注意事項 まとめ CI/CD とキャッシュ CI/CD のビルドでは、リポジトリが依存するパッケージのダウンロードが原因でビルド時間が長くなってしまうことがよくあります。近年の CI/CD ではビルドごとに完全にクリーンな実行環境が用意され、前回のビルドでダウンロードしたファイルが持ち越されない

                                                                              GitHub Actions でキャッシュを使った高速化 - 生産性向上ブログ
                                                                            • 1Password の CLI で環境変数を管理する

                                                                              はじめに 現代のアプリケーションは外部サービスのAPIキーなど様々なクレデンシャルを持つことが多いです。 これらを開発者間で安全に共有するには sops、 doppler、 git-crypt などのツールが使えます。 また、開発時はこれらのクレデンシャルを direnv などを使って環境変数に設定することも多いのではないでしょうか。 しかし、これらはどれも追加のツールをインストールする必要があります。 もし1Passwordを使っているチームに属しているなら1Passwordでクレデンシャルを管理して、それを環境変数にセットできると新たなツールを導入する必要がなくて楽です。 この記事ではそれを実現する手順を紹介します。 CLIの設定 まず1PasswordのCLIをインストールします。これで op コマンドが使えるようになります。

                                                                                1Password の CLI で環境変数を管理する
                                                                              • GitHub Actionsの知見ご紹介 - Masteries

                                                                                今更ですが, ここ最近ちまちまとGitHub Actionsをしています. github.co.jp 個人的にはこういうのイジるの大好きなので, 新しいおもちゃをもらった子供のようにはしゃいでいます. 今回は, その中で知った知見などを雑多にご紹介します. Pull Requestでコケた時にRe-run jobsするとactions/cacheアクションが正常に動作しない GitHub Actionsには, 依存ファイル(例えばPerlならlocalとか, Node.jsならnode_modulesとか...)をキャッシュする, actions/cacheアクションが公式から提供されています. github.com このアクションを使っていて, かつon: pull_request のようにしてPull Requestをフックとしてワークフローを実行するとき, Re-run jobs(再

                                                                                  GitHub Actionsの知見ご紹介 - Masteries
                                                                                • Check! GitHub Actions で導入しておきたい自動化 5つ(GitHubブログ要約)

                                                                                  Prologue こんにちは、 @dz_ こと、大平かづみです。 今回はこのブログ記事 "5 automations every developer should be running" が気になったので、ちゃんと読むついでに要約してみました。(ブログ駆動) なお、英語の能力は高くないので、誤訳などありましたらご連絡いただけたらうれしいです🙇🏻‍♀️ 要約: "5 automations every developer should be running" TL;DR: セキュリティ脆弱性との闘いや動かないボタン、遅いサイト、リリースノートを手書きすることを避けたいエンジニアの君に捧ぐ テストを書くことや改善のための自動化を行うことは大事ではあるが、実際のところもっとコードを書いた方が楽しい! さいわいなことに、GitHub Actions ではたくさんのコミュニティで作られたテストや

                                                                                    Check! GitHub Actions で導入しておきたい自動化 5つ(GitHubブログ要約)

                                                                                  新着記事