Skip to content

Podman incompatibility when bootstrapping seaweedfs in Sentry 25.9.0 #100600

@wassimbkd

Description

@wassimbkd

Environment

self-hosted (https://develop.sentry.dev/self-hosted/)

What are you trying to accomplish?

In Sentry version 25.9.0, a new container for seaweedfs was introduced. However, when using podman / podman-compose, the bootstrap fails with an error

▶ Bootstrapping seaweedfs (node store)... <some container/container IDs printed> Traceback (most recent call last): File "/usr/bin/podman-compose", line 8, in <module> sys.exit(main()) File "/usr/lib/python3.9/site-packages/podman_compose.py", line 4255, in main asyncio.run(async_main()) File "/usr/lib64/python3.9/site-packages/asyncio/runners.py", line 44, in run return loop.run_until_complete(main) File "/usr/lib64/python3.9/site-packages/asyncio/base_events.py", line 647, in run_until_complete return future.result() File "/usr/lib/python3.9/site-packages/podman_compose.py", line 4251, in async_main await podman_compose.run() File "/usr/lib/python3.9/site-packages/podman_compose.py", line 2071, in run retcode = await cmd(self, args) File "/usr/lib/python3.9/site-packages/podman_compose.py", line 3169, in compose_up podman_args = await container_to_args(compose, cnt, detached=False, no_deps=args.no_deps) File "/usr/lib/python3.9/site-packages/podman_compose.py", line 1295, in container_to_args raise ValueError("'CMD_SHELL' takes a single string after it") ValueError: 'CMD_SHELL' takes a single string after it Error: executing /usr/bin/podman-compose --no-ansi --env-file .env up: exit status 1 Error in install/bootstrap-s3-nodestore.sh:5. '$dc up' exited with status 1 -> ./install.sh:main:39 --> install/bootstrap-s3-nodestore.sh:source:5
Because of this, installations using Podman fail when they reach the seaweedfs bootstrap step.

How are you getting stuck?

Expected Behavior:

./install.sh (or the bootstrap scripts) should support Podman (especially since Sentry’s self-hosted installer claims to support Podman via CONTAINER_ENGINE_PODMAN=1 in earlier versions)
GitHub

The CMD_SHELL handling or command invocation for the seaweedfs container should be compatible with what podman-compose expects (i.e. a single string rather than an array or multiple arguments).

Steps to Reproduce:

Clone Sentry self-hosted v25.9.0

Set CONTAINER_ENGINE_PODMAN=1 and run ./install.sh

Observe bootstrapping logs until seaweedfs; see the ValueError: 'CMD_SHELL' takes a single string after it error.

Where in the product are you?

Releases

Link

No response

DSN

No response

Version

25.9.0

Metadata

Metadata

Assignees

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions