81 lines
2.1 KiB
Bash
Executable File
81 lines
2.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
|
go_file="$repo_root/golang/nats-server/server/jetstream_api.go"
|
|
|
|
if [[ -f "$go_file" ]]; then
|
|
{
|
|
rg -n -F '$JS.API' "$go_file" \
|
|
| awk -F: '{print $3}' \
|
|
| sed -E 's/.*"(\$JS\.API[^\"]+)".*/\1/' \
|
|
| awk '/^\$JS\.API/ && $0 !~ /\.>$/'
|
|
|
|
# Some Go constants are coarse patterns (e.g. "$JS.API.STREAM.>").
|
|
# Add explicit subject families used by parity tests/docs.
|
|
cat <<'EOF'
|
|
$JS.API.INFO
|
|
$JS.API.SERVER.REMOVE
|
|
$JS.API.ACCOUNT.PURGE.*
|
|
$JS.API.ACCOUNT.STREAM.MOVE.*
|
|
$JS.API.ACCOUNT.STREAM.MOVE.CANCEL.*
|
|
$JS.API.STREAM.UPDATE.*
|
|
$JS.API.STREAM.DELETE.*
|
|
$JS.API.STREAM.PURGE.*
|
|
$JS.API.STREAM.PEER.REMOVE.*
|
|
$JS.API.STREAM.NAMES
|
|
$JS.API.STREAM.LIST
|
|
$JS.API.STREAM.MSG.GET.*
|
|
$JS.API.STREAM.MSG.DELETE.*
|
|
$JS.API.STREAM.SNAPSHOT.*
|
|
$JS.API.STREAM.RESTORE.*
|
|
$JS.API.CONSUMER.NAMES.*
|
|
$JS.API.CONSUMER.LIST.*
|
|
$JS.API.CONSUMER.DELETE.*.*
|
|
$JS.API.CONSUMER.PAUSE.*.*
|
|
$JS.API.CONSUMER.RESET.*.*
|
|
$JS.API.CONSUMER.UNPIN.*.*
|
|
$JS.API.CONSUMER.MSG.NEXT.*.*
|
|
$JS.API.CONSUMER.LEADER.STEPDOWN.*.*
|
|
$JS.API.DIRECT.GET.*
|
|
$JS.API.STREAM.LEADER.STEPDOWN.*
|
|
$JS.API.META.LEADER.STEPDOWN
|
|
EOF
|
|
} | sort -u
|
|
exit 0
|
|
fi
|
|
|
|
# Fallback subject inventory when Go reference sources are not vendored in this repo.
|
|
cat <<'EOF'
|
|
$JS.API.INFO
|
|
$JS.API.SERVER.REMOVE
|
|
$JS.API.ACCOUNT.PURGE.*
|
|
$JS.API.ACCOUNT.STREAM.MOVE.*
|
|
$JS.API.ACCOUNT.STREAM.MOVE.CANCEL.*
|
|
$JS.API.STREAM.CREATE.*
|
|
$JS.API.STREAM.UPDATE.*
|
|
$JS.API.STREAM.DELETE.*
|
|
$JS.API.STREAM.PURGE.*
|
|
$JS.API.STREAM.INFO.*
|
|
$JS.API.STREAM.PEER.REMOVE.*
|
|
$JS.API.STREAM.NAMES
|
|
$JS.API.STREAM.LIST
|
|
$JS.API.STREAM.MSG.GET.*
|
|
$JS.API.STREAM.MSG.DELETE.*
|
|
$JS.API.STREAM.SNAPSHOT.*
|
|
$JS.API.STREAM.RESTORE.*
|
|
$JS.API.CONSUMER.CREATE.*.*
|
|
$JS.API.CONSUMER.INFO.*.*
|
|
$JS.API.CONSUMER.NAMES.*
|
|
$JS.API.CONSUMER.LIST.*
|
|
$JS.API.CONSUMER.DELETE.*.*
|
|
$JS.API.CONSUMER.PAUSE.*.*
|
|
$JS.API.CONSUMER.RESET.*.*
|
|
$JS.API.CONSUMER.UNPIN.*.*
|
|
$JS.API.CONSUMER.MSG.NEXT.*.*
|
|
$JS.API.CONSUMER.LEADER.STEPDOWN.*.*
|
|
$JS.API.DIRECT.GET.*
|
|
$JS.API.STREAM.LEADER.STEPDOWN.*
|
|
$JS.API.META.LEADER.STEPDOWN
|
|
EOF
|