Skip to content

Temporal: add new script - #2529

Open
renanbastos93 wants to merge 3 commits into
community-scripts:mainfrom
renanbastos93:feat/temporal
Open

renanbastos93 wants to merge 3 commits into
community-scripts:mainfrom
renanbastos93:feat/temporal

Conversation

@renanbastos93

@renanbastos93 renanbastos93 commented Nov 11, 2026 •

Copy link
Copy Markdown

✍️ Description

Temporal is a durable execution platform; this adds an LXC that runs Temporal Server, the Temporal UI and the temporal CLI from the official release tarballs, on a local PostgreSQL 17. It deviates from the standard pattern in two places: three upstream repositories are deployed and updated independently (temporalio/temporal, temporalio/ui-server, temporalio/cli), and the update runs temporal-sql-tool update-schema before the server starts again. Not tested on a Proxmox VE host yet: only bash -n on both scripts and jq empty on the JSON, so the draft stays open until a live run is done. It replaces community-scripts/ProxmoxVE#18615, which was opened against the wrong repository. Models: ChatGPT for the first version, Claude Code (Claude Fable 5.2, reasoning level not recorded) for the rewrite against AGENTS.md.

🔗 Related PR / Issue

Link: community-scripts/ProxmoxVE#18615

✅ Prerequisites (X in brackets)

  • Self-review completed – Code follows project standards.
  • Tested thoroughly – Changes work as expected.
  • No breaking changes – Existing functionality remains intact.
  • No security risks – No hardcoded secrets, unnecessary privilege escalations, or permission issues.

🧩 Script

Fill in for a new script. If the script has no issue yet, one is opened from these fields when the PR is merged.

Name: Temporal

Tool: Open-source durable execution platform. Workflows keep their state across crashes, restarts and retries, and the server handles timers, signals and schedules.

🗂️ Category (X in brackets)

  • CT – LXC container (ct/ + install/)
  • VM – Virtual machine (vm/)
  • Addon – tools/addon/
  • PVE Tool – tools/pve/
  • Other – path given in the Description

🖥️ Platform – tested on (X in brackets)

  • Proxmox VE – Created on a Proxmox VE host and the app works.
  • Incus – Created on an Incus host and the app works.

Application containers run on both; tick what you actually tested. VMs and host tools are Proxmox only.

🏗️ Architecture (X in brackets)

  • arm64 supported - Tested and supported on arm64.
  • arm64 not tested - Assumed to work on arm64, but testing has not been done.
  • arm64 not supported - Confirmed upstream dependencies or binaries do not support arm64.

amd64 support is assumed.


🛠️ Type of Change (X in brackets)

  • 🐞 Bug fix – Resolves an issue without breaking functionality.
  • ✨ New feature – Adds new, non-breaking functionality.
  • 💥 Breaking change – Alters existing functionality in a way that may require updates.
  • 🆕 New script – A fully functional and tested script or script set.
  • 🌍 Website update – Changes to website-related JSON files or metadata.
  • 🔧 Refactoring / Code Cleanup – Improves readability or maintainability without changing functionality.
  • 📝 Documentation update – Changes to README, AppName.md, CONTRIBUTING.md, or other docs.

🔍 Code & Security Review (X in brackets)

  • Follows CODE-AUDIT.md & CONTRIBUTING.md guidelines
  • Uses correct script structure (AppName.sh, AppName-install.sh, AppName.json)
  • No hardcoded credentials
  • No Docker / Docker Compose – The application is installed bare-metal; Docker is not used.
  • No git pull – Updates use fetch_and_deploy_gh_release, fetch_and_deploy_codeberg_release, fetch_and_deploy_gl_release, or fetch_and_deploy_from_url instead of git pull.

📋 Additional Information (optional)

gRPC on 7233 and the UI on 8080 have no authentication; the JSON notes say so. The frontend HTTP API is left disabled.


📦 Application Requirements (for new scripts)

⚠️ Do not remove this section.
It is used by automated PR validation checks.
If this PR is not a new script submission, leave the checkboxes unchecked.

Required for 🆕 New script submissions.
Pull requests that do not meet these requirements may be closed without review.

  • The application is at least 6 months old
  • The application is actively maintained
  • The application has 1,000+ GitHub stars
  • Official release tarballs are published
  • I understand that not all scripts will be accepted due to various reasons and criteria by the community-scripts ORG

🌐 Source


🤖 AI Assistance (X in brackets)

If you used an AI tool (GitHub Copilot, Claude, ChatGPT, etc.) to write or generate any scripts in this PR, you must confirm compliance below.
Select exactly one option.

  • No AI used – Scripts were written without AI assistance.
  • AI was used – I confirm the scripts were built using AGENTS.md and .github/agents/pve-script-creator.agent.md as guidance, and the output has been reviewed and corrected to match those guidelines.

Please describe to which degree, if any, an LLM was used in creating this pull request.

ChatGPT drafted the first version, submitted as community-scripts/ProxmoxVE#18615. Claude Code (Claude Fable 5.2, reasoning level not recorded) rewrote the three files against AGENTS.md and the pve-script-creator agent and reviewed them. No live test has been run yet.

