並び順

ブックマーク数

期間指定

  • から
  • まで

201 - 240 件 / 471件

新着順 人気順

CIの検索結果201 - 240 件 / 471件

  • 米国防省、KubernetesをF-16ジェット戦闘機に載せてみた

    Kubernetesを自動車に載せるというデンソーの発表事例を紹介した6月の記事「Kubernetesを自動車に載せる、デンソーが「Misaki」を発表。年内にもオープンソースとして公開」は多くの読者に読まれました。 このデンソーの発表の中で、(記事では省略していますが)先行事例として米国防省がKubernetesとIstioをF16ジェット戦闘機に載せたことが触れられています。 これは2019年11月にサンディエゴで行われたイベント「KubeCon+CloudNativeCon North America 2019」で行われたセッション「How the Department of Defense Moved to Kubernetes and Istio」で紹介されたものです。 セッション中では国防省がコンテナとKubernetesを基盤にCI/CDに取り組んでいること、MVP(Mini

      米国防省、KubernetesをF-16ジェット戦闘機に載せてみた
    • CircleCI security alert: Rotate any secrets stored in CircleCI (Updated Jan 13)

      CircleCI security alert: Rotate any secrets stored in CircleCI (Updated Jan 13) Security update 01/12/2023 - 00:30 UTC We have partnered with AWS to help notify all CircleCI customers whose AWS tokens may have been impacted as part of this security incident. Today, AWS began alerting customers via email with lists of potentially impacted tokens. The subject line for this email is [Action Required]

        CircleCI security alert: Rotate any secrets stored in CircleCI (Updated Jan 13)
      • Rails: Evil Martiansが使って選び抜いた夢のgem -- 2024年度版(翻訳)|TechRacho by BPS株式会社

        概要 元サイトの許諾を得て翻訳・公開いたします。 英語記事: Gemfile of dreams: the libraries we use to build Rails apps—Martian Chronicles, Evil Martians’ team blog 原文更新日: 2024/05/28 原著者: Vladimir Dementyev(首席バックエンドエンジニア)、Travis Turner(技術記事編集者) サイト: Evil Martians -- ニューヨークやロシアを中心に拠点を構えるRuby on Rails開発会社です。良質のブログ記事を多数公開し、多くのgemのスポンサーでもあります。 日本語ブログ: 合同会社イービルマーシャンズ - Qiita 日本語タイトルは内容に即したものにしました。また、gemごとにGitHubリポジトリへのリンクカードも追加してあ

          Rails: Evil Martiansが使って選び抜いた夢のgem -- 2024年度版(翻訳)|TechRacho by BPS株式会社
        • AWS CDKでECS on FargateのCI/CDを実現する際の理想と現実 / ideal-and-reality-when-implementing-cicd-for-ecs-on-fargate-with-aws-cdk

          AWS DevDay Japan 2022 で登壇した際の資料です

            AWS CDKでECS on FargateのCI/CDを実現する際の理想と現実 / ideal-and-reality-when-implementing-cicd-for-ecs-on-fargate-with-aws-cdk
          • k8sの各種CDツールを比較する - pospomeのプログラミング日記

            k8s のCDツールがいくつかあるので、それらの特徴についてまとめる。 一応CDツールの定義は"k8sにWebアプリケーションをデプロイするツール"を想定しているが、 k8sにおけるデプロイはマニフェストファイルを apply することなので、 そういったものはすべてCDツールとみなして調べた。 すべてのツールをちゃんと調べたわけではないので、ものによってはサラッとした紹介になっている。 Flux Tekton(Tekton Pipeline) Jenkins-X PipeCD GCP Cloud Deploy AWS Code Pipeline Spinnaker Pipeline & Stage 動的なパイプライン Managed Delivery Spinnaker を使いこなせるか? ArgoCD Single Source of Truth(SSOT) 複雑なCDパイプラインは作

              k8sの各種CDツールを比較する - pospomeのプログラミング日記
            • 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カクテル
              • テスト工程の可視化や自動化に向けた取り組みのご紹介 - Mirrativ Tech Blog

                こんにちは、エンジニアの千吉良(ちぎら)@_naru_jpn です。ここ最近 QA に関して考える機会があり、Systematic Software Testing という本を読んでいたところ、色々と刺激を受けるところがありました。計画書の作成やリスク管理などテストの実施以外の領域についても多く書かれていましたが、まずはミラティブの現状に基づいた改善を行うべきだろうと考えました。今回は特にメトリクスの取得などに関して、GAS(Google Apps Script)を活用してミラティブの業務に応用してみたことについてまとめてみました。 以下では細かいことにも触れているので、3行まとめをおいておきます。 手動テストの進捗を見えるようにしたよ GAS(Google Apps Script)で実装したよ ついでに関連業務を自動化したよ ミラティブにおける QA と解決できそうと感じた課題 ミラティ

                  テスト工程の可視化や自動化に向けた取り組みのご紹介 - Mirrativ Tech Blog
                • GitHubで扱うPersonal access tokenの利用方法をセキュアにする - 10X Product Blog

                  こんにちは、セキュリティチームの@sota1235です。 セキュリティチームでは昨年の夏頃からGitHub上のセキュリティリスクを洗い出し、順に対応や改善を行っています。 そのうちの1つとして、昨年の秋ごろからGitHubのPersonal Access Tokenの取り扱いの改善を行ってきました。 具体的には以下の取り組みを行いました。 CI等で利用されているPersonal Access Tokenの利用廃止 OrganizationにおけるPersonal Access Token(classic)の利用禁止設定 今回はこの2つの取り組みについて、どのような課題設定を行い、どんな手順で完了したのかをお話しします。 以下のような課題感、疑問をお持ちの方に対する1つの回答になりうると思うので該当する方はぜひご一読ください🙏 GitHubにおけるPersonal Access Token

                    GitHubで扱うPersonal access tokenの利用方法をセキュアにする - 10X Product Blog
                  • 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改善について速報で解説する
                    • 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で簡単に並列実行する | おそらくはそれさえも平凡な日々
                      • 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
                        • 「入門 継続的デリバリー」は継続的デリバリーを学ぶのに最適な教科書だった. - Lean Baseball

                          最近読んだ「入門 継続的デリバリー」がとても良かったので紹介しますね, というエントリーです. 入門継続的デリバリー良かったです. 「継続的デリバリー(Continuous Delivery)」とか「DevOps」ってどこから学ぶかわからんな!? というのは割とあるあるだと思っています, そもそもめちゃくちゃ難しい話なので(ちゃんと学ぼうとすると). そんな中, 「入門 継続的デリバリー」がよく説明できてて良かったので感想と関連する書籍を紹介できればと思っています. TL;DR 入門 継続的デリバリー 我々はなぜCDをするのか? 具体的なプラクティス 入門後に読むべき良著 Kubernetes CI/CDパイプラインの実装 継続的デリバリー チームトポロジー 結び - 我思うCDとDevOps TL;DR 「入門 継続的デリバリー」は継続的デリバリーの大切さと概念, 手法を現実にありそうな

                            「入門 継続的デリバリー」は継続的デリバリーを学ぶのに最適な教科書だった. - Lean Baseball
                          • 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
                            • Security alert: Attack campaign involving stolen OAuth user tokens issued to two third-party integrators

                              AI & MLLearn about artificial intelligence and machine learning across the GitHub ecosystem and the wider industry. Generative AILearn how to build with generative AI. GitHub CopilotChange how you work with GitHub Copilot. LLMsEverything developers need to know about LLMs. Machine learningMachine learning tips, tricks, and best practices. How AI code generation worksExplore the capabilities and be

                                Security alert: Attack campaign involving stolen OAuth user tokens issued to two third-party integrators
                              • 継続的デリバリを実現するツールは何がおすすめ?「CNCF Technology Radar」が公開

                                Kubernetesなどの開発をホストし、クラウドネイティブを推進する団体「Cloud Native Computing Foundation」(CNCF)は、クラウドネイティブ関連のテクノロジーやツール、サービスなどの評価を示した「CNCF Technology Radar」を発表しました。 CNCFではオープンソースによるさまざまなクラウドネイティブ関連ツールの開発をホストするだけでなく、クラウドネイティブなテクノロジーを活用し議論する立場のエンドユーザー企業もメンバーとして所属しています。 CNCF Technology Radarは、このエンドユーザー企業メンバーに対してアンケートを行い、その結果を基にテクノロジーやツール、サービスなどの評価をまとめたものです。 評価は「Adopt」「Trial」「Assess」「Hold」に分かれています。 「Adopt」はエンドユーザー企業も活

                                  継続的デリバリを実現するツールは何がおすすめ?「CNCF Technology Radar」が公開
                                • CentOS Streamは継続的デリバリーです - 赤帽エンジニアブログ

                                  この記事はStef Walterによる CentOS Stream is Continuous Delivery の翻訳です。 継続的デリバリーの基礎:難しいことを継続的に行い、簡単になるようにする。 外から見ると、RHEL(そしてCentOS Linuxコンテンツ)を構築する方法は、この10年間で変わっていないように見えるかもしれません。しかし、その内部ではRHELを開発する方法について、顧客に影響を与えることなく記念碑的な変革を成し遂げようとしています。 私は様々なカンファレンスでこの話をしてきましたが、CentOS Linux 8とCentOS Streamについての発表は、ここで話をするきっかけを与えてくれました。 3年前、RHELエンジニアリングで働いている私たちの何人かはアイデアを持っていました:継続的インテグレーション、継続的デリバリー、予測可能なリリース頻度などの現代的な開

                                    CentOS Streamは継続的デリバリーです - 赤帽エンジニアブログ
                                  • Rustのビルドを高速化する方法 | POSTD

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

                                      Rustのビルドを高速化する方法 | POSTD
                                    • Kubernetesを利用したクラウドネイティブな開発と運用とは何か? これまでと何が違うのか? サイバーエージェント青山氏が語る(前編) July Tech Festa 2019

                                      Kubernetesを利用したクラウドネイティブな開発と運用とは何か? これまでと何が違うのか? サイバーエージェント青山氏が語る(前編) July Tech Festa 2019 Kubernetesを利用したクラウドネイティブな開発や運用は、これまでとどう違うのでしょうか、あるいはどのくらい進化したものなのでしょうか。 2019年12月8日に産業技術大学院大学で行われたイベント「July Tech Festa 2019」で、サイバーエージェントの青山真也氏が行ったセッション『「Kubernetes による Cloud Native な開発」と「VM 時代の開発」』で、VMを用いた従来の方法と比較しつつ、Kubernetesを前提としたクラウドネイティブのやり方が分かりやすく紹介されています。 その内容をダイジェストで紹介しましょう。本記事は前編と後編に分かれています。いまお読みの記事は

                                        Kubernetesを利用したクラウドネイティブな開発と運用とは何か? これまでと何が違うのか? サイバーエージェント青山氏が語る(前編) July Tech Festa 2019
                                      • 第2回 AWS Fargate かんたんデプロイ選手権 #AWSDevDay - Speaker Deck

                                        Find your best for ECS/Fargate 🙌 Talked at "AWS Dev Day Online Japan" 2020.

                                          第2回 AWS Fargate かんたんデプロイ選手権 #AWSDevDay - Speaker Deck
                                        • macOSのCopy-on-Write機能を使ってディスクを節約した話 - DeNA Testing Blog

                                          こんにちは、SWETでCI/CDチームの前田( @mad_p )です。 SWETではCI/CDチームの一員として、Jenkins運用のサポートや、CI/CD回りのノウハウ蓄積・研究をしています。 はじめに 先日開催されましたCEDEC 2022にて、Gitリポジトリの肥大化に対応した事例を発表しました。これはそのフォローアップ記事となります。以前に出した記事の続編でもあります。 発表資料は次の場所に置いていますので、参照してみてください。 CEDiL(要登録): https://cedil.cesa.or.jp/cedil_sessions/view/2600 Speaker Deck: https://speakerdeck.com/dena_tech/kaorumaeda_cedec2022 Gitリポジトリの肥大化問題 前提となっている課題をおさらいしておきます。 Gitリポジトリは

                                            macOSのCopy-on-Write機能を使ってディスクを節約した話 - DeNA Testing Blog
                                          • Amazon ECS デプロイツール ecspresso 開発5年の歩み

                                            AWS Dev Day Tokyo 2023

                                              Amazon ECS デプロイツール ecspresso 開発5年の歩み
                                            • GitHub Actions はチューリング完全

                                              チューリング完全とは、ざっくり説明すると、一部を除くほとんど全ての計算が可能な能力を意味します。言い換えると、ほとんど全ての計算問題を解く能力を意味します。(あとでもう少し詳しく説明します。)プログラミング言語は一般にチューリング完全であり、例えば TypeScript や Python はチューリング完全です。プログラミング言語以外にも、TypeScript の型システムやスーパーマリオメーカー、マジック・ザ・ギャザリングもまたチューリング完全であることが知られています[1][2][3]。直近では find と mkdir だけでチューリング完全になると報告されていましたね[4]。 逆にチューリング完全でない例としては正規表現[5]があります。チューリング完全ならば正規表現で解ける問題を全て解けますが、その逆は不可能です。例えば回文の判定は正規表現だと無理です。このように、数ある計算能力

                                                GitHub Actions はチューリング完全
                                              • 個人運用k8sクラスタの構成要素の技術選定 - でこてっくろぐ ねお

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

                                                  個人運用k8sクラスタの構成要素の技術選定 - でこてっくろぐ ねお
                                                • Apple IDの2ファクタ認証をCI環境で突破する - 24/7 twenty-four seven

                                                  【注意】この記事で紹介しているSMS APIサービスのVonageは利用規約により認証にVonageの電話番号を利用することを禁止しているという記述があるので、末尾の別解として載せたAndroidデバイスを使ってSMSを転送する方法が良さそうです。 help.nexmo.com 2021年2月から、App Store Connectにログインする際にすべてのApple IDで2ファクタ認証が必須になります。 Starting February 2021, additional authentication will be required for all users to sign in to App Store Connect. This extra layer of security for your Apple ID helps ensure that you’re the only

                                                    Apple IDの2ファクタ認証をCI環境で突破する - 24/7 twenty-four seven
                                                  • 私のチームで行っているドキュメント管理方法の紹介(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
                                                    • ウェブアプリケーションエンジニアとして転職活動をしますー! - Mitsuyuki.Shiiba

                                                      しばらくしたら次のことを考えたいなと思ってるので、よい仕事や空いてるポジションがあったら教えてください!— Mitz Shiiba@フルスタックエンジニア (@bufferings) December 8, 2022 突然ですが CircleCI を辞めることになりました。そのことについてあまり話すつもりはないのですが、今の気持ちだけ書いておくと、びっくりはしたけど特にネガティブな感情はなく、面白い経験だなぁという気持ちです。 この一年間、色々とあまりできない体験をしてきた締めくくりにピッタリです。この状況を受け入れて、流れに身をまかせて楽しもうと思います。 ということで、こんな機会はあまりないので、次をどうするか、折角だから色々な会社のお話を聞いてから考えたいなぁと思ってつぶやいたら、たくさんのご連絡をいただき、とても嬉しく思っています。ひとつひとつのお誘いや励ましが、とてもありがたいで

                                                        ウェブアプリケーションエンジニアとして転職活動をしますー! - Mitsuyuki.Shiiba
                                                      • docker としての asdf ― あるいは、なぜ私は anyenv から乗り換えたか - ウェルスナビ開発者ブログ

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

                                                          docker としての asdf ― あるいは、なぜ私は anyenv から乗り換えたか - ウェルスナビ開発者ブログ
                                                        • 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 技術ブログ
                                                          • 組織でのはてなブログ運営をGitHub上で行うためのテンプレートリポジトリ「HatenaBlog Workflows Boilerplate」を公開しました - はてなブログ開発ブログ

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

                                                              組織でのはてなブログ運営をGitHub上で行うためのテンプレートリポジトリ「HatenaBlog Workflows Boilerplate」を公開しました - はてなブログ開発ブログ
                                                            • 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

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

                                                                OCHaCafe Season7 #3の資料です.

                                                                  GitHub Actionsを使いこなせ!/Get Started GitHub Actions
                                                                • 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を利用しており、またファイル

                                                                  • Go公式のlinter、Golintが非推奨になった

                                                                    Goが公式で出していたGolintがdeprecated/frozenしました。 メンテがされていない 2018年から実質的な変更が加わってない Issueも放置されているものが多い golang orgに存在するlinterなのでGoが公式として推奨しているlinterに見える Go が実際には保守されていないプログラムを公式として推奨しているように見えてしまう 開発者は合理的に異なるスタイルを採用したい場合がある Golint単体で特定の警告を無視したりするなどの機能を持っていない ということからattractive nuisance(魅力的な迷惑者)になっているというProposalでした。 Issueの議論を見てもdeprecate/frozenすることに対して否定的な意見は少なく、一年ほど前にapproveされました。(なので「非推奨にしよう」なったの自体は少し前の話です) そし

                                                                      Go公式のlinter、Golintが非推奨になった
                                                                    • 入門 継続的デリバリー

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

                                                                        入門 継続的デリバリー
                                                                      • GitHub Actionsでいい感じのリリースノートを完全自動で作成する

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

                                                                          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 Actionsのテストを効率化する

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

                                                                              ジョブを細かく分けてGitHub Actionsのテストを効率化する
                                                                            • TypeScriptプロジェクトのCIでやってること

                                                                              概要 最近退職に伴いTypeScriptプロジェクトのCI/CDの見直しを行っているので主にプルリクに対するCIを中心に何をやっているのか(やっていた&やろうとしているもの含む)紹介します。 それぞれはさらっとした紹介のみです。 ちなみに書いてから気づいたんですが殆どTS以外でもできます。 tsc, prettier, eslint 基本です。恐らく殆どのプロジェクトでやっているかと思います。 tscは--noEmitオプションを付けて実行、eslintは--cacheと--quietオプションを付けて実行しています。 prettierは--list-differentオプションを付けると差分があった場合(=prettierが適用されていないファイルがあった場合)にエラーにしてくれます。 CIでWebpack等でバンドルしてる場合はこの辺を明示的に行わなくてもそこでコケるのでやってないケー

                                                                                TypeScriptプロジェクトのCIでやってること
                                                                              • hadolintを使ってDockerfileをベストプラクティスに沿った状態に保つ

                                                                                Dockerは公式にDockerfileのベストプラクティスを表明しています。 が、このベストプラクティスに沿っているかどうか?を人間がいちいちレビューしていくのは正直しんどい、というか現実的ではない… そこで「せや!静的解析したろ!」という時に便利なのがhadolintというライブラリです。 使ってみる 今回はVSCode拡張機能とGHAのCI時に静的解析してもらいたいと思います。 今回はちょうどメンテナンスしていない自分のリポジトリがあるので、これに対して静的解析をかけていきます。 まずはVSCode拡張機能で利用するための下準備として、hadolint本体をOSにインストールします。 Macの場合はこちら。 docker/php/Dockerfile:8 DL3008 warning: Pin versions in apt get install. Instead of `apt-

                                                                                  hadolintを使ってDockerfileをベストプラクティスに沿った状態に保つ
                                                                                • 排他制御を行う 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 の並列数を制限するオプ