Launch blocker: validate the release candidate on real AWS S3 with end-to-end Git hosting

Ouverte
#222 2 commentaires 0 réactions 1 personne assignée Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

@ThomasK33 y travaille déjà.

Depuis le 11/9/2026.

Évaluation

Cette issue n'a pas encore été évaluée.

Description

Launch gate

Before the public open-source launch and Show HN announcement, record a reproducible real-AWS validation of the release candidate. SeaweedFS and Floci provide valuable regression coverage, but they do not establish that AWS authentication, permissions, storage behavior, and the complete Git hosting flow work together in the intended deployment.

Existing evidence and remaining gap

This is not the first AWS test. The recorded S3 campaign from August 27, 2026 passed the 22-surface qualification suite and exercised real Git pushes and recovery against S3. It was a single-day campaign from compute outside AWS and predates subsequent changes.

The testing reference documents emulator gaps: the pinned Floci lane does not enforce S3 IAM policy decisions or fully validate header-auth signatures/session tokens. Its passing Git/LFS suite therefore cannot prove those AWS properties.

The existing S3-only backend promotion tracker owns experimental-to-supported criteria, including pending contention reruns and multi-day measurements. This issue owns the product-wide public-launch AWS validation; it does not promote S3-only storage or replace that tracker.

Acceptance criteria

  • Define an isolated AWS sandbox, dedicated scratch resources, region, least-privilege test role, spending limit, and reliable teardown before provisioning. Use short-lived credentials and retain no secrets in evidence.
  • Pin the exact release candidate commit and binary/container artifact. Provide reproducible setup and test commands, preferably automated, with logs and a clear pass/fail report.
  • Run from EC2 in the same AWS region as the test bucket. Cover the standard Postgres + S3 topology, including two server replicas; separately exercise the advertised experimental single-node S3-only mode and keep its status explicit.
  • Verify repository creation and API reads/writes, Git clone/fetch/push, branches/tags, authorization denials, Git LFS uploads/downloads, and agreement between API and Git views. Verify that writes through one standard-mode replica can be read through the other.
  • Test AWS-specific behavior that emulators cannot establish: valid and invalid temporary credentials, session-token handling/refresh, denied IAM permissions, expected bucket owner, valid/tampered presigned URLs, and the conditional-write semantics used by S3-only storage.
  • Exercise concurrent writes, cold-cache restart, interrupted push/recovery, and the existing S3-only qualification and lease/restart drills on real S3. Verify acknowledged repository data remains readable and report any failed or skipped case explicitly. Link remaining S3-only promotion criteria to the existing tracker.
  • If Kubernetes/EKS is part of the launch support claim, add a focused deployment smoke covering workload identity, ingress/TLS, pod replacement, and rollout behavior. Otherwise record EKS as a follow-up rather than a prerequisite for proving S3 compatibility.
  • Publish the evidence and supported deployment limits, resolve release-blocking failures, and verify resource teardown. Close this launch blocker only when the release candidate has the required evidence.

Scope

Keep emulator CI coverage. Real AWS testing supplements it. This issue tracks readiness; it does not authorize provisioning resources, incurring cloud spend, changing repository visibility, or publishing a release.

Langage dominant
Go
Étoiles
0
Forks
0
Merge moyen
6 h 16 min
PR mergées (30 j)
243

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de coder/openstorage

Toutes les issues de coder/openstorage

Issues similaires

Plus d'issues Go

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.