Temporal Server on PostgreSQL 17, the Temporal UI (temporalio/ui-server) and the temporal CLI (temporalio/cli), all from the official release tarballs. Config lives in /etc/temporal, the schema is applied with the embedded temporal-sql-tool schemas, and the default namespace is created at install. Ports: 7233 (gRPC), 7243 (HTTP API), 8080 (UI).
The temporal role gets CREATEDB through PG_DB_SCHEMA_PERMS and temporal-sql-tool creates temporal_visibility itself, the way the upstream setup does it.
@github-actions

Copy link
Copy Markdown
Contributor

Try this script

ct/temporal.sh, run in the Proxmox VE shell or on an Incus host:

COMMUNITY_SCRIPTS_URL=https://raw.githubusercontent.com/renanbastos93/DevScripts/feat/temporal \
bash -c "$(curl -fsSL https://raw.githubusercontent.com/renanbastos93/DevScripts/feat/temporal/ct/temporal.sh)"

COMMUNITY_SCRIPTS_URL is not optional for ct/. Fetching the ct/ script from a
branch does not tell the engine where that branch is — with bash -c "$(curl …)"
there is no file on disk for the scripts root to be derived from, so it would fall
back to upstream main and look for the install script there.

Against a core branch as well

Add COMMUNITY_SCRIPTS_CORE_URL=https://raw.githubusercontent.com/OWNER/core/BRANCH
to test an engine change at the same time. The two resolve independently.

Useful flags while testing

dev_mode=net logs every fetch with status and duration, so you can confirm the
branch is really being used. dev_mode=keep stops a failed build from deleting
the container along with the evidence.

Nothing in the container uses the frontend HTTP API on 7243: SDKs, the CLI and the UI all talk gRPC on 7233. The wait for cluster health now gives up after 60 seconds, so a server that does not start fails the install instead of hanging it.
@github-actions

Copy link
Copy Markdown
Contributor

Proxmox script test

@michelroegl-brunner @renanbastos93 ✅ 2/2 passed at b90e91b

Script Platform Install Update Duration Detail
ct/temporal.sh pve ✅ ➖ 4m47s http://10.99.0.171:8080 → 200; update: nothing to update
ct/temporal.sh incus ✅ ➖ 2m23s http://10.98.0.206:8080 → 200; update: nothing to update
ct/temporal.sh arm64 ✅ ➖ 1m44s http://10.98.0.81:8080 → 200; update: nothing to update

ARM64 (information only, not counted): 1/1 passed.

📸 ct/temporal.sh (pve) — http://10.99.0.171:8080: after install / after update

Screenshot of ct/temporal.sh Screenshot of ct/temporal.sh

📸 ct/temporal.sh (incus) — http://10.98.0.206:8080: after install / after update

Screenshot of ct/temporal.sh Screenshot of ct/temporal.sh

📸 ct/temporal.sh (arm64) — http://10.98.0.81:8080: after install / after update

Screenshot of ct/temporal.sh Screenshot of ct/temporal.sh

