From efe99af233fe6446838dba9539cf704275594712 Mon Sep 17 00:00:00 2001 From: DH V2 Deploy Bot Date: Sun, 13 Sep 2026 17:17:53 -0300 Subject: [PATCH] =?UTF-8?q?deploy-status:=20success=20=C2=B7=20phase=20com?= =?UTF-8?q?plete?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- deploy.log | 500 +++++++++++++++++++++++++++++++++++++++++++++++++++++ status.txt | 12 ++ 2 files changed, 512 insertions(+) create mode 100644 deploy.log create mode 100644 status.txt diff --git a/deploy.log b/deploy.log new file mode 100644 index 0000000..ef19b43 --- /dev/null +++ b/deploy.log @@ -0,0 +1,500 @@ +✔ F7 la consulta auxiliar de merge nunca bloquea la carga de Actividad (0.155187ms) +✔ field briefing convierte el timestamptz de pg a YYYY-MM-DD antes del cast SQL (2.298418ms) +✔ F2.3 mantiene los Hallazgos de campo bajo ejecución móvil y permisos explícitos (1.442853ms) +✔ F2.3 exige descripción y título cuando el inspector usa OTROS (2.619419ms) +✔ F2.3 vuelve a validar contexto, selección y GPS+foto en servidor antes del Hallazgo (0.350435ms) +✔ F2.3 resuelve exactamente el Acta DRAFT actual y no vuelve a la regla de un Acta por inspección (0.167475ms) +✔ F2.3 reutiliza catálogo contextual y creación canónica, conserva OTROS y permite varios Hallazgos (2.260832ms) +✔ F2.1 mantiene Inventario de campo bajo política móvil y permisos explícitos (1.321668ms) +✔ F2.1 exige GPS del dispositivo al crear Inventario en campo (6.178421ms) +✔ F2.1 exige GPS del dispositivo en cada fotografía de campo (1.062231ms) +✔ F2.1 deriva Área y Operadora desde la Inspección y usa el asset anidado del alta provisional (0.335641ms) +✔ F2.1 bloquea hallazgos sobre altas de campo hasta tener GPS y foto (0.270944ms) +✔ D5.2 versions every catalog item and keeps versions append-only (8.505244ms) +✔ D5.2 catalog administration captures audit and immutable revisions (2.800655ms) +✔ D3 catalog contains 19 categories and 170 unique finding templates (1.672373ms) +✔ D3 catalog records the repaired shifted pump row (0.310674ms) +✔ inspection act endpoints separate reading, creation, editing and cancellation (1.311032ms) +✔ inspection act DTO accepts urgency, content and selected visit assets (5.707543ms) +✔ inspection act DTO rejects duplicate assets (1.306154ms) +✔ cancellation requires a meaningful reason (0.491049ms) +✔ multi-act guard allows a new act when the inspection has no draft act (0.851821ms) +✔ multi-act guard blocks only a second draft act for the same inspection (0.585934ms) +✔ F4 closing endpoints separate read, lock, sign and seal permissions without reopen (1.215745ms) +✔ D5 canonical JSON sorts object keys recursively and preserves array order (10.109673ms) +✔ D5 canonical JSON serializes dates as ISO-8601 (2.550252ms) +✔ D5 present responsible requires identity and position (6.699178ms) +✔ D5 absent responsible and company outcome require a detailed reason (1.120411ms) +✔ D5 signature DTO transforms multipart consent and coordinates (1.262157ms) +✔ D5 signature accepts only PNG content and MIME (1.761849ms) +✔ D5 signature rejects empty and oversized files (0.643152ms) +✔ D5 migration protects signatures, frozen findings and sealed acts (6.602018ms) +✔ D4 evidence endpoints separate reading and creation (1.308468ms) +✔ D4 communications endpoints separate reading and creation (0.11173ms) +✔ D4 evidence DTO transforms multipart coordinates and accepts a communication link (5.62635ms) +✔ D4 communication DTO accepts a company response and normalizes text (2.143361ms) +✔ D4 communication DTO rejects invalid email and date (0.948387ms) +✔ D4 evidence detects content by magic bytes (0.838469ms) +✔ D4 evidence rejects executable text, mismatches and oversize files (0.644304ms) +✔ D4 migration makes evidence and communications append-only for runtime (8.341234ms) +✔ F4 finding endpoints separate catalog, content and closure while mutable follow-up is retired (1.458477ms) +✔ finding DTO accepts catalog findings with a correction deadline (4.68363ms) +✔ custom findings require a title and reject malformed dates (1.058245ms) +✔ follow-up DTO keeps company response and verification planning as separate dates (0.361933ms) +✔ global finding filters accept the two operational work queues (0.377737ms) +✔ finding close DTO requires a meaningful conclusion (0.557922ms) +✔ catalog category DTO normalizes the immutable code (0.388493ms) +✔ catalog item DTO accepts nullable reference fields and normalizes its code (0.645555ms) +✔ catalog item update rejects an empty title and invalid source number (0.595119ms) +✔ D5.3.13 separates company response due dates from verification due dates (0.944442ms) +✔ D5.3.13/F4 exposes the global worklist and controlled finding closure (0.127976ms) +✔ D5.3.15 separates report consultation from report generation (1.046317ms) +✔ D5.3.16 separates queue consultation from office verification planning (1.840721ms) +✔ D5.3.17 reserves verification result capture for field execution (0.192123ms) +✔ F4 inspection endpoints separate reading, planning, assignment and execution (1.624801ms) +✔ visit DTO accepts only the minimum planning data required for quick creation (4.040007ms) +✔ visit update DTO keeps Area, Yacimiento and Operadora immutable after creation (1.596407ms) +✔ asset and team DTOs reject duplicate references (2.362066ms) +✔ status DTO accepts controlled states and rejects unknown transitions at input (0.296684ms) +✔ D5.1/F4 applies the mobile-inspector policy to every field operation (10.150767ms) +✔ D5.1 leaves company follow-up outside the field-operation gate (5.503011ms) +✔ D5.1 migration grants operational permissions only to inspector (3.451178ms) +✔ operational inspection writes reject web cookie sessions (1.42772ms) +✔ operational inspection writes reject non-inspector bearer users (0.147205ms) +✔ operational inspection writes accept inspector bearer users (0.175278ms) +✔ PasswordService hashes with Argon2id and verifies safely (565.855684ms) +✔ PasswordService performs dummy verification for unknown users (191.786158ms) +✔ PermissionsGuard leaves handlers without requirements available (0.980127ms) +✔ PermissionsGuard gives explicit public metadata priority (0.119293ms) +✔ PermissionsGuard returns 401 when required permissions have no principal (0.501006ms) +✔ PermissionsGuard returns 403 when any required permission is missing (0.262621ms) +✔ PermissionsGuard requires changing a temporary password first (0.179775ms) +✔ PermissionsGuard authorizes when class and handler permissions are granted (0.101755ms) +✔ PermissionsGuard applies class requirements to every handler (0.077709ms) +✔ D5.3.15/F4 exposes global acts and report emission after an Act is SEALED (1.598119ms) +✔ D5.3.15/F4 freezes the immutable sealed Act snapshot as the INF source (1.442723ms) +✔ D5.3.15 frozen source guarantees survive while F4 expands report workflow states (0.173985ms) +✔ D5.3.16/F4 builds the verification queue from the next control date and unresolved latest result (1.983908ms) +✔ D5.3.16 creates one draft verification visit for one company and area (0.141976ms) +✔ D5.3.16 prevents an open finding from being scheduled into two active verification visits (0.109717ms) +✔ D5.3.16 exposes linked findings in the created visit (0.082054ms) +✔ D5.3.16 migration adds traceable verification links and an office planning permission (0.077879ms) +✔ D5.3.17 records one controlled field result for a linked verification finding (0.971113ms) +✔ D5.3.17 preserves the original target and only reschedules when explicitly requested (0.26889ms) +✔ D5.3.17 links verification photos to the verification visit (0.204992ms) +✔ F4 requires every linked verification result before closing the inspection, not before locking one act (0.120525ms) +✔ D5.3.17 moves verified conforming findings into an office ready-to-close queue (0.08504ms) +✔ D5.3.17 migration adds verification outcome and verification evidence linkage (0.120555ms) +✔ D5.3.18.3 separates finding closure from general follow-up permission (4.574262ms) +✔ D5.3.18.3 keeps the first company response immutable and requires later presentations in history (0.166153ms) +✔ D5.3.18 exposes one server-side office workflow for the finding dossier (0.736304ms) +✔ D5.3.18 preserves administrative and operational dates as independent fields (0.184391ms) +✔ D5.3.19 adds one searchable common name without replacing technical identity (0.914657ms) +✔ D5.3.19 stores the administrative response rule and its immutable base (0.247238ms) +✔ D5.3.19 exposes company area inspector and date filters across operational lists (0.233136ms) +✔ F1.1 supersedes the historical single-act rule while retaining the D5.3.19 filters (0.099681ms) +✔ D5.3.19 does not introduce the contextual finding catalog before its office definition (0.121346ms) +✔ D5.3.20/F4 freezes one report from each sealed act and generates its Word artifact (0.737697ms) +✔ D5.3.20 stores an integrity-checked Word artifact without changing the frozen source snapshot (0.270022ms) +✔ D5.3.20 builds OOXML Word from the frozen act snapshot without external document dependencies (0.283462ms) +✔ F4 keeps report generation act-scoped while findings and inspection lifecycle remain independent (0.224914ms) +✔ D5.3.21/F4 stores configurable recipients without hardcoding addresses and retires Director delivery (1.214773ms) +✔ D5.3.21 creates an immutable act PDF and separates its delivery from the editable INF Word (0.141727ms) +✔ D5.3.21 keeps an auditable retryable outbox with explicit waiting states (0.096608ms) +✔ F4 SMTP can be administered in database while retaining environment fallback (0.134976ms) +✔ D5.3.21/F4 delivery stays act-scoped after multiple acts per inspection (0.190941ms) +✔ D5.3.22 revision ledger is retained as historical INF versioning (1.149195ms) +✔ F4 explicitly retires Director review approval and final-signature state (0.350324ms) +✔ F4 removes active Director endpoints but preserves historical signature evidence (0.552865ms) +✔ F4 replaces Director approval with editable INF then immutable GEDO IF officialization (0.179955ms) +✔ F4 delivery has no Director recipient while preserving company office and inspector copies (0.213815ms) +✔ F4 Director-retirement rollback reconstructs schema and RBAC contract without inventing deleted data (0.201427ms) +✔ F4 document workflow changes do not reopen acts or mutate finding history (0.141005ms) +✔ D5.3.23 records field discoveries as auditable provisional inventory records (1.124557ms) +✔ D5.3.23 only lets a mobile assigned inspector create during an active visit (0.338287ms) +✔ F1.1 preserves D5.3.23 field discovery while linking only to the current draft act (0.26287ms) +✔ D5.3.23 office review can approve match or reject without deleting historical objects (0.160575ms) +✔ D5.3.23 preserves immutable inspection history when matching an existing inventory object (0.12449ms) +✔ D5.3.24 stores parent area and operator as explicit non-overlapping temporal context (1.064545ms) +✔ D5.3.24 reconstructs previous context from immutable asset versions during migration (0.126704ms) +✔ D5.3.24 separates ordinary editing from an audited context transfer (0.132182ms) +✔ D5.3.24 closes the previous interval and appends the replacement without deleting history (0.280137ms) +✔ D5.3.24 temporal reconstruction resolves context by effective validity at the requested instant (0.288701ms) +✔ D5.3.25 creates an append-only verification event ledger and reconstructs prior history (0.784878ms) +✔ D5.3.25 records every office control-date change without replacing historical events (0.151331ms) +✔ D5.3.25 makes one field result immutable and appends its result event (0.102796ms) +✔ D5.3.25 preserves successive verification visits as separate historical attempts (0.201297ms) +✔ D5.3.25 exposes the complete verification history through finding detail and a dedicated endpoint (0.148135ms) +✔ D5.3.3 separates operational state from data quality and adds registry structures (6.264242ms) +✔ D5.3.3 keeps physical hierarchy separate from legal and organizational relations (1.822151ms) +✔ D5.3.3 only accepts OPERATOR relations for exclusive asset assignment (2.879705ms) +✔ D5.4.1 exports controller-visible selection views so Nest declaration build can name them (1.619342ms) +✔ D5.4 models type applicability and concrete Inventory exceptions separately (0.794242ms) +✔ D5.4 exposes only applicable catalog items and enforces the same rule on field creation (0.149358ms) +✔ D5.4 stores suggested and actual severity independently on the 1 to 10 scale (0.118411ms) +✔ D5.4 turns OTHER into an office proposal without rewriting the original finding (0.106743ms) +✔ D5.4 keeps contextual catalog administration in office permissions and audited routes (0.090097ms) +✔ D5.5 stores explicit Area and Operator context plus append-only checklist generations (1.177938ms) +✔ D5.5 exposes Area then active OPERATOR choices and a server-generated planning checklist (0.384827ms) +✔ D5.5 classifies antecedents overdue items and next controls while adding actionable assets automatically (0.302942ms) +✔ D5.5 treats manual additions as preventive and requires an auditable reason for exclusions (0.297303ms) +✔ D5.5/F4 keeps verification visits inside the Area Operator contract and start remains APK-only (0.194937ms) +✔ D5.5/F4 requires a current checklist before planning or start and keeps start under mobile policy (0.23548ms) +✔ D5.6.1 exposes controlled administrative password reset with the existing user-update permission (1.353205ms) +✔ D5.6.1 resets lockout revokes sessions and audits without persisting the password value (0.52357ms) +✔ D5.6.4/F4 generates inspection codes server-side with an annual transactional sequence (5.658337ms) +✔ D5.6.4/F4 creates one inspection from Area Operator, start and lead inspector without legacy title or end date (0.56361ms) +✔ D5.6.4 assigns the lead inspector and generates the checklist in the same creation transaction (1.366727ms) +✔ D5.6.4/F4 uses the same inspection numbering and start-only planning for verification visits (2.572837ms) +✔ D5.6 immutable act closure survives F4 as LOCKED then SEALED (1.395952ms) +✔ D5.6 preserves findings responses evidence and verification history as non destructive follow-up (0.413392ms) +✔ D5.6 keeps Inventory temporal context and contextual finding applicability independent and historical (0.345519ms) +✔ F4 preserves reviewed web planning and APK-only inspection execution (0.227187ms) +✔ D5.6 report generation remains attached to sealing each act (0.173205ms) +✔ F4 replaces Director approval with editable INF then immutable GEDO IF officialization (0.236301ms) +✔ F4 keeps auditable delivery, removes Director recipient and makes SMTP administrable (0.156459ms) +✔ D5.6 remains a historical closure baseline while Phase F introduces explicit migrations (0.369965ms) +✔ F1.1/F4 allows many acts per inspection while keeping only one draft at a time (1.824535ms) +✔ F1.1/F4 preserves exactly one frozen report per act instead of per inspection (0.264212ms) +✔ F4 seals one act without closing its parent inspection (0.351056ms) +✔ F4 closes an inspection only after every non-cancelled act is sealed (0.18284ms) +✔ F4 requires exactly one terminal company outcome before an act can be sealed (0.20301ms) +✔ F1.1/F4 keeps field-created Inventory linked only to the current draft act (0.89762ms) +✔ F1.2 stores one append-only administrative deadline ledger per Act (0.96939ms) +✔ F1.2 preserves ambiguous historical finding deadlines instead of collapsing them (0.121316ms) +✔ F1.2 stores company responses and protected PDF metadata at Act level (0.099803ms) +✔ F1.2 deadline and company response DTOs reject invalid office input (4.933511ms) +✔ F1.2 derives administrative queues from Acts instead of replacing finding history (0.144571ms) +✔ F1.3 agrupa pendientes de campo por Acta y Hallazgo (1.41489ms) +✔ F1.3 expone el briefing para una inspección planificada (0.234288ms) +✔ F1.3 no usa el plazo del Hallazgo como plazo administrativo (0.143109ms) +✔ F4 removes the Survey execution controller from the active API (0.781103ms) +✔ F4 removes Survey execution and review permissions from active authorization (0.230411ms) +✔ F4 removes Survey execution DTOs together with the retired endpoint surface (3.221088ms) +✔ F4 drops Survey report tables without CASCADE so unexpected dependencies stop migration (1.990579ms) +✔ F4 rollback can reconstruct the historical Survey report integrity rules (0.320209ms) +✔ F4 removes Survey planning controllers from the active API (3.827141ms) +✔ F4 removes Survey planning permissions and their role bindings (0.291906ms) +✔ F4 rollback retains the former role-permission map only as a reversible migration path (0.151461ms) +✔ F4 removes Survey planning DTOs from the active code surface (0.643502ms) +✔ F4 drops Survey planning tables after removing their permissions (1.580212ms) +✔ F4 rollback can reconstruct historical Survey planning dates and asset references (0.666978ms) +✔ TokenService issues and verifies access tokens (7.823191ms) +✔ TokenService rotates opaque refresh credentials without storing plaintext (1.380768ms) +ℹ tests 434 +ℹ suites 0 +ℹ pass 434 +ℹ fail 0 +ℹ cancelled 0 +ℹ skipped 0 +ℹ todo 0 +ℹ duration_ms 64565.571456 + +========== BUILD WEB CANDIDATA ========== +#0 building with "default" instance using docker driver + +#1 [internal] load build definition from Dockerfile +#1 transferring dockerfile: 334B 0.1s done +#1 DONE 0.2s + +#2 [internal] load metadata for docker.io/library/node:24-alpine +#2 DONE 0.5s + +#3 [internal] load metadata for docker.io/library/nginx:alpine +#3 DONE 0.7s + +#4 [internal] load .dockerignore +#4 transferring context: 75B done +#4 DONE 0.0s + +#5 [stage-1 1/3] FROM docker.io/library/nginx:alpine@sha256:72ba65eb42c10344912a84ff42408db7d34f2feb642204570ab8fc5ffd29f1d3 +#5 resolve docker.io/library/nginx:alpine@sha256:72ba65eb42c10344912a84ff42408db7d34f2feb642204570ab8fc5ffd29f1d3 0.0s done +#5 DONE 0.0s + +#6 [builder 1/7] FROM docker.io/library/node:24-alpine@sha256:50c8e8ca1d27439048670df5883f32d57cf81cff6233222c893fd0d9884cbd81 +#6 resolve docker.io/library/node:24-alpine@sha256:50c8e8ca1d27439048670df5883f32d57cf81cff6233222c893fd0d9884cbd81 0.0s done +#6 DONE 0.0s + +#7 [internal] load build context +#7 transferring context: 1.22MB 0.0s done +#7 DONE 0.1s + +#8 [builder 7/7] RUN npm run build +#8 CACHED + +#9 [stage-1 2/3] COPY nginx/default.conf /etc/nginx/conf.d/default.conf +#9 CACHED + +#10 [builder 5/7] COPY tsconfig*.json vite.config.ts index.html ./ +#10 CACHED + +#11 [builder 4/7] RUN npm ci +#11 CACHED + +#12 [builder 6/7] COPY src ./src +#12 CACHED + +#13 [builder 2/7] WORKDIR /app +#13 CACHED + +#14 [builder 3/7] COPY package*.json ./ +#14 CACHED + +#15 [stage-1 3/3] COPY --from=builder /app/dist /usr/share/nginx/html +#15 CACHED + +#16 exporting to image +#16 exporting layers done +#16 exporting manifest sha256:02fbaf4bba1c432aafd59fdb00fd76852ec03451504fb886a8ca525e29ada6e4 done +#16 exporting config sha256:800648f5bda63a90cd2e563eed28afeaf2fbd1d64e3954ba288096cf2f8a9595 done +#16 exporting attestation manifest sha256:20e6419bb942ddd45de1cfe2ffe74453833f16fe5a25a6584f6397dee3a6fe65 0.0s done +#16 exporting manifest list sha256:0bddf3465b2fca4ee3b68d3aa384eaf3f880f9ae31dbef3aa1be641db7962967 +#16 exporting manifest list sha256:0bddf3465b2fca4ee3b68d3aa384eaf3f880f9ae31dbef3aa1be641db7962967 0.0s done +#16 naming to docker.io/library/dhv2-web:gitea-20260913_171615 done +#16 unpacking to docker.io/library/dhv2-web:gitea-20260913_171615 0.1s done +#16 DONE 0.1s + +========== BACKUP PRE ========== +database-before.dump: OK +source-before.tar.gz: OK +.env: OK +previous.sha: OK +target.sha: OK +docker-before.txt: OK + +========== FAST-FORWARD ========== +ddf3b15 deploy: serialize Gitea production deployments +Updating 8564f19..ddf3b15 +Fast-forward + scripts/deploy-gitea.sh | 8 ++++++++ + 1 file changed, 8 insertions(+) + +========== BUILD PRODUCCIÓN ========== + Image dhv2-migrate Building + Image dhv2-api Building + Image dhv2-web Building +#1 [internal] load local bake definitions +#1 reading from stdin 1.35kB done +#1 DONE 0.0s + +#2 [migrate internal] load build definition from Dockerfile +#2 transferring dockerfile: 595B done +#2 DONE 0.0s + +#3 [web internal] load build definition from Dockerfile +#3 transferring dockerfile: 407B done +#3 DONE 0.0s + +#4 [web internal] load metadata for docker.io/library/node:24-alpine +#4 DONE 0.2s + +#5 [web internal] load metadata for docker.io/library/nginx:alpine +#5 DONE 0.2s + +#6 [web internal] load .dockerignore +#6 transferring context: 148B done +#6 DONE 0.0s + +#7 [api internal] load .dockerignore +#7 transferring context: 147B 0.0s done +#7 DONE 0.0s + +#8 [web internal] load build context +#8 DONE 0.0s + +#9 [migrate internal] load build context +#9 DONE 0.0s + +#10 [web stage-1 1/3] FROM docker.io/library/nginx:alpine@sha256:72ba65eb42c10344912a84ff42408db7d34f2feb642204570ab8fc5ffd29f1d3 +#10 resolve docker.io/library/nginx:alpine@sha256:72ba65eb42c10344912a84ff42408db7d34f2feb642204570ab8fc5ffd29f1d3 0.0s done +#10 DONE 0.1s + +#11 [api builder 1/7] FROM docker.io/library/node:24-alpine@sha256:50c8e8ca1d27439048670df5883f32d57cf81cff6233222c893fd0d9884cbd81 +#11 resolve docker.io/library/node:24-alpine@sha256:50c8e8ca1d27439048670df5883f32d57cf81cff6233222c893fd0d9884cbd81 +#11 resolve docker.io/library/node:24-alpine@sha256:50c8e8ca1d27439048670df5883f32d57cf81cff6233222c893fd0d9884cbd81 0.1s done +#11 DONE 0.1s + +#8 [web internal] load build context +#8 transferring context: 1.23MB 0.1s done +#8 DONE 0.1s + +#9 [migrate internal] load build context +#9 transferring context: 2.61MB 0.1s done +#9 DONE 0.1s + +#12 [web builder 4/7] RUN npm ci +#12 CACHED + +#13 [web builder 3/7] COPY package*.json ./ +#13 CACHED + +#14 [web builder 7/7] RUN npm run build +#14 CACHED + +#15 [web stage-1 2/3] COPY nginx/default.conf /etc/nginx/conf.d/default.conf +#15 CACHED + +#16 [web builder 5/7] COPY tsconfig*.json vite.config.ts index.html ./ +#16 CACHED + +#17 [web builder 6/7] COPY src ./src +#17 CACHED + +#18 [web stage-1 3/3] COPY --from=builder /app/dist /usr/share/nginx/html +#18 CACHED + +#19 [migrate builder 3/7] COPY package*.json ./ +#19 CACHED + +#20 [migrate builder 6/7] COPY src ./src +#20 CACHED + +#21 [migrate builder 4/7] RUN npm ci +#21 CACHED + +#22 [migrate runner 3/7] WORKDIR /app +#22 CACHED + +#23 [migrate runner 2/7] RUN apk add --no-cache unzip +#23 CACHED + +#24 [migrate builder 7/7] RUN npm run build +#24 CACHED + +#25 [migrate builder 5/7] COPY nest-cli.json tsconfig.json ./ +#25 CACHED + +#26 [migrate runner 4/7] COPY package*.json ./ +#26 CACHED + +#27 [migrate runner 6/7] COPY --from=builder /app/dist ./dist +#27 CACHED + +#28 [migrate runner 5/7] RUN npm ci --omit=dev && npm cache clean --force +#28 CACHED + +#29 [migrate builder 2/7] WORKDIR /app +#29 CACHED + +#30 [api runner 7/7] RUN mkdir -p /app/storage/asset-media/imports && chown -R node:node /app/storage +#30 CACHED + +#31 [migrate] exporting to image +#31 exporting layers 0.0s done +#31 exporting manifest sha256:dda9ac2cc47bc829b260cba0a3aa922b97c0844f8ac4016b2ebfdfe16f3e09c5 +#31 exporting manifest sha256:dda9ac2cc47bc829b260cba0a3aa922b97c0844f8ac4016b2ebfdfe16f3e09c5 done +#31 exporting config sha256:b29ca23c1122602fd3c54f5ae8ed8524ba695ac9fcb570b66a32a949c81112ef 0.0s done +#31 exporting attestation manifest sha256:4edaf59ed41ff74e86bfc90586300e2794cdfd54ab9d7e659f189591b7802078 +#31 ... + +#32 [web] exporting to image +#32 exporting layers done +#32 exporting manifest sha256:0bf39a12fa9f73ee380dc09b3dc6e073f927cd32b3aa01bdf04c8aca928ce384 done +#32 exporting config sha256:058dfaacab6b4ba85140626e9b12d30058172ddcd1cf6bd0afcdd2ca4deff108 done +#32 exporting attestation manifest sha256:808e95e799a1d38651c7f25e71cf3cab1ae3b6c49c2778f8acab8375652150bf 0.1s done +#32 exporting manifest list sha256:3bddb96a7b79ec3f76212cc4e33a0a98c6678e14ee257be98ca0da9fe7f522e4 0.0s done +#32 naming to docker.io/library/dhv2-web:latest 0.0s done +#32 unpacking to docker.io/library/dhv2-web:latest 0.0s done +#32 DONE 0.2s + +#33 [api] exporting to image +#33 exporting layers 0.0s done +#33 exporting manifest sha256:48892ee5e869c415e40817cf40cee98bf723d367b6c1684c32f0d145cff20912 done +#33 exporting config sha256:20abde41b55a5c9256479d9cd219a899254dc8a4862776f0d959e004ec175878 0.0s done +#33 exporting attestation manifest sha256:f746806c0aa2c8d2c3b96f4b187a07e8a598d053bbf017d89ff75e76899ae7d3 0.1s done +#33 exporting manifest list sha256:52bb6d4e802cc9e6a3e934f48c626eca66b9b1159d9ee37a5eb472f27cb70b0d 0.0s done +#33 naming to docker.io/library/dhv2-api:latest done +#33 unpacking to docker.io/library/dhv2-api:latest 0.0s done +#33 DONE 0.2s + +#31 [migrate] exporting to image +#31 exporting attestation manifest sha256:4edaf59ed41ff74e86bfc90586300e2794cdfd54ab9d7e659f189591b7802078 0.1s done +#31 exporting manifest list sha256:0daf28c61c1c730474b4bdeb1d2babc03a88bcccf0cf38e3231484ee8010a0de 0.0s done +#31 naming to docker.io/library/dhv2-migrate:latest done +#31 unpacking to docker.io/library/dhv2-migrate:latest 0.0s done +#31 DONE 0.2s + +#34 [web] resolving provenance for metadata file +#34 DONE 0.0s + +#35 [api] resolving provenance for metadata file +#35 DONE 0.0s + +#36 [migrate] resolving provenance for metadata file +#36 DONE 0.0s + Image dhv2-migrate Built + Image dhv2-web Built + Image dhv2-api Built + +========== MIGRACIONES ========== + Container dhv2-db Running + Container dhv2-db Waiting + Container dhv2-db Healthy + Container dhv2-migrate-run-160c325f4ae6 Creating + Container dhv2-migrate-run-160c325f4ae6 Created + +> dhv2-api@0.29.0-1 migration:run +> node dist/database/migration-cli.js run + +Applied migrations: 0 +npm notice +npm notice New major version of npm available! 11.19.0 -> 12.0.2 +npm notice Changelog: https://github.com/npm/cli/releases/tag/v12.0.2 +npm notice To update run: npm install -g npm@12.0.2 +npm notice + Container dhv2-db Running + Container dhv2-db Waiting + Container dhv2-db Healthy + Container dhv2-migrate-run-75d739483096 Creating + Container dhv2-migrate-run-75d739483096 Created + +> dhv2-api@0.29.0-1 migration:show +> node dist/database/migration-cli.js show + +Pending migrations: no +npm notice +npm notice New major version of npm available! 11.19.0 -> 12.0.2 +npm notice Changelog: https://github.com/npm/cli/releases/tag/v12.0.2 +npm notice To update run: npm install -g npm@12.0.2 +npm notice + +========== RECREATE API + WEB ========== + Container dhv2-api Recreate + Container dhv2-api Recreated + Container dhv2-web Recreate + Container dhv2-web Recreated + Container dhv2-api Starting + Container dhv2-api Started + Container dhv2-web Starting + Container dhv2-web Started + +========== HEALTH ========== +{"status":"ok","service":"dhv2-api","api":"v3","version":"0.29.0-1","phase":"F6.1","database":"ok","time":"2026-09-13T20:17:51.755Z","latencyMs":5} + +========== VERIFICACIÓN FINAL ========== +NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS +dhv2-api dhv2-api "docker-entrypoint.s…" api 3 seconds ago Up 2 seconds 127.0.0.1:3101->3000/tcp +dhv2-db postgis/postgis:16-3.5 "docker-entrypoint.s…" db 4 weeks ago Up 4 weeks (healthy) 5432/tcp +dhv2-web dhv2-web "/docker-entrypoint.…" web 3 seconds ago Up 2 seconds 127.0.0.1:8182->80/tcp +Servicios críticos: OK +database-before.dump: OK +source-before.tar.gz: OK +.env: OK +previous.sha: OK +target.sha: OK +docker-before.txt: OK +database-after.dump: OK +deployed.sha: OK +deployed-versions.txt: OK +health.json: OK +migrations.txt: OK +docker-after.txt: OK + +============================================================ + DH V2 · DEPLOY OK +============================================================ +Commit: ddf3b158e7e8fcf7848745e020be91a7ffd613ca +API: 0.29.0-1 +WEB: 0.23.0-1 +Backup: /root/DH_V2_BACKUPS/GITEA_DEPLOY_20260913_171615 +============================================================ diff --git a/status.txt b/status.txt new file mode 100644 index 0000000..05e0c85 --- /dev/null +++ b/status.txt @@ -0,0 +1,12 @@ +status=success +exit_code=0 +phase=complete +timestamp=2026-09-13T17:17:53-03:00 +deploy_ref=deploy +previous_sha=8564f1933c41ab00246d9d741c192e50ab813aab +target_sha=ddf3b158e7e8fcf7848745e020be91a7ffd613ca +current_sha=ddf3b158e7e8fcf7848745e020be91a7ffd613ca +api_version=0.29.0-1 +web_version=0.23.0-1 +app_touched=1 +backup=/root/DH_V2_BACKUPS/GITEA_DEPLOY_20260913_171615