並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 3645件

新着順 人気順

"GitHub Actions"の検索結果241 - 280 件 / 3645件

  • CI/CD環境を作ると、効率良くインフラの知識が身につく気がする 〜GCPでdroneを動かすチュートリアル〜 - Qiita

    CI/CD環境を作ると、効率良くインフラの知識が身につく気がする 〜GCPでdroneを動かすチュートリアル〜GAEDockerdrone.ioCICDGoogleCloud はじめに この記事は GCP と drone を利用した CI/CD 環境構築を通して、インフラの知識を身につけるためのチュートリアル記事です。 CI/CD 環境を構築する作業を通して、インフラ未経験 1だった筆者は幅広い知識を得ることができました。これはとても良い経験でしたので、インフラの知識や単語をキャッチアップしながら CI/CD 環境を構築する記事としてまとめました。 誰でも簡単に構築できる CI/CD 最近、様々な CI/CD サービスが台頭しています。それらを利用することで、「Github で認証すればすぐパイプラインができる」といった世界になりつつあり、誰でも CI/CD 環境が手軽に構築できるようにな

      CI/CD環境を作ると、効率良くインフラの知識が身につく気がする 〜GCPでdroneを動かすチュートリアル〜 - Qiita
    • 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改善について速報で解説する
      • 2年間の開発者ブログ運営のノウハウや意識してること - NTT Communications Engineers' Blog

        みなさんこんにちは、イノベーションセンターの @Mahito です。普段は社内のエンジニアが働きやすくなることを目標に、コーポレートエンジニアとしての活動やエンジニア向けイベントの企画・運営をしています。 今回は、本 NTT Communications Engineers' Blog を2年間運営してきたノウハウについて共有できればと思います。先日 はてなブログ DevBlog Meetup #1 に登壇させていただく機会があり、ブログ運営に関していくつかお話しさせていただいたのですが、イベント当日に言えなかったことや言ったことの補足などをできればと思います。 目次 目次 開発者ブログのこれまでと目的 運用のノウハウ・意識していること 執筆者の確保・継続・インセンティブ設計 1. 定期的にブログの取り組みを社内に紹介することで取り組みに興味を持ってもらう 2. ニュースリリースを見て、技

          2年間の開発者ブログ運営のノウハウや意識してること - NTT Communications Engineers' Blog
        • GoのテストをCIで簡単に並列実行する | おそらくはそれさえも平凡な日々

          https://github.com/Songmu/gotesplit gotesplitというかなり便利なツールを書いた。Goのテストをいい感じのサブセットに分割して、それを実行するものです。このアプローチで、社内のテストを15分から3分くらいまでに短縮しました。 これを使えばCI環境での高速なテストの並列実行を簡単に実現できます。 実例 CircleCIやGitHub Actions上で簡単に導入できます。 CircleCIの場合 parallelism: 5 docker: - image: golang:1.15.3 steps: - checkout - run: command: | curl -sfL raw.githubusercontent.com/Songmu/gotesplit/main/install.sh | sh -s bin/gotesplit ./... -

            GoのテストをCIで簡単に並列実行する | おそらくはそれさえも平凡な日々
          • level=0 から始める PHPStan(Larastan) 導入ガイド - Shin x Blog

            PHP にはアプリケーションを実行せずに静的にコード品質をチェックする静的解析ツールがいくつかあります。有名なところでは、PHPStan や Psalm、Phan、PHPMD などがあります。本エントリでは、まだこうした静的解析ツールを導入していないプロジェクト向けに PHPStan 導入の流れをまとめてみました。 3(4) 行まとめ サンプルコード PHPStan とは 適用方針 Playground PHPStan のインストール Composer Composer(Larastan) Docker 設定ファイルの作成 PHPStan の実行 主なエラー(level=0) baseline ファイルの作成 baseline ファイルの修正 CI での自動実行 GitHub Actions の設定 ブランチ保護ルール さいごに 3(4) 行まとめ composer もしくは Docker

              level=0 から始める PHPStan(Larastan) 導入ガイド - Shin x Blog
            • git commit --fixupを使いましょう - Don't Repeat Yourself

              発端 Pull Request で force push されると差分がわからなくなるから困るんだけどみんなどうしてますか?— codehex.bsky(へっくす) (@codehex) 2024年2月25日 ポストの前提がちょっとわかりませんが、レビュー後にforce pushされると、どこに修正を入れたのかわからないケースだと仮定します。プルリクエストがまだドラフト状態でのforce pushやrebaseで困るケースはそんなにないと思うからです。 git commit --fixup このケースではgit commit --fixupが便利です。レビューで指摘が入ったコミットに対して--fixupをかけておき、レビュワーはfixupコミットの内容を確認します。レビュワーが確認してOKが出た段階で、git rebase -i --autosquashなどを使ってfixupコミットを元コ

                git commit --fixupを使いましょう - Don't Repeat Yourself
              • 「いい感じに成長する」エンジニアのキャリアと学び方 - 2023年オススメPython本を添えて - Lean Baseball

                このブログおよび, 登壇・アウトプットはゴリッゴリのエンジニア, 本職はコンサル企業のマネージャーとしてクラウドエンジニアリングのコンサルをやっている者です*1. この記事は, 当ブログの名物である, Pythonのオススメ書籍(と関連する技術書)の紹介エントリーです! ※去年の記事はこちら. 本年のエントリーでは「今最もいい感じなPython本」の紹介に加えて, キャリアごとに読むべき技術書(と学び方)の選び方 この年末に読んで欲しい技術書(Python本とそれ以外) 「エンジニアのキャリア形成的に期待値の考え方大事だよ」という話 この三本立てでご紹介できればと思います. というわけで, 本年のラインナップは以下の通りです. 要約すると キャリアレベルを考える オススメ技術書籍2023 ジュニア🔰 メンバー マネジメント ボード 結び - キャリアごとの期待値 【番外編】私の推し書籍2

                  「いい感じに成長する」エンジニアのキャリアと学び方 - 2023年オススメPython本を添えて - Lean Baseball
                • Rustのビルドを高速化する方法 | POSTD

                  Rustコードのコンパイルが遅いことは誰でも知っています。しかし筆者は、世の中のほとんどのRustコードはコンパイルをもっと速くできると強く感じています。 例えば、つい最近の記事にこのように書かれていました。 一方、Rustでは、プロジェクトやCIサーバーの性能にもよりますが、 CIパイプラインの実行に15~45分かかります。 これは筆者には理解できません。GitHub Actions上にあるrust-analyzerのCIの所要時間は8分です。しかも、これは100万行の依存関係に加え、20万行の独自コードが記述されたとても大規模で複雑なプロジェクトでの話です。 確かに、Rustは根本的な部分で非常にコンパイルが遅いのは間違いありません。Rustはジェネリクスのジレンマにおいて「遅いコンパイラ」を選び、全体的な設計思想としてコンパイル時間よりもランタイムを優先しています(この点に関する優れ

                    Rustのビルドを高速化する方法 | POSTD
                  • 実用 Go言語

                    業務プログラミングの現場でも採用されるようになってきたGo言語。文法はシンプルで学びやすいという特徴を持っていますが、複雑な要件を実現するには、プログラミング言語が提供する構成要素(文法やライブラリ)をさまざまに組み合わせる必要があります。 本書は、そんなGoを使う上でのポイントを単なる文法詳解ではなく「よりGoらしく書くには」「実用的なアプリケーションを書くには」といった観点から紹介します。 構造体やインタフェースの使い方からJSON、CSVファイル、Excel、固定長ファイルの扱い方、またログやテスト、環境構築など現場に即した幅広いトピックについて、「Goらしいプログラムの書き方」をその背景と共に教えてくれる先輩のような書籍です。 まえがき 1章 「Goらしさ」に触れる 1.1 変数やパッケージ、メソッドなどに名前を付けるには 1.1.1 変数名 1.1.2 パッケージ名 1.1.3 

                      実用 Go言語
                    • 大規模サービスのインフラを全面的にリプレイスした話 - Qiita

                      はじめに こんにちは。雑食系エンジニアの勝又です。 今回は、私が2年ほど参画させていただいた大規模サービスのインフラやDevOps周りを全面的にリプレイスしたお話について簡単にご紹介させていただきます。(内容に関しては事前に参画先企業様に確認していただいております) サービス概要 詳細な内容は伏せますが、メインとなるテーブルのレコード数が数十億件、スパイク時には数万〜数十万のユーザーが一斉にアクセスする大規模サービスです。 技術的負債 長く運用されてきたサービスのあるあるですが、新機能の追加が最優先されてきたことにより、こちらのサービスにも下記のような技術的負債が大量に積み上がっていました。 RubyやRailsやMySQLのバージョンがかなり古い インフラの構成がコードではなくドキュメントで管理されている アプリケーションの構成管理がおこなわれていない CI/CDパイプラインが構築されて

                        大規模サービスのインフラを全面的にリプレイスした話 - Qiita
                      • 【プログラマー必見】情報収集で絶対に役立つIT企業の公式ブログ 30選

                        はじめに 今回の記事では個人の独断と偏見でプログラマー向けに必ず確認しておきたいIT企業の公式ブログを共有する。なお、今回の記事で紹介している公式ブログはあくまで一例に過ぎない。 AppBrew 文章が易しく初心者でも読みやすい 主に業務効率化を中心に書かれている 実務・プログラミングのイメージができない初心者や新人には非常にオススメ ABEJA Tech Blog 主に保守・運用を中心に発信している ドローン・機械学習に興味があるならオススメ 専門用語が多めなので理解に苦労する可能性が高い UUUMエンジニアブログ あの有名なクリエイター(YouTuber)を数多く輩出している会社「UUUM」の公式ブログ Rails・PHP・インフラ(AWS、Dockerなど)の情報が多い 技術記事が非常に読みやすく、画像とソースコードを使って的確に技術ややっていることを説明している Wantedly

                          【プログラマー必見】情報収集で絶対に役立つIT企業の公式ブログ 30選
                        • Gitワークフロー設計について - 電通総研 テックブログ

                          みなさんこんにちは、電通国際情報サービス(ISID)Xイノベーション本部ソフトウェアデザインセンターの佐藤太一です。 この記事では、Git を使った仕事のやり方(以降は Git ワークフローと記載)を設計する上での検討事項を説明します。 これによって、読者の皆さんがGitワークフローを適切に定義できるようになることを主たる目的としています。 また、筆者の能力不足によって記載しきれなかった考慮事項について、より深く Git を使いこなしている識者からの指摘を受ける機会を得ることを副次的な目的とします。 この記事には書かれていないものの、検討すべき事項について知見のある方はブログ記事を書いたり、Twitter等のSNSで指摘してくださるとありがたいです。 はじめに 基本的な考え方 Git ワークフロー設計における考慮事項 チームの人数 monorepoの検討 参考文献 プロジェクト管理ツールと

                            Gitワークフロー設計について - 電通総研 テックブログ
                          • Pythonプロジェクトを快適にするために導入したツールとその設定 | DevelopersIO

                            start: if [ -n "${ENV}" ]; then \ .venv/bin/dotenv --file ${ENV} run -- .venv/bin/python src/main.py; \ lint: poetry run pysen run lint lint-fix: poetry run pysen run format && \ poetry run pysen run lint test-unit: poetry run pytest install-dev: poetry install install: poetry install --no-dev 本番環境のみ入れたいパッケージがある場合 IoT開発等では、開発時はMacで本番はラズパイみたいなケースの場合、アーキテクチャ依存で追加できないパッケージがあったりします。 例えばRPi.GPIOは、GPIOが

                              Pythonプロジェクトを快適にするために導入したツールとその設定 | DevelopersIO
                            • DBのリストアテストを全自動化した話 - Pepabo Tech Portal

                              ホスティング事業部の業務信頼性向上チームでエンジニアをしているはらちゃんです。 先日STREET FIGHTER 6のオープンベータに参加し、友人にボコボコに負けました。 製品版買っていい勝負ができるように特訓を重ねたいと思います。 今回、ホスティング事業部のサービスであるロリポップ、ムームードメイン、ヘテムル、おさいぽのDBリストアテストを自動化したので紹介します。 まず業務信頼性向上チームとは? リストアテストを継続的にやっている理由 なぜ自動化したのか 全体像 具体的な実装 実装時に困ったこと dumpのサイズが大きすぎて通常のrunnerではリストアテストができない場合 scpをするアカウントにdumpファイルを操作する権限がない場合 dumpファイルのファイル名が微妙に違ってうまく指定できない場合 終わりに まず業務信頼性向上チームとは? 最初に、自分の所属している業務信頼性向上

                                DBのリストアテストを全自動化した話 - Pepabo Tech Portal
                              • 私のチームで行っているドキュメント管理方法の紹介(GitHub Actions, S3, AsciiDoc) | DevelopersIO

                                ドキュメントツールのインストール(Windows) Macの場合の設定方法は、本項の後に記載 PowerShellの起動 各種ツールをインストールするため、PowerShellを管理者として実行 Windowsボタンを押下 powershell と入力 右クリックで管理者として実行 を選択します Chocolateyのインストール 本手順は前述で起動したPowerShellを利用 1.Chocolatey のサイトにアクセスし、インストールコマンドをクリップボードへコピー 2.前項でコピーしたコマンドをPowerShellにペーストして実行します Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServiceP

                                  私のチームで行っているドキュメント管理方法の紹介(GitHub Actions, S3, AsciiDoc) | DevelopersIO
                                • 「開発環境の使用状況分かるくん」を作って冗長コミュニケーションを無くした話 - 生涯未熟

                                  本記事は ミクシィグループ Advent Calendar 2021 の22日目の記事です。 前置き 私が現在所属しているプロジェクトでは「アプリケーション × 4 + 開発環境 × 3」という環境で開発しており、機能開発後のQA作業などのため常に3つある開発環境がどこかしら使われているという状況でした。 (ちなみに Fansta(ファンスタ) というプロジェクトですので、興味のある方は @syossan27 までご連絡を!) そのため開発環境の使用状況をtrelloを使い管理していましたが、新しく開発環境へデプロイする際にはSlackでデプロイしても大丈夫か尋ねる、という流れが定常化しておりました。 このままでも良いのですが、ここはエンジニアとしてこのような冗長コミュニケーションを無くすために技術を使おうじゃないかと思い立ち、カッとなって掲題の「開発環境の使用状況分かるくん」を作成し始め

                                    「開発環境の使用状況分かるくん」を作って冗長コミュニケーションを無くした話 - 生涯未熟
                                  • 個人運用k8sクラスタの構成要素の技術選定 - でこてっくろぐ ねお

                                    これは、k8sクラスタを個人で運用する際に行った構成要素の技術選定の記録である。 技術選定の理由を書くのも見るのも楽しい、という心情のもとにここに公開する。 前提知識 以前、こんなエントリを書いた。 bitcoinのfull nodeをAWSでなるべく安く運用してみる - でこてっくろぐ ねお 上記の通り、個人でbitcoinのfull nodeという、状態をバリバリもつサービスを、AWSでのコスト面で最安を狙って作り運用を行っていた。 しかしその後、Oracle Cloudで運用したほうが安くなることに気づいたため引っ越した。 Oracle CloudではARMのVMが4台無料で使えて複数台構成が組め、AWSやGCP同様k8sのマネージドサービスもあり、また仕事でk8sを扱う部署に異動したのもあり、勉強のためk8sクラスタ上で運用することにした。 構成要素 以下の構成要素を選択している。

                                      個人運用k8sクラスタの構成要素の技術選定 - でこてっくろぐ ねお
                                    • docker としての asdf ― あるいは、なぜ私は anyenv から乗り換えたか - ウェルスナビ開発者ブログ

                                      ソフトウェアエンジニアの三上(@mickamy)です。普段の業務では、 取引管理という部署で、主に取引とその周辺(入出金など)に関わる処理の開発を担当しています。 最近、asdf という anyenv の代替となるツールを知り、気になってはいたのですが、なかなか anyenv から乗り換えるモチベーションを見出せずにいました。 あることをきっかけにそのモチベーションを言語化できたので、その使い方とメリットについてお伝えできればと思います(タイトルの前半についてはだいぶ盛っています)。 asdf とは何か asdf は、様々なソフトウェアの複数バージョンを管理するための CLI ツールです。 プログラミング言語のバージョン管理は、特に開発者に馴染みの深いユースケースかと思います。 あるプロジェクトでは ruby の 2.7 系を利用しているが、 別のプロジェクトでは 3.2 系を利用したいと

                                        docker としての asdf ― あるいは、なぜ私は anyenv から乗り換えたか - ウェルスナビ開発者ブログ
                                      • こんなに辛いことになるから、最初にがんばろう / 辛い開発状況をどうにかするためにやった13のこと

                                        こんにちは!sugitaniと申します。 これまで有名芸能人と通話ができる(かもしれない)ライブ配信アプリとか、オリジナルマンガの配信サービスとか、コメントが横に流れるライブ配信システムとかを作ってきました。(SUGARは今も作業してます) 最近ご縁がありましてUUUMの子会社で、簡単に有料フォロワー向けの投稿が行えるFOLLOW MEを主に開発していて、NFTでデジタルトレーディングカード(※)を売り買いすることができるHABETをIndieSquare社さんと協業で運営しているNUNW株式会社(5月にFOROから社名変更)に入社し半年くらい経っています。最近CTOに任命していただきました! ※NFTについては思うことがある開発者の皆様が多いと思っていますが、自分がどう思っているかは後述します 少し前に「スタートアップがまともなわけ無いから入るな」というインタビュー記事を書いて頂いたんで

                                          こんなに辛いことになるから、最初にがんばろう / 辛い開発状況をどうにかするためにやった13のこと
                                        • エンジニアなら自分でブログを作れ!①導入編

                                          Blueskyのフォローお願いします! 初めに 「SOFT SKILLS ソフトウェア開発者の人生マニュアル」という本を読みました。 この本ではエンジニアはセルフブランディングのためにブログを持つべきという主張がされていて、私もある程度共感しました。 一方で、費用対効果を考えてWordPressで構築せよということも書かれており、その点は疑問を感じました。 せっかくエンジニアという職についているので自分で作った方が良いんじゃないか?と。 WEBフロントエンドのエンジニアは自分の技術の見本市にすることができますし、それ以外のエンジニアに関してもフロントエンドの技術が一定以上あることを主張できます。これを考えれば、自分で作成することがセルフブランディングに繋がることは言うまでもないはずです。 しかし自分でブログを作るのは結構手間がかかります。ブログとしての機能やデザイン、ホスティング先等考える

                                            エンジニアなら自分でブログを作れ!①導入編
                                          • AWS federation comes to GitHub Actions

                                            At the time of writing, this functionality exists but has yet to be announced or documented. It works, though! EDIT: Here is the functionality on the GitHub roadmap. GitHub Actions has new functionality that can vend OpenID Connect credentials to jobs running on the platform. This is very exciting for AWS account administrators as it means that CI/CD jobs no longer need any long-term secrets to be

                                            • 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
                                              • Maintainer Month: オープンソースをメンテナンスするコツ

                                                週に一度まとめて更新のようなパターンだと、体調が悪いときなどにその週はスキップされ、また次の週も更新しようとして偶然タイミングが合わなかった場合などに、1ヶ月更新が止まるみたいな状態は起きやすいです。 1ヶ月更新を止めてしまうと、そこで更新する習慣が失われて、この書籍でいう逆戻りが起きるのかなと思っています。 そのため、JSer.infoではタスクを細分化して進められる時にやっていけるような形を作っています。 ライブラリのメンテナンスのリズムをツール化する JavaScript周りは顕著ですが、ライブラリが細かく分かれていることが多いため、リポジトリの数も多いです。 そのため、リポジトリのCI設定や依存ライブラリのアップデートなどをメンテナンスするだけで無限の時間がかかります。 このメンテナンス作業を手動で毎回やるととても疲れるので、自分の場合はツール化していることが多いです。 作ったり、

                                                  Maintainer Month: オープンソースをメンテナンスするコツ
                                                • 半年デプロイ改善を継続して見えてきた「成果」 ~モノタロウのカナリアリリース導入のその後 - MonotaRO Tech Blog

                                                  ※この記事は 開発生産性 Advent Calendar 2022 カレンダー2 の20日目の記事です。 前回記事の16日目は nakayamaatsushiさんの 『Findy Team+ Award 受賞の裏側~開発生産性向上の取り組みを振り返る~』でした。計測した開発指標をどのように開発生産性向上に結び付けているのか、具体的なアクション事例が紹介されており非常に参考になりました! この記事の内容 カナリアリリースを導入しました やってみての感想 うまくいったこと デプロイ頻度が上がる 本番で発覚するバグのユーザー影響を抑えられる 試しやすくなる 期待通りじゃなかったこと 開発リードタイムが短縮される⇒それほどでもない 機能開発のスループットがあがる⇒べつに上がらない マージが分散することで、衝突が起こりづらくなる⇒ならない 本番環境での不具合は発生しなくなる⇒そうとはいいきれない わ

                                                    半年デプロイ改善を継続して見えてきた「成果」 ~モノタロウのカナリアリリース導入のその後 - MonotaRO Tech Blog
                                                  • 組織でのはてなブログ運営をGitHub上で行うためのテンプレートリポジトリ「HatenaBlog Workflows Boilerplate」を公開しました - はてなブログ開発ブログ

                                                    GitHub上ではてなブログ運営を可能にするテンプレートリポジトリ「HatenaBlog Workflows Boilerplate」をベータ版として公開しました。 このテンプレートをご利用いただくと、組織でのブログ運営に求められるワークフロー(下書きの作成、更新、内容のレビューや公開など)をGitHub上で行うことができます。組織利用向けに整備していますが、どなたでもご利用いただくことが可能です。 導入方法や詳しい利用方法については、上記のリポジトリのREADMEをご参照下さい。 特長など 下書きの作成時に、作成した下書きのみが含まれたプルリクエストを自動で作成します*1。コンフリクトを防ぎ、ワークフロー上の管理を容易にします GitHub Actions を利用して動作するためローカルでの環境構築が不要です。GitHub組み込みのVisual Studio Code (github.d

                                                      組織でのはてなブログ運営をGitHub上で行うためのテンプレートリポジトリ「HatenaBlog Workflows Boilerplate」を公開しました - はてなブログ開発ブログ
                                                    • インフラエンジニア学習ロードマップ | 電算星組

                                                      はじめに Developer Roadmapsの内容が興味深く、自分の経験を元に日本のインフラエンジニア向けの学習ロードマップを作ってみました。 これからキャリアをスタートする駆け出しエンジニアの参考になれば幸いです。 ※私自身の限られた経験のもとに作成した学習ロードマップです。偏った内容や、時代の流れで主流が変わってしまった部分もあると思うので、色々な方のご意見コメントを頂けると嬉しいです! [2020/8/12追記] 図中の技術選定や学習順序について解説を追記しました。 前提条件 以下の前提条件で作っています。自身の置かれている環境に合わせて、学習内容は適宜取捨選択することをお勧めします。 1〜3年目の新人エンジニア向け SI業界で使われるエンタープライズ系技術を想定 オンプレとクラウドはどちらも扱う オンプレ機器は経験上よく見かける製品を代表して記載 ファシリティ、アプリケーションの

                                                      • GitHub Actionsでいい感じのリリースノートを完全自動で作成する

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

                                                          GitHub Actionsでいい感じのリリースノートを完全自動で作成する
                                                        • Redis Streamsを活用したイベントドリブンアーキテクチャの構築事例 - DMM inside

                                                          Dagger Go SDK vs Shell in GitHub Actions ~ モノレポのCIの実装をGoで実装するまでの道のり ~

                                                            Redis Streamsを活用したイベントドリブンアーキテクチャの構築事例 - DMM inside
                                                          • RailsアプリのCI高速化

                                                            参加しているプロジェクトで、RailsアプリのCIの高速化を行った。 まだ進行中の部分も幾つかあるが、結果から言うと、元々8分前後だったテストが3分半程度に短縮された。行った作業を幾つかの観点に分け、どのように高速化を行ったか、どの程度高速化されたか等を記述する。 プロセス数とマシン性能の調整 元々は2コア1プロセス4マシンで8分程度掛かっていたが、8コア8プロセス1マシンに変更することで5分程度に短縮された。 このプロジェクトではCIにGitHub Actionsを利用している。GitHub Actionsではデフォルトで2コアのマシンが利用されるが、Large runnerを利用して8コアに変更した。費用は変わらない。 また同時に、8プロセスで並列実行するためにparallel_testsを導入した。このプロジェクトではMySQLとElasticsearchを利用しており、またファイル

                                                            • GitHub Actionsを使いこなせ!/Get Started GitHub Actions

                                                              OCHaCafe Season7 #3の資料です.

                                                                GitHub Actionsを使いこなせ!/Get Started GitHub Actions
                                                              • npm install と npm ci って結局どう使うの?2023年版 - Mitsuyuki.Shiiba

                                                                うりうりさんの↓のコメントを見て、そういえばnpm ciって見たことあるけどチェックしてないなぁ。というかnpm installも雰囲気で使ってるなぁ。と思ったので、うりうりさんに教えてもらったことを手がかりに、npm installとnpm ciについて調べた。 これ、node_modulesキャッシュしてたり npm install使ってるけど npmのグローバルキャッシュ(~/.npm)をキャッシュした上で npm ciで早くなったりしないんだろうか GitHub Actions上でテストを約3倍早くした話https://t.co/MpmFktGBxU— wreulicke (@wreulicke) March 14, 2023 ちょこっと検索して見てみたところ、新旧情報があって自分が混乱したのと、公式ドキュメントには概要は書かれているものの詳しい内容は書かれていないので(僕が見つけ

                                                                  npm install と npm ci って結局どう使うの?2023年版 - Mitsuyuki.Shiiba
                                                                • 排他制御を行う GitHub Action を作った

                                                                  弊社では GitHub のレポジトリ管理に Terraform GitHub provider を使用しています。 いちいち手元で terraform plan や terraform apply を叩くのは面倒なので、 GitHub Actions を利用することを考えました。 tf ファイルと現実のリソースとの不整合を避けるために、 これらのコマンドは排他的に実行する必要があります。 例えば terraform apply を実行している最中に terraform plan を実行することはできません。 ここで問題になってくるのが GitHub Actions のジョブ並列数です。 2020-12-30 現在、GitHub Actions は同時に 20 並列まで実行可能ですが、逆に並列数を制限できないという贅沢な悩みがあります。 一応 Matrix Build の並列数を制限するオプ

                                                                  • 時雨堂クラウドサービスを支える技術

                                                                    自社パッケージ製品のクラウド版 を開発していて、色々やりたい放題やってるのでメモ。 方針 遠回り駆動開発 やりたい放題やる 王道は無視して「じぶんのかんがえたさいきょうの」をでいく 可能な限り OSS 開発元が提供しているクラウドサービスを利用する ベアメタルサーバーを使う 三大クラウドサービス (AWS, GCP, Azure) を使わない なぜ利用している技術を公開するのか 自社で使って良かった OSS やサービスはより多くの人に知って欲しいと考えています。 また、特に隠す理由がないというのもあります、むしろ大きな声で Tailscale や TimescaleDB 、 VictoriaMetrics 、Cloudflare 、DataPacket など、ほんとうに素晴らしい使わせて頂いていると言っていきたい。 我々が利用させて頂いている製品の企業や開発者の方へ とても素晴らしい製品を

                                                                      時雨堂クラウドサービスを支える技術
                                                                    • 「気に入らないコード」をレビューする際にRed Hatのエンジニアはどうしているのか

                                                                      「気に入らないコード」をレビューする際にRed Hatのエンジニアはどうしているのか:10個のヒントとは? プロジェクトメンテナーの立場にあるとき、提出されたコードが何らかの理由で気に入らない場合はどうしたらよいだろうか。Red Hatのソフトウェアエンジニアが、コードレビューを行うに当たって念頭に置くべき10のヒントを解説した。 Red Hatでソフトウェアエンジニアを務めるデビッド・ロイド氏は2019年7月8日(米国時間)、コードレビューを行うに当たって念頭に置くべき10のヒントを同社の開発者向け公式ブログで解説した。プロジェクトメンテナーの立場にあるとき、提出されたコードが何らかの理由で気に入らない場合に役立つ指針だ。コントリビューター側としても参考になる。 これらのヒントは、客観的で的を射たレビューを行い、プロジェクトとその参加者を前進させるという観点からまとめられている。 (1)

                                                                        「気に入らないコード」をレビューする際にRed Hatのエンジニアはどうしているのか
                                                                      • 入門 継続的デリバリー

                                                                        継続的デリバリーとは、コード変更を必要に応じて迅速かつ安全に、継続的にリリースできるようにするための開発手法です。本書は、初めて継続的デリバリーに取り組む読者向けに、必要な知識とベストプラクティスをていねいに紹介する入門書です。基本的な概念や技術、アプローチの解説はもとより、章ごとに事例を使用しながら、継続的デリバリーを実践する際に直面するさまざまなシナリオを取り上げ、その全体像・世界観を包括的に理解することができます。 序文 はじめに 第1部 継続的デリバリーとは 1章 『入門 継続的デリバリー』へようこそ 1.1 継続的デリバリーは必要? 1.2 なぜ継続的デリバリー? 1.3 継続的デリバリーとは 1.4 インテグレーション 1.5 継続的インテグレーション 1.6 何をデリバリーするのか? 1.7 デリバリー 1.8 継続的デリバリーと継続的デプロイメント 1.9 継続的デリバリー

                                                                          入門 継続的デリバリー
                                                                        • Terraformのセキュリティ静的解析 tfsec の導入から始めるAWSセキュリティプラクティス - BASEプロダクトチームブログ

                                                                          こんにちは。BASE BANK 株式会社 Dev Division にて、 Software Developer をしている東口(@hgsgtk)です。 BASE BANK Dev での開発では、クラウドインフラの構成管理に、 Terraform を利用しています。 世の情報をたくさんキュレーションしている CTO の@dmnlkさんに、手軽に CI に組み込めそうなセキュリティチェックツールがあることを教えてもらったので、導入してみました。 CTO氏のキュレーションメディアで紹介された tfsec を早速試して良さそうだったhttps://t.co/bl67dlW2Ub https://t.co/vAkTOVagec— Kazuki Higashiguchi (@hgsgtk) August 21, 2020 このブログの公開日は 2020/10/30 ですので、導入してから約 2 ヶ月

                                                                            Terraformのセキュリティ静的解析 tfsec の導入から始めるAWSセキュリティプラクティス - BASEプロダクトチームブログ
                                                                          • ジョブを細かく分けて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 のリポジトリに自動的に同期する仕組みを作った
                                                                              • 「プロダクト間共通の React コンポーネントライブラリ」がどうなったか、という話 - SmartHR Tech Blog

                                                                                こんにちは! フロントエンドエンジニアの @diescake です! 1 年程前に @nabeliwo よりこんな記事を公開しています。 tech.smarthr.jp 一言で要約してしまうと、SmartHR の各種プロダクトで一貫したユーザー体験を提供するために、SmartHR UI という React コンポーネントライブラリを実装し始めたよ! しかも OSS として公開してるよ! という話でございました。 github.com 本記事では、それから 1 年弱たった今 SmartHR UI がどうなっているか、という話をしつつ、現在の SmartHR UI の運用・開発体制について話をしてみようと思います。 SmartHR UI は成長しているよ! 2019/08/01 2020/05/21 バージョン v3.9.2 v8.2.0 コンポーネント数1 30 66 ソースコード規模2 3

                                                                                  「プロダクト間共通の React コンポーネントライブラリ」がどうなったか、という話 - SmartHR Tech Blog
                                                                                • マイクロソフト傘下GitHub、「Super Linter」リリース

                                                                                  印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます ソースコードをチェックし、プログラミング上の間違いやその他の過ちを見つけてくれるツールは開発者にとって有益だ。Microsoft傘下のGitHubは米国時間6月18日、コードリポジトリー上で複数の「lint」ツール(コードの静的解析ツール)を設定するという煩わしさから開発者を解放する「Super Linter」をリリースした。 Super Linterは開発ワークフローの特定の側面を自動化するツール「GitHub Actions」上に構築されており、複数のプログラミング言語を用いるプロジェクトに貢献する開発者の支援を目的としている。 GitHubの説明によるとSuper Linterは、「bashを用いてさまざまなlinterを簡潔に組

                                                                                    マイクロソフト傘下GitHub、「Super Linter」リリース