📄 ct/temporal.sh (pve) — install log (1483 lines)
… 1425 earlier lines cut, the full log is in the run artifacts
2026-11-12T10:08:23.091+0100	DEBUG	---- Executing updates for version 1.9 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T10:08:23.091+0100	DEBUG	ALTER TABLE executions_visibility ADD COLUMN _version BIGINT NOT NULL DEFAULT 0;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.094+0100	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T10:08:23.100+0100	DEBUG	Schema updated from 1.8 to 1.9	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:08:23.100+0100	DEBUG	---- Executing updates for version 1.10 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T10:08:23.100+0100	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T10:08:23.111+0100	DEBUG	Schema updated from 1.9 to 1.10	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:08:23.111+0100	DEBUG	---- Executing updates for version 1.11 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T10:08:23.111+0100	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T10:08:23.116+0100	DEBUG	Schema updated from 1.10 to 1.11	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:08:23.116+0100	DEBUG	---- Executing updates for version 1.12 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T10:08:23.116+0100	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T10:08:23.122+0100	DEBUG	Schema updated from 1.11 to 1.12	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:08:23.122+0100	DEBUG	---- Executing updates for version 1.13 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T10:08:23.122+0100	DEBUG	ALTER TABLE executions_visibility ADD COLUMN IF NOT EXISTS TemporalReportedProblems JSONB GENERATED ALWAYS AS (search_attributes->'TemporalReportedProblems') STORED, ADD COLUMN IF NOT EXISTS TemporalBool01 BOOLEAN GENERATED ALWAYS AS ((search_attributes->'TemporalBool01')::boolean) STORED, ADD COLUMN IF NOT EXISTS TemporalBool02 BOOLEAN GENERATED ALWAYS AS ((search_attributes->'TemporalBool02')::boolean) STORED, ADD COLUMN IF NOT EXISTS TemporalDatetime01 TIMESTAMP GENERATED ALWAYS AS (convert_ts(search_attributes->>'TemporalDatetime01')) STORED, ADD COLUMN IF NOT EXISTS TemporalDatetime02 TIMESTAMP GENERATED ALWAYS AS (convert_ts(search_attributes->>'TemporalDatetime02')) STORED, ADD COLUMN IF NOT EXISTS TemporalDouble01 DECIMAL(20, 5) GENERATED ALWAYS AS ((search_attributes->'TemporalDouble01')::decimal) STORED, ADD COLUMN IF NOT EXISTS TemporalDouble02 DECIMAL(20, 5) GENERATED ALWAYS AS ((search_attributes->'TemporalDouble02')::decimal) STORED, ADD COLUMN IF NOT EXISTS TemporalInt01 BIGINT GENERATED ALWAYS AS ((search_attributes->'TemporalInt01')::bigint) STORED, ADD COLUMN IF NOT EXISTS TemporalInt02 BIGINT GENERATED ALWAYS AS ((search_attributes->'TemporalInt02')::bigint) STORED, ADD COLUMN IF NOT EXISTS TemporalKeyword01 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalKeyword01') STORED, ADD COLUMN IF NOT EXISTS TemporalKeyword02 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalKeyword02') STORED, ADD COLUMN IF NOT EXISTS TemporalKeyword03 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalKeyword03') STORED, ADD COLUMN IF NOT EXISTS TemporalKeyword04 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalKeyword04') STORED, ADD COLUMN IF NOT EXISTS TemporalKeywordList01 JSONB GENERATED ALWAYS AS (search_attributes->'TemporalKeywordList01') STORED, ADD COLUMN IF NOT EXISTS TemporalKeywordList02 JSONB GENERATED ALWAYS AS (search_attributes->'TemporalKeywordList02') STORED, ADD COLUMN IF NOT EXISTS TemporalLowCardinalityKeyword01 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalLowCardinalityKeyword01') STORED, ADD COLUMN IF NOT EXISTS TemporalUsedWorkerDeploymentVersions JSONB GENERATED ALWAYS AS (search_attributes->'TemporalUsedWorkerDeploymentVersions') STORED;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.198+0100	DEBUG	DO LANGUAGE 'plpgsql' $$ DECLARE r RECORD; BEGIN FOR r IN SELECT i.relname as indexname FROM pg_class i, pg_index ix WHERE i.oid = ix.indexrelid AND ix.indrelid = (SELECT oid FROM pg_class WHERE relname = 'executions_visibility') AND i.relname IN ( 'by_temporal_reported_problems', 'by_temporal_bool_01', 'by_temporal_bool_02', 'by_temporal_datetime_01', 'by_temporal_datetime_02', 'by_temporal_double_01', 'by_temporal_double_02', 'by_temporal_int_01', 'by_temporal_int_02', 'by_temporal_keyword_01', 'by_temporal_keyword_02', 'by_temporal_keyword_03', 'by_temporal_keyword_04', 'by_temporal_keyword_list_01', 'by_temporal_keyword_list_02', 'by_temporal_low_cardinality_keyword_01', 'by_used_deployment_versions' ) AND NOT ix.indisvalid LOOP EXECUTE format('DROP INDEX %I', r.indexname); RAISE NOTICE 'Dropped invalid index %', r.indexname; END LOOP; END $$;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.200+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_reported_problems ON executions_visibility USING GIN (namespace_id, TemporalReportedProblems jsonb_path_ops);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.433+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_bool_01 ON executions_visibility (namespace_id, TemporalBool01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.445+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_bool_02 ON executions_visibility (namespace_id, TemporalBool02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.471+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_datetime_01 ON executions_visibility (namespace_id, TemporalDatetime01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.483+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_datetime_02 ON executions_visibility (namespace_id, TemporalDatetime02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.491+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_double_01 ON executions_visibility (namespace_id, TemporalDouble01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.499+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_double_02 ON executions_visibility (namespace_id, TemporalDouble02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.507+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_int_01 ON executions_visibility (namespace_id, TemporalInt01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.515+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_int_02 ON executions_visibility (namespace_id, TemporalInt02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.523+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_01 ON executions_visibility (namespace_id, TemporalKeyword01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.530+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_02 ON executions_visibility (namespace_id, TemporalKeyword02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.538+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_03 ON executions_visibility (namespace_id, TemporalKeyword03, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.549+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_04 ON executions_visibility (namespace_id, TemporalKeyword04, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.720+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_list_01 ON executions_visibility USING GIN (namespace_id, TemporalKeywordList01 jsonb_path_ops);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.735+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_list_02 ON executions_visibility USING GIN (namespace_id, TemporalKeywordList02 jsonb_path_ops);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.759+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_low_cardinality_keyword_01 ON executions_visibility (namespace_id, TemporalLowCardinalityKeyword01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.768+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_used_deployment_versions ON executions_visibility USING GIN (namespace_id, TemporalUsedWorkerDeploymentVersions jsonb_path_ops);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:23.776+0100	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T10:08:23.782+0100	DEBUG	Schema updated from 1.12 to 1.13	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:08:23.782+0100	DEBUG	---- Executing updates for version 1.14 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T10:08:23.782+0100	DEBUG	ALTER TABLE executions_visibility ADD COLUMN IF NOT EXISTS TemporalExternalPayloadSizeBytes BIGINT GENERATED ALWAYS AS ((search_attributes->'TemporalExternalPayloadSizeBytes')::bigint) STORED, ADD COLUMN IF NOT EXISTS TemporalExternalPayloadCount BIGINT GENERATED ALWAYS AS ((search_attributes->'TemporalExternalPayloadCount')::bigint) STORED;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:24.003+0100	DEBUG	DO LANGUAGE 'plpgsql' $$ DECLARE r RECORD; BEGIN FOR r IN SELECT i.relname as indexname FROM pg_class i, pg_index ix WHERE i.oid = ix.indexrelid AND ix.indrelid = (SELECT oid FROM pg_class WHERE relname = 'executions_visibility') AND i.relname IN ( 'by_temporal_external_payload_size_bytes', 'by_temporal_external_payload_count' ) AND NOT ix.indisvalid LOOP EXECUTE format('DROP INDEX %I', r.indexname); RAISE NOTICE 'Dropped invalid index %', r.indexname; END LOOP; END $$;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:24.005+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_external_payload_size_bytes ON executions_visibility (namespace_id, TemporalExternalPayloadSizeBytes, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:24.166+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_external_payload_count ON executions_visibility (namespace_id, TemporalExternalPayloadCount, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:08:24.180+0100	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T10:08:24.187+0100	DEBUG	Schema updated from 1.13 to 1.14	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:08:24.187+0100	INFO	UpdateSchemaTask done	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:103"}
[2026-11-12 10:08:24] [OK] Initialized Temporal Database
[2026-11-12 10:08:24] [INFO] Creating Services
[2026-11-12 10:08:24] [OK] Created Services
[2026-11-12 10:08:24] [INFO] Creating Default Namespace
Namespace default successfully registered.
[2026-11-12 10:08:26] [OK] Created Default Namespace
[2026-11-12 10:08:26] [INFO] Customizing Container
[2026-11-12 10:08:27] [OK] Customized Container
[2026-11-12 10:08:27] [INFO] Cleaning up
Reading package lists...
Building dependency tree...
Reading state information...
Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 0
[2026-11-12 10:08:28] [OK] Cleaned
🔄 ct/temporal.sh (pve) — update log (45 lines)
curl: (22) The requested URL returned error: 404
curl: (22) The requested URL returned error: 404
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  Temporal
curl: (22) The requested URL returned error: 404
curl: (22) The requested URL returned error: 404
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  Temporal
  ⏳   Checking for update: temporal
  ✔️  Update available: temporal 0.0.0-ci -> 1.32.2
  ⏳   Stopping Temporal
  ✔️  Stopped Temporal
  ⏳   Fetching github release: temporal (1.32.2)
  ✔️  Deployed: temporal (1.32.2)
  ⏳   Migrating Temporal Database
  ✔️  Migrated Temporal Database
  ⏳   Starting Temporal
  ✔️  Started Temporal
  ✔️  Updated Temporal successfully!
  ⏳   Checking for update: temporal-ui
  ✔️  Update available: temporal-ui 0.0.0-ci -> 2.58.1
  ⏳   Stopping Temporal UI
  ✔️  Stopped Temporal UI
  ⏳   Fetching github release: temporal-ui (2.58.1)
  ✔️  Deployed: temporal-ui (2.58.1)
  ⏳   Starting Temporal UI
  ✔️  Started Temporal UI
  ✔️  Updated Temporal UI successfully!
  ⏳   Checking for update: temporal-cli
  ✔️  Update available: temporal-cli 0.0.0-ci -> 1.10.0
  ⏳   Fetching github release: temporal-cli (1.10.0)
  ✔️  Deployed: temporal-cli (1.10.0)
  ✔️  Updated Temporal CLI successfully!
  ⏳   Cleaning up
  ✔️  Cleaned
