Service
EventBridge
AWS API Action
PutEvents
Expected behavior
EventBridge delivers event to SQS
Actual behavior
The SQS is not found if run in eu-west-1. It works only if run in us-east-1.
EventBridge failed to deliver to target arn:aws:sqs:eu-west-1:000000000000:test-routing-queue: The specified queue does not exist.
Reproduction
#!/usr/bin/env bash
# Minimal reproducer for Floci EventBridge → SQS delivery bug.
#
# Tested against:
# docker.io/localstack/localstack:4.6.0 → PASS
# docker.io/floci/floci:1.5.15 → FAIL
#
# Usage: ./bin/floci-eventbridge-sqs-bugreport.sh <image> [region]
set -euo pipefail
IMAGE="${1:?Usage: $0 <image> [region]}"
CONTAINER_NAME="eb-bug-$$"
REGION="${2:-eu-west-1}"
ENDPOINT="http://localhost:4566"
export AWS_ACCESS_KEY_ID=test
export AWS_SECRET_ACCESS_KEY=test
export AWS_DEFAULT_REGION="${REGION}"
export AWS_ACCOUNT_ID="000000000000"
export AWS_PAGER=""
AWS="aws --output json --endpoint-url=${ENDPOINT} --region ${REGION}"
wait_for_ready() {
local I=0
while ! curl -sf "${ENDPOINT}/_localstack/health" > /dev/null 2>&1; do
I=$(( I + 1 ))
[[ "${I}" -ge 30 ]] && { echo "ERROR: not ready" >&2; return 1; }
sleep 1
done
}
cleanup() {
docker logs "${CONTAINER_NAME}" || true
docker stop "${CONTAINER_NAME}" > /dev/null 2>&1 || true
}
trap cleanup EXIT
docker run -d --rm \
--name "${CONTAINER_NAME}" \
-e SERVICES=sqs,events \
-p 4566:4566 \
"${IMAGE}"
wait_for_ready
${AWS} events create-event-bus --name "bug-bus"
QUEUE_URL=$( ${AWS} sqs create-queue --queue-name "bug-queue" | jq -r '.QueueUrl' )
QUEUE_ARN=$( ${AWS} sqs get-queue-attributes \
--queue-url "${QUEUE_URL}" \
--attribute-names QueueArn | jq -r '.Attributes.QueueArn' )
${AWS} events put-rule \
--name "bug-rule" \
--event-bus-name "bug-bus" \
--event-pattern '{"detail":{"type":["test.event"]}}' \
--state ENABLED
${AWS} events put-targets \
--rule "bug-rule" \
--event-bus-name "bug-bus" \
--targets "Id=t1,Arn=${QUEUE_ARN}"
${AWS} events put-events --entries \
"[{\"Source\":\"app\",\"DetailType\":\"T\",\"Detail\":\"{\\\"type\\\":\\\"test.event\\\"}\",\"EventBusName\":\"bug-bus\"}]"
MSG_COUNT=$( ${AWS} sqs receive-message \
--queue-url "${QUEUE_URL}" \
--max-number-of-messages 5 \
--wait-time-seconds 10 \
| jq '.Messages // [] | length' )
echo "RESULT image=${IMAGE} messages_in_sqs=${MSG_COUNT}"
[[ "${MSG_COUNT}" -gt 0 ]] && echo "PASS" || { echo "FAIL" >&2; exit 1; }
Environment
- Floci version / image tag: 1.5.15
- Java SDK version (if applicable):
- How you're running Floci (Docker / native /
mvn quarkus:dev): podman
Service
EventBridge
AWS API Action
PutEvents
Expected behavior
EventBridge delivers event to SQS
Actual behavior
The SQS is not found if run in
eu-west-1. It works only if run inus-east-1.Reproduction
Environment
mvn quarkus:dev): podman