Files
devops-lib-gcp/docs/infrastructure.md
T
2026-08-26 02:02:24 +05:30

68 lines
2.8 KiB
Markdown

# Infrastructure
> Storage and registry infrastructure used by the devops-lib pipeline per environment. External service dependencies live in [downstreams.md](downstreams.md).
Note: `devops-lib` is a Jenkins Shared Library — it does not own databases, caches, or message queues. The infrastructure listed here is used transiently during pipeline execution (artifact storage, container registry, Docker daemon).
## Artifact storage
Built JARs and other build outputs are stored in object storage before being referenced at deploy time.
| Type | Environment | Bucket / Path |
|------|-------------|--------------|
| GCS | `prd` / `int` | `gcs-infr-dvps-meesho-artifacts-prd` / `gcs-infr-dvps-meesho-artifacts-int` |
| GCS | `stg` | `gcs-infr-dvps-meesho-artifacts-stg` |
| GCS | `ftr` | `gcs-infr-dvps-meesho-artifacts-ftr` |
| S3 (AWS prd) | `prd` / `int` | `meesho-prod-artifacts` (ap-southeast-1, account `847438129436`) |
| S3 (AWS dev) | `stg` / `ftr` | `meesho-stg-artifacts` (ap-south-1, account `766380763301`) |
Set as `env.objBucket` by `constructParam.run()`.
## Container registry
Docker images are built and pushed here by all build stages.
| Type | Registry URL | Used for |
|------|-------------|---------|
| GAR (GCP) | `asia-southeast1-docker.pkg.dev/meesho-devops-admin-0622` | All GCP builds — push target |
| GAR admin repo | `asia-southeast1-docker.pkg.dev/meesho-devops-admin-0622/admin` | Build-time base images |
| ECR (AWS prd) | `847438129436.dkr.ecr.ap-southeast-1.amazonaws.com` | AWS prd / int |
| ECR (AWS dev) | `766380763301.dkr.ecr.ap-south-1.amazonaws.com` | AWS stg / ftr |
Set as `env.registry` / `env.buildRegistry` by `constructParam.run()`.
## Docker daemon (dind)
Build stages connect to a remote Docker daemon rather than a local socket. The host is injected as `env.DOCKER_HOST`.
| Environment | Docker host |
|-------------|------------|
| `prd` | `dind-prd-svc` |
| `int` | `dind-int-svc` |
| `stg` / `ftr` | `dind-dev-new-svc.jenkins-new.svc.cluster.local` |
## Jenkins agent pods (GCP)
GCP builds run in Kubernetes pods defined in `resources/org/meesho/`. Pod specs are referenced by environment:
| Environment | Pod spec file |
|-------------|--------------|
| `prd` | `resources/org/meesho/prd-pod.yaml` |
| `int` | `resources/org/meesho/int-pod.yaml` |
| `stg` | `resources/org/meesho/stg-pod.yaml` |
| `ftr` | `resources/org/meesho/ftr-pod.yaml` |
The `container('devops-tools')` container inside these pods runs all pipeline stages.
## GCP projects
| Environment | GCP project |
|-------------|------------|
| `prd` | `meesho-{bu}-prd-0622` |
| `int` | `meesho-shared-int-0525` |
| `stg` / `ftr` | `meesho-{bu}-dev-0622` |
Set as `env.GCPProject` by `constructParam.run()`.
<!-- meesho-init: generated-at=2026-05-07T08:39:42Z base-sha=805350dfbd5b354663e8e2a90bfc219c4c267e00 -->