📄 ct/temporal.sh (incus) — install log (701 lines)
… 642 earlier lines cut, the full log is in the run artifacts
2026-11-12T10:06:22.882+0100	DEBUG	Schema updated from 1.7 to 1.8	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:06:22.882+0100	DEBUG	---- Executing updates for version 1.9 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T10:06:22.882+0100	DEBUG	ALTER TABLE executions_visibility ADD COLUMN _version BIGINT NOT NULL DEFAULT 0;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.884+0100	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T10:06:22.887+0100	DEBUG	Schema updated from 1.8 to 1.9	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:06:22.888+0100	DEBUG	---- Executing updates for version 1.10 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T10:06:22.888+0100	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T10:06:22.892+0100	DEBUG	Schema updated from 1.9 to 1.10	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:06:22.892+0100	DEBUG	---- Executing updates for version 1.11 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T10:06:22.892+0100	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T10:06:22.895+0100	DEBUG	Schema updated from 1.10 to 1.11	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:06:22.895+0100	DEBUG	---- Executing updates for version 1.12 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T10:06:22.895+0100	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T10:06:22.899+0100	DEBUG	Schema updated from 1.11 to 1.12	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:06:22.900+0100	DEBUG	---- Executing updates for version 1.13 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T10:06:22.900+0100	DEBUG	ALTER TABLE executions_visibility ADD COLUMN IF NOT EXISTS TemporalReportedProblems JSONB GENERATED ALWAYS AS (search_attributes->'TemporalReportedProblems') STORED, ADD COLUMN IF NOT EXISTS TemporalBool01 BOOLEAN GENERATED ALWAYS AS ((search_attributes->'TemporalBool01')::boolean) STORED, ADD COLUMN IF NOT EXISTS TemporalBool02 BOOLEAN GENERATED ALWAYS AS ((search_attributes->'TemporalBool02')::boolean) STORED, ADD COLUMN IF NOT EXISTS TemporalDatetime01 TIMESTAMP GENERATED ALWAYS AS (convert_ts(search_attributes->>'TemporalDatetime01')) STORED, ADD COLUMN IF NOT EXISTS TemporalDatetime02 TIMESTAMP GENERATED ALWAYS AS (convert_ts(search_attributes->>'TemporalDatetime02')) STORED, ADD COLUMN IF NOT EXISTS TemporalDouble01 DECIMAL(20, 5) GENERATED ALWAYS AS ((search_attributes->'TemporalDouble01')::decimal) STORED, ADD COLUMN IF NOT EXISTS TemporalDouble02 DECIMAL(20, 5) GENERATED ALWAYS AS ((search_attributes->'TemporalDouble02')::decimal) STORED, ADD COLUMN IF NOT EXISTS TemporalInt01 BIGINT GENERATED ALWAYS AS ((search_attributes->'TemporalInt01')::bigint) STORED, ADD COLUMN IF NOT EXISTS TemporalInt02 BIGINT GENERATED ALWAYS AS ((search_attributes->'TemporalInt02')::bigint) STORED, ADD COLUMN IF NOT EXISTS TemporalKeyword01 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalKeyword01') STORED, ADD COLUMN IF NOT EXISTS TemporalKeyword02 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalKeyword02') STORED, ADD COLUMN IF NOT EXISTS TemporalKeyword03 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalKeyword03') STORED, ADD COLUMN IF NOT EXISTS TemporalKeyword04 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalKeyword04') STORED, ADD COLUMN IF NOT EXISTS TemporalKeywordList01 JSONB GENERATED ALWAYS AS (search_attributes->'TemporalKeywordList01') STORED, ADD COLUMN IF NOT EXISTS TemporalKeywordList02 JSONB GENERATED ALWAYS AS (search_attributes->'TemporalKeywordList02') STORED, ADD COLUMN IF NOT EXISTS TemporalLowCardinalityKeyword01 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalLowCardinalityKeyword01') STORED, ADD COLUMN IF NOT EXISTS TemporalUsedWorkerDeploymentVersions JSONB GENERATED ALWAYS AS (search_attributes->'TemporalUsedWorkerDeploymentVersions') STORED;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.943+0100	DEBUG	DO LANGUAGE 'plpgsql' $$ DECLARE r RECORD; BEGIN FOR r IN SELECT i.relname as indexname FROM pg_class i, pg_index ix WHERE i.oid = ix.indexrelid AND ix.indrelid = (SELECT oid FROM pg_class WHERE relname = 'executions_visibility') AND i.relname IN ( 'by_temporal_reported_problems', 'by_temporal_bool_01', 'by_temporal_bool_02', 'by_temporal_datetime_01', 'by_temporal_datetime_02', 'by_temporal_double_01', 'by_temporal_double_02', 'by_temporal_int_01', 'by_temporal_int_02', 'by_temporal_keyword_01', 'by_temporal_keyword_02', 'by_temporal_keyword_03', 'by_temporal_keyword_04', 'by_temporal_keyword_list_01', 'by_temporal_keyword_list_02', 'by_temporal_low_cardinality_keyword_01', 'by_used_deployment_versions' ) AND NOT ix.indisvalid LOOP EXECUTE format('DROP INDEX %I', r.indexname); RAISE NOTICE 'Dropped invalid index %', r.indexname; END LOOP; END $$;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.945+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_reported_problems ON executions_visibility USING GIN (namespace_id, TemporalReportedProblems jsonb_path_ops);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.950+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_bool_01 ON executions_visibility (namespace_id, TemporalBool01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.954+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_bool_02 ON executions_visibility (namespace_id, TemporalBool02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.958+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_datetime_01 ON executions_visibility (namespace_id, TemporalDatetime01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.963+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_datetime_02 ON executions_visibility (namespace_id, TemporalDatetime02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.967+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_double_01 ON executions_visibility (namespace_id, TemporalDouble01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.971+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_double_02 ON executions_visibility (namespace_id, TemporalDouble02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.974+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_int_01 ON executions_visibility (namespace_id, TemporalInt01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.978+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_int_02 ON executions_visibility (namespace_id, TemporalInt02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.982+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_01 ON executions_visibility (namespace_id, TemporalKeyword01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.986+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_02 ON executions_visibility (namespace_id, TemporalKeyword02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.991+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_03 ON executions_visibility (namespace_id, TemporalKeyword03, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.995+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_04 ON executions_visibility (namespace_id, TemporalKeyword04, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:22.999+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_list_01 ON executions_visibility USING GIN (namespace_id, TemporalKeywordList01 jsonb_path_ops);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:23.003+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_list_02 ON executions_visibility USING GIN (namespace_id, TemporalKeywordList02 jsonb_path_ops);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:23.006+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_low_cardinality_keyword_01 ON executions_visibility (namespace_id, TemporalLowCardinalityKeyword01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:23.010+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_used_deployment_versions ON executions_visibility USING GIN (namespace_id, TemporalUsedWorkerDeploymentVersions jsonb_path_ops);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:23.013+0100	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T10:06:23.015+0100	DEBUG	Schema updated from 1.12 to 1.13	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:06:23.015+0100	DEBUG	---- Executing updates for version 1.14 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T10:06:23.015+0100	DEBUG	ALTER TABLE executions_visibility ADD COLUMN IF NOT EXISTS TemporalExternalPayloadSizeBytes BIGINT GENERATED ALWAYS AS ((search_attributes->'TemporalExternalPayloadSizeBytes')::bigint) STORED, ADD COLUMN IF NOT EXISTS TemporalExternalPayloadCount BIGINT GENERATED ALWAYS AS ((search_attributes->'TemporalExternalPayloadCount')::bigint) STORED;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:23.059+0100	DEBUG	DO LANGUAGE 'plpgsql' $$ DECLARE r RECORD; BEGIN FOR r IN SELECT i.relname as indexname FROM pg_class i, pg_index ix WHERE i.oid = ix.indexrelid AND ix.indrelid = (SELECT oid FROM pg_class WHERE relname = 'executions_visibility') AND i.relname IN ( 'by_temporal_external_payload_size_bytes', 'by_temporal_external_payload_count' ) AND NOT ix.indisvalid LOOP EXECUTE format('DROP INDEX %I', r.indexname); RAISE NOTICE 'Dropped invalid index %', r.indexname; END LOOP; END $$;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:23.060+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_external_payload_size_bytes ON executions_visibility (namespace_id, TemporalExternalPayloadSizeBytes, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:23.065+0100	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_external_payload_count ON executions_visibility (namespace_id, TemporalExternalPayloadCount, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T10:06:23.070+0100	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T10:06:23.073+0100	DEBUG	Schema updated from 1.13 to 1.14	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T10:06:23.073+0100	INFO	UpdateSchemaTask done	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:103"}
[2026-11-12 10:06:23] [OK] Initialized Temporal Database
[2026-11-12 10:06:23] [INFO] Creating Services
[2026-11-12 10:06:23] [OK] Created Services
[2026-11-12 10:06:23] [INFO] Creating Default Namespace
Namespace default successfully registered.
[2026-11-12 10:06:24] [OK] Created Default Namespace
[2026-11-12 10:06:25] [INFO] Customizing Container
[2026-11-12 10:06:26] [OK] Customized Container
[2026-11-12 10:06:26] [INFO] Cleaning up
Reading package lists...
Building dependency tree...
Reading state information...
Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 0
[2026-11-12 10:06:27] [OK] Cleaned
🔄 ct/temporal.sh (incus) — update log (40 lines)
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  Temporal
10.98.0.206
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  Temporal
  ⏳   Checking for update: temporal
  ✔️  Update available: temporal 0.0.0-ci -> 1.32.2
  ⏳   Stopping Temporal
  ✔️  Stopped Temporal
  ⏳   Fetching github release: temporal (1.32.2)
  ✔️  Deployed: temporal (1.32.2)
  ⏳   Migrating Temporal Database
  ✔️  Migrated Temporal Database
  ⏳   Starting Temporal
  ✔️  Started Temporal
  ✔️  Updated Temporal successfully!
  ⏳   Checking for update: temporal-ui
  ✔️  Update available: temporal-ui 0.0.0-ci -> 2.58.1
  ⏳   Stopping Temporal UI
  ✔️  Stopped Temporal UI
  ⏳   Fetching github release: temporal-ui (2.58.1)
  ✔️  Deployed: temporal-ui (2.58.1)
  ⏳   Starting Temporal UI
  ✔️  Started Temporal UI
  ✔️  Updated Temporal UI successfully!
  ⏳   Checking for update: temporal-cli
  ✔️  Update available: temporal-cli 0.0.0-ci -> 1.10.0
  ⏳   Fetching github release: temporal-cli (1.10.0)
  ✔️  Deployed: temporal-cli (1.10.0)
  ✔️  Updated Temporal CLI successfully!
