tippy3のブックマーク (224)

  • 【書き起こし】The World Is at Your Pull Request! – How to Make a Dynamic QA Environment on Kubernetes and Istio - Yuki Ito【Merpay Tech Fest 2021】 | メルカリエンジニアリング

    【書き起こし】The World Is at Your Pull Request! – How to Make a Dynamic QA Environment on Kubernetes and Istio - Yuki Ito【Merpay Tech Fest 2021】 Merpay Tech Fest 2021は、事業との関わりから技術への興味を深め、プロダクトやサービスを支えるエンジニアリングを知れるお祭りで、2021年7月26日(月)からの5日間、開催しました。セッションでは、事業を支える組織・技術・課題などへの試行錯誤やアプローチを紹介していきました。 この記事は、「The World Is at Your Pull Request!」の書き起こしです。 伊藤雄貴氏:「The World Is at Your Pull Request!」というタイトルで、メルペイの伊藤が発表

    【書き起こし】The World Is at Your Pull Request! – How to Make a Dynamic QA Environment on Kubernetes and Istio - Yuki Ito【Merpay Tech Fest 2021】 | メルカリエンジニアリング
    tippy3
    tippy3 2022/02/24
  • Git 再入門: 引数がない git pull のデフォルトの挙動 (アップストリーム, トラッキングブランチについて) | yunabe.jp

    Git 再入門: 引数がない git pull のデフォルトの挙動 (アップストリーム, トラッキングブランチについて) 前章で git pull の使い方を紹介 した際に git pull <remote> <src> のように引数を与えると説明しましたが、 実はこの2つの引数を省略して単に git pull として実行することも出来ます。 このように引数を省略した時には、git はどのリモートリポジトリのブランチを選んで現在のブランチに pull するのでしょうか。 トラッキングブランチ (Tracking Branch) とアップストリーム (Upstream) git pull/push で引数を省略できるように、Git ではローカルブランチをリモートトラッキングブランチに対して関連付けることができます。 リモートトラッキングブランチに関連付けられたローカルブランチのことを トラッ

    tippy3
    tippy3 2022/02/24
  • Goが未使用のパッケージインポートをエラーとする理由

    Goが未使用のパッケージインポートの記述をエラーにするという挙動は多くの非難を浴びました。 「コンパイルエラーでなく警告にすべき」 または 「コンパイルオプションで選べる様にして欲しい」 というような意見はたくさん寄せられましたがGo開発コアメンバーはこれらの要望に応えることはありませんでした。その理由を解説します。 Goの依存解決のアプローチ Goの依存ツリーはコードの中に記述します。これはメジャーなパッケージマネージャとは異なる手法です。 多くの処理系では依存解決に必要な情報を言語仕様には含めず、別途ファイルに依存情報を列挙して記述しておき、それらの情報を辿ることで依存ツリーを構築しそのツリーに基づいて依存を解決するというアプローチを採用しているものがほとんどです。 Goは依存解決に必要な情報をコードの中に記述するというレアなアプローチを採りました。 ESモジュールのアイディアに近い考

    Goが未使用のパッケージインポートをエラーとする理由
    tippy3
    tippy3 2022/02/22
  • Fastlyについて知らないかもしれない30のこと – TravelBook Tech Blog

    いわくら君が書いてくれた通り 、トラベルブックではFastlyを導入しました。Fastlyについて初めて分かったことがたくさんありました。列挙してみたら30個もあったので、一個ずつ紹介してみることにします。 そもそもFastlyとは そもそもFastlyとはCDNのサービスです。現在では後述するCompute@Edgeを主力としたサーバーレス環境を推していますが、とにかくCDNです。今回は www.travelbook.co.jp ドメイン全てに対して適応し、全てのHTMLページをFastly経由にしました。 もともとVarnishでページをキャッシュしていた部分をFastlyに置き換えることで冗長化・安定化、また、パフォーマンスアップを図ります。 加えて、これまでキャッシュの対象外だったページも、この際TTL付きでキャッシュする、というのが今回やったことです。 詳しくはいわくら君の書いた

    Fastlyについて知らないかもしれない30のこと – TravelBook Tech Blog
    tippy3
    tippy3 2022/02/10
  • 2022年のプロダクトマネジメント方針を公開します - SmartHR Tech Blog

    こんにちは、プロダクトマネージャー(以下、PM)のadachiです。 SmartHRでは、年始に各部署のリーダーがその年の方針を発表することになっています。今回は私がPMグループの方針として書いた文章を、丸ごとそのまま公開したいと思います。 文に入る前に、少しだけ補足をさせてください。 現在PMグループには13名のPMが所属しており、それぞれ担当するプロダクトの性質もフェーズも異なります。そのようなチームに向けたメッセージということで、やや抽象的かつ焦点が絞りきれていない内容になっております。(言い訳その1) また、改めて読み返すとかなり基的なことしか書いていないのですが、基に立ち戻ってがんばろうぜ!という趣旨であることをご理解いただければと思います。(言い訳その2) そして、あふれる思いを詰め込んだ結果、かなりの長文になってしまいました。シンプルさを美徳とするPMとしては汗顔の至り

    2022年のプロダクトマネジメント方針を公開します - SmartHR Tech Blog
    tippy3
    tippy3 2022/02/10
  • GitHub の PR 作成権限をもっていると CI 越しに GCP のオーナー権限が使える脆弱性

    ※注意※ この話はGitHub 自体の脆弱性ではなく私達の設定に起因する脆弱性です また特にこの話に関連したインシデントは発生していません こんにちはミクシィの 開発部 SREグループ の riddle です。 私達は GitHub による Pull Request(PR) ベースの開発を行っております。同様にインフラも Terraform コードを GitHub で管理しています。 Terraform を管理するリポジトリには2種類のCIがあります。 PR の作成・更新で動く terraform plan の CImain ブランチへのマージで動く terraform apply のCI※ terraform plan : 設定に従ってインフラを変更できるか? をチェックするコマンド ※ terraform apply : 設定に従ってインフラを変更するコマンド 何があったのか? 私達

    GitHub の PR 作成権限をもっていると CI 越しに GCP のオーナー権限が使える脆弱性
    tippy3
    tippy3 2022/02/10
  • 【アップデート】Amazon CloudFront を経由しないアクセスのブロックが簡単になりました | DevelopersIO

    ウィスキー、シガー、パイプをこよなく愛する大栗です。 先程のアップデートで CloudFront の IP アドレスが Managed Prefix List でサポートされました。これにより CloudFront を経由しない不正なアクセスを簡単に弾くことが可能になります。CMS など CloudFront を使う機会が多いサービスではぜひご利用ください。また CloudFront で AWS WAF を使ってセキュリティを向上している場合の迂回路を塞ぐことができます。 Amazon CloudFront now supports a managed prefix list CloudFront を経由しないアクセス 今まで AWS で CloudFront を経由したアクセスだけ強制させる場合は、CloudFront ではカスタムヘッダを付与して、その値を ALB や Web サーバで

    【アップデート】Amazon CloudFront を経由しないアクセスのブロックが簡単になりました | DevelopersIO
    tippy3
    tippy3 2022/02/10
  • Googleフォントを使うと犯罪になる - Qiita

    <link href="https://fonts.googleapis.com">って書くと罰金取られます。 以下はGerman Court Rules Websites Embedding Google Fonts Violates GDPRというニュースの紹介です。 German Court Rules Websites Embedding Google Fonts Violates GDPR ドイツのミュンヘン地方裁判所は、あるWebサイトの運営者が、ユーザの個人情報を人の同意なしにフォントライブラリを経由してGoogleに提供したとして、100ユーロの賠償を命じました。 Webサイトが原告のIPアドレスGoogleに無断で提供したことは、ユーザのプライバシー権の侵害に当たると判断しました。 さらに、Webサイトの運営者は収集した情報をその他のデータと突き合わせることで『IPア

    Googleフォントを使うと犯罪になる - Qiita
    tippy3
    tippy3 2022/02/09
  • 開発チームとともに歩むSREチームが成し遂げたいこと | メルカリエンジニアリング

    こんにちは、メルカリMicroservices SREチームでEngineering Managerをしている@m4buyaこと渋谷です。 メルカリでは、昨年6月にSREチームの一部をマイナーアップデートし、プロダクトチームに寄り添いSREとしての専門性を活かし信頼性に貢献していくMicroservices SREチームを発足しました。記事では、そうするに至った背景、何を目指しているのか、これまでに出来たこととまだ出来ていないことを振り返り、今後の展望についてご紹介します。 背景 メルカリでは、2015年よりSREチームを立ち上げ、お客様が安心・安全にメルカリサービスを利用していただくためのシステムの信頼性の維持向上に取り組んできました。年々プロダクトとして成長を続け、トラフィックも増加する一方のメルカリサービスに求められるスケーラビリティ向上において、メルカリSREチームは大きな役割を

    開発チームとともに歩むSREチームが成し遂げたいこと | メルカリエンジニアリング
    tippy3
    tippy3 2022/02/09
  • GitHub Apps経由で発行したtokenを用いて、GitHub Actionsで使う

    モチベーション github action で、secrets.GITHUB_TOKEN の権限を超えて GitHub を操作する場合、Personal Access Token を使って操作することが多い。 Personal Access Token はセキュリティの都合上、有効期限を設定することがベターとされており、無期限で作成したくない。 個人で管理する repo などであれば ↑ でも問題ないが、Organization で複数人が管理する場合、個人の Access Token を使うことはそもそも避けたい。 GitHub Apps を用いてチーム管理 Token を払い出す(意訳)ことで、Personal Access Token に依存せずに、secrets.GITHUB_TOKEN の権限を超えて GitHub を操作できるようにする。 ゴール Organization 配下

    GitHub Apps経由で発行したtokenを用いて、GitHub Actionsで使う
    tippy3
    tippy3 2022/02/09
  • GitHub APIを使うBotたちのGitHub Appsへの移行 - KAYAC engineers' blog

    どうもこんにちは、ソーシャルゲーム事業部ゲーム技研の谷脇です。 この記事はTech KAYAC Advent Calendar 2019 Migration Trackの14日目の記事です。13日目はAmazon S3 Signature V2 廃止対応にまつわるあれこれでした。 従来のGitHub APIを使うBot カヤックではGitHubを使っています。また、各プロジェクトでは自動化されたワークフローの一環として、Slack上でのコマンドからPull Requestを作成したり、レビュワースロットを実行したり、勝手に手順書を生成してissueに貼るなどしています。 こういったBotたちはGitHub上のリソースを操作するために、GitHub APIを使用しています。Organization内のPrivateリポジトリを操作するためには、認証のためにGitHub Tokenが必要です。

    GitHub APIを使うBotたちのGitHub Appsへの移行 - KAYAC engineers' blog
    tippy3
    tippy3 2022/02/09
  • Bootstrap5がリリースされました!

    より詳細な内容は公式ブログの記事にまとまっているので、日語に翻訳して紹介していきます。 Bootstrap5公式Blog記事(日語訳) Bootstrap5を正式公開しました!3つのアルファ版、3つのベータ版、数か月の開発を経て、最初の安定版としてメジャーバージョンをリリースします。Bootstrapのユーザー及びコントリビューター、メンテナーとすばらしいコミュニティによって実現しました。ここに来るのを手伝ってくれたすべての人に感謝します! 新しいロゴ 新コンポーネント:Offcanvas 新しいアコーディオン 新しくなったフォーム チェックボックスとラジオボタン フローティングラベル 新しいファイル入力 シンプルになったレイアウト RTL対応 刷新されたユーティリティ 新しいユーティリティAPI 新しいユーティリティ スペーシングユーティリティ 新しいスニペット例 グリッドとレイアウ

    Bootstrap5がリリースされました!
    tippy3
    tippy3 2022/02/05
  • Gitのサブモジュールで発生した変更を親リポジトリで無視する2つの方法 | DevelopersIO

    Gitのサブモジュール内で何か変更などがあると親リポジトリ側でコミットができません。解決方法は主に2個あるようです。実際に再現させつつ、その解決方法を紹介します。 こんにちは。サービスグループの武田です。 バージョン管理システムであるGitはソースコードなどをリポジトリという単位で管理します。さらにGitにはサブモジュールという機能があり、これを利用することで別のリポジトリを自身のリポジトリ内で再利用できます。 とても便利なサブモジュール機能なのですが、サブモジュール内で何か変更などがあると親リポジトリ側でコミットができません。たとえばサブモジュール内でビルドなどをして成果物が生成され、それが.gitignoreに書かれていない場合などが該当します。とはいえ、サブモジュールでそれをコミットするわけにもいきません。 解決方法は主に2個あるようです。実際に再現させつつ、その解決方法を紹介します

    Gitのサブモジュールで発生した変更を親リポジトリで無視する2つの方法 | DevelopersIO
    tippy3
    tippy3 2022/02/05
  • GitHub Actions の if, 否定演算子, そして YAML - pione30’s blog

    GitHub Actions のワークフロー構文に jobs.<job_id>.if 1 や jobs.<job_id>.steps[*].if 2 というものがあり 、その job や step の実行を if に書かれた条件が満たされた場合だけに限定することができます。 また GitHub Actions のワークフロー構文として "expression syntax" (式構文)3 というものが存在します。 これは ${{ <expression> }} と書くと <expression> 部分が文字列ではなく式として評価されるようになる、という特殊な構文です。 そしてドキュメントの該当部分 4 を読むと面白いことが書いてあります: When you use expressions in an if conditional, you may omit the expression s

    GitHub Actions の if, 否定演算子, そして YAML - pione30’s blog
    tippy3
    tippy3 2022/02/02
    if: では${{ }}を省略できるが、否定演算子!を使いたいときは省略してはならない。YAML文法での!と解釈されてしまうため。
  • AWS PrivateLinkのメトリクスの提供を開始

    VPC エンドポイント および VPC エンドポイントサービスのために AWS PrivateLink を使用する場合、新たに 5 つのメトリクスにアクセスできるようになりました。AWS PrivateLink は、フルマネージド型のプライベート接続サービスで、お客様はネットワークトラフィックを非公開にしたまま、AWS のサービスや、AWS 上でホストされているサードパーティもしくは企業内サービスなどに、安全かつスケーラブルな方法でアクセスできるようになります。 PrivateLink エンドポイントの所有者として、メトリクスを使用して、エンドポイントを介したトラフィック量と接続数の追跡、パケットドロップの監視、サービスによる接続リセット(RST)の表示を行うことができます。エンドポイントサービスの所有者であれば、エンドポイントサービスのバイト数、接続数、リセット数(RST)も可視化するこ

    AWS PrivateLinkのメトリクスの提供を開始
    tippy3
    tippy3 2022/02/01
  • 【アップデート】S3に対するGetリクエストのレスポンスをLambdaで加工するS3 Object Lambdaが利用可能になりました | DevelopersIO

    CX事業部@大阪の岩田です。2021/3/18付けのアップデートでS3に対するGetリクエストのレスポンスをLambdaで加工するS3 Object Lambdaという機能が利用できるようになりました。 S3 Object Lambdaとは? S3に対するGETリクエストをトリガーにLambdaを起動し、レスポンスを自由に加工できる機能です。例えば以下のようなユースケースが想定されています。 行のフィルタリング 画像の動的なリサイズ 機密データのマスク この機能を利用するには、S3アクセスポイントをラップした「オブジェクト Lambda アクセスポイント」が必要になります。クライアントが「オブジェクト Lambda アクセスポイント」経由でオブジェクトのGETを試行するとLambdaが起動し、Lambdaによってカスタマイズされたレスポンスが返却されるという流れになります。 S3アクセス

    【アップデート】S3に対するGetリクエストのレスポンスをLambdaで加工するS3 Object Lambdaが利用可能になりました | DevelopersIO
    tippy3
    tippy3 2022/01/31
    あとで試す
  • OSS「Coppe」の公開 〜 BigQuery基盤のデータ監視ツールによるデータ品質担保 - ZOZO TECH BLOG

    はじめに こんにちは、データシステム部データ基盤ブロックの纐纈です。9月から22卒内定者として、チームにジョインしました。 記事では、弊社のデータ基盤チームが抱えていた課題と、その解決のために公開したOSSツール「Coppe」を紹介します。Coppeは、以下のような方にお勧めできるツールです。 BigQueryを使用したデータ基盤の監視に興味がある BigQueryの監視ツールとしてRedashを採用しているが、運用が面倒に感じている インフラの設定なしにBigQueryの監視を行えるツールが欲しい なお、OSSはMonotaRO Tech Blogの記事「SQLを使った監視でデータ基盤の品質を向上させる」で紹介されていた仕組みを参考にし、より柔軟に監視項目を設定できるように新規開発しています。 OSSとして公開しているため、記事と併せてご覧ください。 github.com 開発の経

    OSS「Coppe」の公開 〜 BigQuery基盤のデータ監視ツールによるデータ品質担保 - ZOZO TECH BLOG
    tippy3
    tippy3 2022/01/05
  • ZOZOを退職しました。 - ときどき起きる

    こんにちはpakioです。エントリは退職エントリです。 TL;DR 2021年12月末をもって株式会社ZOZOを退職し、1月からは株式会社メルカリに入社します。US版メルカリの検索チームにてソフトウェアエンジニアとしてお世話になる予定です。 2019年4月に新卒として株式会社ZOZOテクノロジーズ入社したので、統合等ありつつも2年9ヶ月在籍したことになります。 なにをしていたのか ZOZOでは一貫してZOZOTOWNの検索に関わる仕事をしており、検索システムのリプレイスやマイクロサービス化などに携わって来ました。また、このあたりの活動に付随して外部登壇なども行なっていました。 初属していた検索チームは入社時3人のみで、オンプレ上で動くVB.netを主戦場としており、JSONやSQL文すら文字列結合で構築している状態で正直かなり驚きました。今では検索サーバサイド専任メンバーが9人 + 検索

    ZOZOを退職しました。 - ときどき起きる
    tippy3
    tippy3 2022/01/04
  • Swagger UIのVALIDバッジを非表示にする方法 - jongzの日記

    ZOZO Advent Calendar 2021 12日目の記事です。 Swagger UIを利用する際、右下に以下のようなバッジが表示されます。 VAILIDで表示されている場合は良いですが、外部のアクセスを遮断した状態でSwagger UIをホスティングする際はErrorが常に表示され続けます。Errorが表示されても特に支障はないのですがSwagger UIを見る人に誤解を招くので削除したいです。 小さいTipsになりますが、右下のVAILIDバッジを非表示にする方法を紹介します。 消し方 validatorUrlの設定を変更すると削除できます。 Swagger UIで変更可能な設定は以下にまとまっています。 swagger.io validatorUrlはデフォルトだとswagger.ioのonline validatorに対してvalidationを行います。なので外部のアクセ

    Swagger UIのVALIDバッジを非表示にする方法 - jongzの日記
    tippy3
    tippy3 2021/12/12
  • Log4jの脆弱性を緩和するAWS WAFをCloudFormationで設定してみた | DevelopersIO

    AWSのマネージドルールを利用して Log4jの脆弱性(CVE-2021-44228)を緩和するAWS WAFを、CloudFormatinで作成してみました。 AWSチームのすずきです。 Log4jの脆弱性を緩和するため、AWSのマネージドルールに含まれる「Log4JRCE」のみ利用するAWS WAF、 CloudFormatinで設置する機会がありましたので紹介させて頂きます。 WAF設定 WebACL ELB(ALB)の保護で利用するため、「Scope: REGIONAL」としました。 AWSのマネージドルール「AWSManagedRulesKnownBadInputsRuleSet」の最新バージョンを利用する指定を行いました。 誤検知による副作用を最小化するため、「Log4JRCE」以外のルールに該当したリクエストは受け入れる除外設定を行いました。 WebACL: Type: AW

    Log4jの脆弱性を緩和するAWS WAFをCloudFormationで設定してみた | DevelopersIO
    tippy3
    tippy3 2021/12/11