Decide the approach for post-deployment smoke testing on UAT/PROD

オープン
#216 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
25/100
issue の種類
ドキュメント
明瞭さ
説明が足りない
活発さ
活発
技術スタック
aws, postgresql

調査の方向性

まず database/migrations/V1.4.0.2__initial_schema.ddl を読み、リポジトリ内で public_cps_za_test の参照を検索して、すべての読み取り/書き込みパスを特定します。次に、リンクされている PR の議論 (#214) と関連する issue #201 を確認し、現在の migration、UAT/PROD、deployment に関する前提を確認します。issue には具体的なテストが記載されていないため、検証は主に設計/ドキュメントのレビューになります。完了の条件は、文書化された決定と、smoke-test メカニズムを削除、置換、または分離するための migration/configuration の変更があればそれを行うことです。

索引モデルが issue の本文から書いたものです。

説明

question
Background

database/migrations/V1.4.0.2__initial_schema.ddl  includes a  public_cps_za_test  table used to write/read a "test topic" event, originally added by @oto-macenauer-absa as a PoC mechanism for basic post-deployment smoke testing (write to a test topic, read via SQS, confirm the pipeline works end-to-end). New question was raised whether this is still needed now that a DEV environment exists for testing, and flagged that it means a test-only object lives permanently inside the real UAT/PROD schema. @miroslavpojer raised that running any automated smoke test — read or write — against PROD carries real risk, especially write-based tests, which could be silently forgotten and cause harm over time.

Questions To Answer
  1. Do we still need an automated post-deployment smoke test against UAT/PROD, given DEV exists for general testing?
  2. If yes, should it be read-only, write-based, or both?
  3. Should smoke-test objects (tables/topics) be kept separate from the real production schema/queues instead of embedded alongside real data (current solution)?
  4. Should  public_cps_za_test be removed, kept as-is, or replaced with a differently scoped mechanism?
Additional Resources

• Discussion thread https://github.com/AbsaOSS/EventGate/pull/214#discussion_r3813778453.
• Related: #201 (Flyway migrations setup)

主要言語
Python
スター
4
フォーク
0
平均マージ
3日 12時間
マージ済み PR(30日)
10

環境構築

  • Dockerfile または Docker Compose ファイルあり
  • プルリクエストのテンプレートあり
  • コントリビューションガイドなし

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

AbsaOSS/EventGate のほかの issue

AbsaOSS/EventGate の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。