📄 ct/temporal.sh (arm64) — install log (681 lines)
… 621 earlier lines cut, the full log is in the run artifacts
2026-11-12T09:07:22.382Z	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T09:07:22.383Z	DEBUG	Schema updated from 1.7 to 1.8	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T09:07:22.383Z	DEBUG	---- Executing updates for version 1.9 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T09:07:22.383Z	DEBUG	ALTER TABLE executions_visibility ADD COLUMN _version BIGINT NOT NULL DEFAULT 0;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.384Z	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T09:07:22.385Z	DEBUG	Schema updated from 1.8 to 1.9	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T09:07:22.385Z	DEBUG	---- Executing updates for version 1.10 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T09:07:22.385Z	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T09:07:22.386Z	DEBUG	Schema updated from 1.9 to 1.10	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T09:07:22.386Z	DEBUG	---- Executing updates for version 1.11 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T09:07:22.386Z	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T09:07:22.387Z	DEBUG	Schema updated from 1.10 to 1.11	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T09:07:22.387Z	DEBUG	---- Executing updates for version 1.12 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T09:07:22.387Z	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T09:07:22.388Z	DEBUG	Schema updated from 1.11 to 1.12	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T09:07:22.388Z	DEBUG	---- Executing updates for version 1.13 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T09:07:22.388Z	DEBUG	ALTER TABLE executions_visibility ADD COLUMN IF NOT EXISTS TemporalReportedProblems JSONB GENERATED ALWAYS AS (search_attributes->'TemporalReportedProblems') STORED, ADD COLUMN IF NOT EXISTS TemporalBool01 BOOLEAN GENERATED ALWAYS AS ((search_attributes->'TemporalBool01')::boolean) STORED, ADD COLUMN IF NOT EXISTS TemporalBool02 BOOLEAN GENERATED ALWAYS AS ((search_attributes->'TemporalBool02')::boolean) STORED, ADD COLUMN IF NOT EXISTS TemporalDatetime01 TIMESTAMP GENERATED ALWAYS AS (convert_ts(search_attributes->>'TemporalDatetime01')) STORED, ADD COLUMN IF NOT EXISTS TemporalDatetime02 TIMESTAMP GENERATED ALWAYS AS (convert_ts(search_attributes->>'TemporalDatetime02')) STORED, ADD COLUMN IF NOT EXISTS TemporalDouble01 DECIMAL(20, 5) GENERATED ALWAYS AS ((search_attributes->'TemporalDouble01')::decimal) STORED, ADD COLUMN IF NOT EXISTS TemporalDouble02 DECIMAL(20, 5) GENERATED ALWAYS AS ((search_attributes->'TemporalDouble02')::decimal) STORED, ADD COLUMN IF NOT EXISTS TemporalInt01 BIGINT GENERATED ALWAYS AS ((search_attributes->'TemporalInt01')::bigint) STORED, ADD COLUMN IF NOT EXISTS TemporalInt02 BIGINT GENERATED ALWAYS AS ((search_attributes->'TemporalInt02')::bigint) STORED, ADD COLUMN IF NOT EXISTS TemporalKeyword01 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalKeyword01') STORED, ADD COLUMN IF NOT EXISTS TemporalKeyword02 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalKeyword02') STORED, ADD COLUMN IF NOT EXISTS TemporalKeyword03 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalKeyword03') STORED, ADD COLUMN IF NOT EXISTS TemporalKeyword04 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalKeyword04') STORED, ADD COLUMN IF NOT EXISTS TemporalKeywordList01 JSONB GENERATED ALWAYS AS (search_attributes->'TemporalKeywordList01') STORED, ADD COLUMN IF NOT EXISTS TemporalKeywordList02 JSONB GENERATED ALWAYS AS (search_attributes->'TemporalKeywordList02') STORED, ADD COLUMN IF NOT EXISTS TemporalLowCardinalityKeyword01 VARCHAR(255) GENERATED ALWAYS AS (search_attributes->>'TemporalLowCardinalityKeyword01') STORED, ADD COLUMN IF NOT EXISTS TemporalUsedWorkerDeploymentVersions JSONB GENERATED ALWAYS AS (search_attributes->'TemporalUsedWorkerDeploymentVersions') STORED;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.405Z	DEBUG	DO LANGUAGE 'plpgsql' $$ DECLARE r RECORD; BEGIN FOR r IN SELECT i.relname as indexname FROM pg_class i, pg_index ix WHERE i.oid = ix.indexrelid AND ix.indrelid = (SELECT oid FROM pg_class WHERE relname = 'executions_visibility') AND i.relname IN ( 'by_temporal_reported_problems', 'by_temporal_bool_01', 'by_temporal_bool_02', 'by_temporal_datetime_01', 'by_temporal_datetime_02', 'by_temporal_double_01', 'by_temporal_double_02', 'by_temporal_int_01', 'by_temporal_int_02', 'by_temporal_keyword_01', 'by_temporal_keyword_02', 'by_temporal_keyword_03', 'by_temporal_keyword_04', 'by_temporal_keyword_list_01', 'by_temporal_keyword_list_02', 'by_temporal_low_cardinality_keyword_01', 'by_used_deployment_versions' ) AND NOT ix.indisvalid LOOP EXECUTE format('DROP INDEX %I', r.indexname); RAISE NOTICE 'Dropped invalid index %', r.indexname; END LOOP; END $$;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.406Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_reported_problems ON executions_visibility USING GIN (namespace_id, TemporalReportedProblems jsonb_path_ops);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.408Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_bool_01 ON executions_visibility (namespace_id, TemporalBool01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.409Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_bool_02 ON executions_visibility (namespace_id, TemporalBool02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.411Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_datetime_01 ON executions_visibility (namespace_id, TemporalDatetime01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.412Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_datetime_02 ON executions_visibility (namespace_id, TemporalDatetime02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.414Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_double_01 ON executions_visibility (namespace_id, TemporalDouble01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.415Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_double_02 ON executions_visibility (namespace_id, TemporalDouble02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.417Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_int_01 ON executions_visibility (namespace_id, TemporalInt01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.418Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_int_02 ON executions_visibility (namespace_id, TemporalInt02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.420Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_01 ON executions_visibility (namespace_id, TemporalKeyword01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.421Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_02 ON executions_visibility (namespace_id, TemporalKeyword02, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.423Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_03 ON executions_visibility (namespace_id, TemporalKeyword03, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.424Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_04 ON executions_visibility (namespace_id, TemporalKeyword04, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.426Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_list_01 ON executions_visibility USING GIN (namespace_id, TemporalKeywordList01 jsonb_path_ops);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.427Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_keyword_list_02 ON executions_visibility USING GIN (namespace_id, TemporalKeywordList02 jsonb_path_ops);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.428Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_low_cardinality_keyword_01 ON executions_visibility (namespace_id, TemporalLowCardinalityKeyword01, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.430Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_used_deployment_versions ON executions_visibility USING GIN (namespace_id, TemporalUsedWorkerDeploymentVersions jsonb_path_ops);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.431Z	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T09:07:22.432Z	DEBUG	Schema updated from 1.12 to 1.13	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T09:07:22.433Z	DEBUG	---- Executing updates for version 1.14 ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:133"}
2026-11-12T09:07:22.433Z	DEBUG	ALTER TABLE executions_visibility ADD COLUMN IF NOT EXISTS TemporalExternalPayloadSizeBytes BIGINT GENERATED ALWAYS AS ((search_attributes->'TemporalExternalPayloadSizeBytes')::bigint) STORED, ADD COLUMN IF NOT EXISTS TemporalExternalPayloadCount BIGINT GENERATED ALWAYS AS ((search_attributes->'TemporalExternalPayloadCount')::bigint) STORED;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.450Z	DEBUG	DO LANGUAGE 'plpgsql' $$ DECLARE r RECORD; BEGIN FOR r IN SELECT i.relname as indexname FROM pg_class i, pg_index ix WHERE i.oid = ix.indexrelid AND ix.indrelid = (SELECT oid FROM pg_class WHERE relname = 'executions_visibility') AND i.relname IN ( 'by_temporal_external_payload_size_bytes', 'by_temporal_external_payload_count' ) AND NOT ix.indisvalid LOOP EXECUTE format('DROP INDEX %I', r.indexname); RAISE NOTICE 'Dropped invalid index %', r.indexname; END LOOP; END $$;	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.451Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_external_payload_size_bytes ON executions_visibility (namespace_id, TemporalExternalPayloadSizeBytes, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.453Z	DEBUG	CREATE INDEX CONCURRENTLY IF NOT EXISTS by_temporal_external_payload_count ON executions_visibility (namespace_id, TemporalExternalPayloadCount, (COALESCE(close_time, '9999-12-31 23:59:59')) DESC, start_time DESC, run_id);	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:135"}
2026-11-12T09:07:22.454Z	DEBUG	---- Done ----	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:152"}
2026-11-12T09:07:22.455Z	DEBUG	Schema updated from 1.13 to 1.14	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:125"}
2026-11-12T09:07:22.455Z	INFO	UpdateSchemaTask done	{"logging-call-at": "/home/runner/work/temporal/temporal/tools/common/schema/updatetask.go:103"}
[2026-11-12 09:07:22] [OK] Initialized Temporal Database
[2026-11-12 09:07:22] [INFO] Creating Services
[2026-11-12 09:07:22] [OK] Created Services
[2026-11-12 09:07:22] [INFO] Creating Default Namespace
Namespace default successfully registered.
[2026-11-12 09:07:23] [OK] Created Default Namespace
[2026-11-12 09:07:23] [INFO] Customizing Container
[2026-11-12 09:07:24] [OK] Customized Container
[2026-11-12 09:07:24] [INFO] Cleaning up
Reading package lists...
Building dependency tree...
Reading state information...
Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 0
[2026-11-12 09:07:25] [OK] Cleaned
🔄 ct/temporal.sh (arm64) — update log (40 lines)
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  Temporal
10.98.0.81
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  Temporal
  ⏳   Checking for update: temporal
  ✔️  Update available: temporal 0.0.0-ci -> 1.32.2
  ⏳   Stopping Temporal
  ✔️  Stopped Temporal
  ⏳   Fetching github release: temporal (1.32.2)
  ✔️  Deployed: temporal (1.32.2)
  ⏳   Migrating Temporal Database
  ✔️  Migrated Temporal Database
  ⏳   Starting Temporal
  ✔️  Started Temporal
  ✔️  Updated Temporal successfully!
  ⏳   Checking for update: temporal-ui
  ✔️  Update available: temporal-ui 0.0.0-ci -> 2.58.1
  ⏳   Stopping Temporal UI
  ✔️  Stopped Temporal UI
  ⏳   Fetching github release: temporal-ui (2.58.1)
  ✔️  Deployed: temporal-ui (2.58.1)
  ⏳   Starting Temporal UI
  ✔️  Started Temporal UI
  ✔️  Updated Temporal UI successfully!
  ⏳   Checking for update: temporal-cli
  ✔️  Update available: temporal-cli 0.0.0-ci -> 1.10.0
  ⏳   Fetching github release: temporal-cli (1.10.0)
  ✔️  Deployed: temporal-cli (1.10.0)
  ✔️  Updated Temporal CLI successfully!

Full logs: workflow run (artifacts result-*). Comment /test to build again.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant