diff --git a/.github/workflows/build-latest.yml b/.github/workflows/build-latest.yml index 04d1b494..af625312 100644 --- a/.github/workflows/build-latest.yml +++ b/.github/workflows/build-latest.yml @@ -42,11 +42,7 @@ jobs: test_matrix: | { "network": ["testnet", "pubnet", "local"], - "options": ["", "--enable-horizon-captive-core"], - "exclude": [ - { "network": "testnet", "options": "--enable-horizon-captive-core" }, - { "network": "pubnet", "options": "--enable-horizon-captive-core" }, - ] + "options": ["", "--enable-horizon-captive-core"] } arm64: @@ -63,11 +59,7 @@ jobs: test_matrix: | { "network": ["testnet", "pubnet", "local"], - "options": ["", "--enable-horizon-captive-core"], - "exclude": [ - { "network": "testnet", "options": "--enable-horizon-captive-core" }, - { "network": "pubnet", "options": "--enable-horizon-captive-core" }, - ] + "options": ["", "--enable-horizon-captive-core"] } manifest: diff --git a/.github/workflows/build-soroban-dev.yml b/.github/workflows/build-soroban-dev.yml index 12670cc6..4d4da37f 100644 --- a/.github/workflows/build-soroban-dev.yml +++ b/.github/workflows/build-soroban-dev.yml @@ -36,6 +36,7 @@ jobs: tag: soroban-dev-amd64 core_ref: v20.0.0rc1 core_configure_flags: --disable-tests + core_supports_testing_soroban_high_limit_override: 'true' go_ref: soroban-v1.0.0-rc soroban_tools_ref: v20.0.0-rc1 test_matrix: | @@ -54,6 +55,7 @@ jobs: tag: soroban-dev-arm64 core_ref: v20.0.0rc1 core_configure_flags: --disable-tests + core_supports_testing_soroban_high_limit_override: 'true' core_build_runner_type: ubuntu-latest-16-cores go_ref: soroban-v1.0.0-rc soroban_tools_ref: v20.0.0-rc1 diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index af3edca2..cdfb71c7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -22,6 +22,10 @@ on: description: 'CONFIGURE_FLAGS used when building stellar-core' type: 'string' default: '--disable-tests' + core_supports_testing_soroban_high_limit_override: + description: 'Indicator whether stellar-core supports the TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE config' + type: 'string' + default: 'false' core_build_runner_type: description: 'The GitHub Runner instance type to build stellar-core on' type: 'string' @@ -218,7 +222,7 @@ jobs: # save can. Once buildx supports it we can update. # https://github.com/docker/buildx/issues/847 - name: Build Quickstart Image - run: docker build --platform linux/${{ inputs.arch }} -f Dockerfile -t $IMAGE --label org.opencontainers.image.revision="${{ env.HEAD_SHA }}" . --build-arg STELLAR_CORE_IMAGE_REF=stellar-core:${{ inputs.arch }} --build-arg HORIZON_IMAGE_REF=stellar-horizon:${{ inputs.arch }} --build-arg FRIENDBOT_IMAGE_REF=stellar-friendbot:${{ inputs.arch }} --build-arg SOROBAN_RPC_IMAGE_REF=stellar-soroban-rpc:${{ inputs.arch }} + run: docker build --platform linux/${{ inputs.arch }} -f Dockerfile -t $IMAGE --label org.opencontainers.image.revision="${{ env.HEAD_SHA }}" . --build-arg STELLAR_CORE_IMAGE_REF=stellar-core:${{ inputs.arch }} --build-arg HORIZON_IMAGE_REF=stellar-horizon:${{ inputs.arch }} --build-arg FRIENDBOT_IMAGE_REF=stellar-friendbot:${{ inputs.arch }} --build-arg SOROBAN_RPC_IMAGE_REF=stellar-soroban-rpc:${{ inputs.arch }} --build-arg CORE_SUPPORTS_TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE=${{ inputs.core_supports_testing_soroban_high_limit_override }} - name: Save Quickstart Image run: docker save $IMAGE -o /tmp/image - name: Upload Quickstart Image diff --git a/Dockerfile b/Dockerfile index f868c9ee..4a0a2aec 100644 --- a/Dockerfile +++ b/Dockerfile @@ -42,6 +42,8 @@ ADD pubnet /opt/stellar-default/pubnet ADD testnet /opt/stellar-default/testnet ADD futurenet /opt/stellar-default/futurenet +ARG CORE_SUPPORTS_TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE +ENV CORE_SUPPORTS_TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE $CORE_SUPPORTS_TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE ADD start / RUN ["chmod", "+x", "start"] diff --git a/Makefile b/Makefile index 85c34423..29a3a582 100644 --- a/Makefile +++ b/Makefile @@ -3,6 +3,7 @@ __PHONY__: run logs build build-deps build-deps-core build-deps-horizon build-de TAG?=dev CORE_REF?=master CORE_CONFIGURE_FLAGS?=--disable-tests +CORE_SUPPORTS_TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE?=false SOROBAN_RPC_REF?=main HORIZON_REF?=$(shell ./scripts/soroban_repo_to_horizon_repo.sh $(SOROBAN_RPC_REF)) FRIENDBOT_REF?=$(HORIZON_REF) @@ -13,6 +14,9 @@ run: logs: docker exec stellar /bin/sh -c 'tail -F /var/log/supervisor/*' +console: + docker exec -it stellar /bin/bash + build-latest: $(MAKE) build TAG=latest \ CORE_REF=v19.13.0 \ @@ -29,12 +33,13 @@ build-soroban-dev: $(MAKE) build TAG=soroban-dev \ CORE_REF=v20.0.0rc1 \ CORE_CONFIGURE_FLAGS='--disable-tests' \ + CORE_SUPPORTS_TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE=true \ HORIZON_REF=soroban-v1.0.0-rc \ SOROBAN_RPC_REF=v20.0.0-rc1 build: $(MAKE) -j 4 build-deps - docker build -t stellar/quickstart:$(TAG) -f Dockerfile . --build-arg STELLAR_CORE_IMAGE_REF=stellar-core:$(CORE_REF) --build-arg HORIZON_IMAGE_REF=stellar-horizon:$(HORIZON_REF) --build-arg FRIENDBOT_IMAGE_REF=stellar-friendbot:$(FRIENDBOT_REF) --build-arg SOROBAN_RPC_IMAGE_REF=stellar-soroban-rpc:$(SOROBAN_RPC_REF) + docker build -t stellar/quickstart:$(TAG) -f Dockerfile . --build-arg STELLAR_CORE_IMAGE_REF=stellar-core:$(CORE_REF) --build-arg HORIZON_IMAGE_REF=stellar-horizon:$(HORIZON_REF) --build-arg FRIENDBOT_IMAGE_REF=stellar-friendbot:$(FRIENDBOT_REF) --build-arg SOROBAN_RPC_IMAGE_REF=stellar-soroban-rpc:$(SOROBAN_RPC_REF) --build-arg CORE_SUPPORTS_TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE=$(CORE_SUPPORTS_TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE) build-deps: build-deps-core build-deps-horizon build-deps-friendbot build-deps-soroban-rpc diff --git a/local/core/etc/stellar-core.cfg b/local/core/etc/stellar-core.cfg index 05a60aa7..238886e8 100644 --- a/local/core/etc/stellar-core.cfg +++ b/local/core/etc/stellar-core.cfg @@ -6,6 +6,7 @@ PUBLIC_HTTP_PORT=true RUN_STANDALONE=__RUN_STANDALONE__ MANUAL_CLOSE=__MANUAL_CLOSE__ ARTIFICIALLY_ACCELERATE_TIME_FOR_TESTING=true +__TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE__ NETWORK_PASSPHRASE="__NETWORK__" KNOWN_CURSORS=["HORIZON"] diff --git a/local/horizon/etc/stellar-captive-core.cfg b/local/horizon/etc/stellar-captive-core.cfg index 14bfe3fa..e5e7ff21 100644 --- a/local/horizon/etc/stellar-captive-core.cfg +++ b/local/horizon/etc/stellar-captive-core.cfg @@ -7,6 +7,7 @@ PUBLIC_HTTP_PORT=false PEER_PORT=11725 DATABASE="__DATABASE__" ARTIFICIALLY_ACCELERATE_TIME_FOR_TESTING=true +__TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE__ UNSAFE_QUORUM=true FAILURE_SAFETY=0 diff --git a/local/soroban-rpc/etc/stellar-captive-core.cfg b/local/soroban-rpc/etc/stellar-captive-core.cfg index 24cfe337..45ea73d0 100644 --- a/local/soroban-rpc/etc/stellar-captive-core.cfg +++ b/local/soroban-rpc/etc/stellar-captive-core.cfg @@ -7,6 +7,7 @@ PUBLIC_HTTP_PORT=false PEER_PORT=11726 DATABASE="__DATABASE__" ARTIFICIALLY_ACCELERATE_TIME_FOR_TESTING=true +__TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE__ ENABLE_SOROBAN_DIAGNOSTIC_EVENTS=__ENABLE_SOROBAN_DIAGNOSTIC_EVENTS__ EXPERIMENTAL_BUCKETLIST_DB=true diff --git a/pubnet/horizon/etc/stellar-captive-core.cfg b/pubnet/horizon/etc/stellar-captive-core.cfg new file mode 100644 index 00000000..0c9bf084 --- /dev/null +++ b/pubnet/horizon/etc/stellar-captive-core.cfg @@ -0,0 +1,203 @@ +# captive core config for futurenet +NETWORK_PASSPHRASE="__NETWORK__" +# disable the web service port, not used +HTTP_PORT=0 +PUBLIC_HTTP_PORT=false +# To avoid conflicts with the core instance +PEER_PORT=11725 +DATABASE="__DATABASE__" + +# TODO: Connect only to the local node after +# https://github.com/stellar/go/pull/5053 is available. +# PREFERRED_PEERS=["127.0.0.1:11625"] +# PREFERRED_PEER_KEYS=["GCTI6HMWRH2QGMFKWVU5M5ZSOTKL7P7JAHZDMJJBKDHGWTEC4CJ7O3DU"] +# PREFERRED_PEERS_ONLY=true + +[[HOME_DOMAINS]] +HOME_DOMAIN="stellar.org" +QUALITY="HIGH" + +[[HOME_DOMAINS]] +HOME_DOMAIN="satoshipay.io" +QUALITY="HIGH" + +[[HOME_DOMAINS]] +HOME_DOMAIN="lobstr.co" +QUALITY="HIGH" + +[[HOME_DOMAINS]] +HOME_DOMAIN="www.coinqvest.com" +QUALITY="HIGH" + +[[HOME_DOMAINS]] +HOME_DOMAIN="publicnode.org" +QUALITY="HIGH" + +[[HOME_DOMAINS]] +HOME_DOMAIN="stellar.blockdaemon.com" +QUALITY="HIGH" + +[[HOME_DOMAINS]] +HOME_DOMAIN="wirexapp.com" +QUALITY="HIGH" + +[[VALIDATORS]] +NAME="sdf_1" +HOME_DOMAIN="stellar.org" +PUBLIC_KEY="GCGB2S2KGYARPVIA37HYZXVRM2YZUEXA6S33ZU5BUDC6THSB62LZSTYH" +ADDRESS="core-live-a.stellar.org:11625" +HISTORY="curl -sf https://history.stellar.org/prd/core-live/core_live_001/{0} -o {1}" + +[[VALIDATORS]] +NAME="sdf_2" +HOME_DOMAIN="stellar.org" +PUBLIC_KEY="GCM6QMP3DLRPTAZW2UZPCPX2LF3SXWXKPMP3GKFZBDSF3QZGV2G5QSTK" +ADDRESS="core-live-b.stellar.org:11625" +HISTORY="curl -sf https://history.stellar.org/prd/core-live/core_live_002/{0} -o {1}" + +[[VALIDATORS]] +NAME="sdf_3" +HOME_DOMAIN="stellar.org" +PUBLIC_KEY="GABMKJM6I25XI4K7U6XWMULOUQIQ27BCTMLS6BYYSOWKTBUXVRJSXHYQ" +ADDRESS="core-live-c.stellar.org:11625" +HISTORY="curl -sf https://history.stellar.org/prd/core-live/core_live_003/{0} -o {1}" + +[[VALIDATORS]] +NAME="satoshipay_singapore" +HOME_DOMAIN="satoshipay.io" +PUBLIC_KEY="GBJQUIXUO4XSNPAUT6ODLZUJRV2NPXYASKUBY4G5MYP3M47PCVI55MNT" +ADDRESS="stellar-sg-sin.satoshipay.io:11625" +HISTORY="curl -sf https://stellar-history-sg-sin.satoshipay.io/{0} -o {1}" + +[[VALIDATORS]] +NAME="satoshipay_iowa" +HOME_DOMAIN="satoshipay.io" +PUBLIC_KEY="GAK6Z5UVGUVSEK6PEOCAYJISTT5EJBB34PN3NOLEQG2SUKXRVV2F6HZY" +ADDRESS="stellar-us-iowa.satoshipay.io:11625" +HISTORY="curl -sf https://stellar-history-us-iowa.satoshipay.io/{0} -o {1}" + +[[VALIDATORS]] +NAME="satoshipay_frankfurt" +HOME_DOMAIN="satoshipay.io" +PUBLIC_KEY="GC5SXLNAM3C4NMGK2PXK4R34B5GNZ47FYQ24ZIBFDFOCU6D4KBN4POAE" +ADDRESS="stellar-de-fra.satoshipay.io:11625" +HISTORY="curl -sf https://stellar-history-de-fra.satoshipay.io/{0} -o {1}" + +[[VALIDATORS]] +NAME="lobstr_1_europe" +HOME_DOMAIN="lobstr.co" +PUBLIC_KEY="GCFONE23AB7Y6C5YZOMKUKGETPIAJA4QOYLS5VNS4JHBGKRZCPYHDLW7" +ADDRESS="v1.stellar.lobstr.co:11625" +HISTORY="curl -sf https://stellar-archive-1-lobstr.s3.amazonaws.com/{0} -o {1}" + +[[VALIDATORS]] +NAME="lobstr_2_europe" +HOME_DOMAIN="lobstr.co" +PUBLIC_KEY="GDXQB3OMMQ6MGG43PWFBZWBFKBBDUZIVSUDAZZTRAWQZKES2CDSE5HKJ" +ADDRESS="v2.stellar.lobstr.co:11625" +HISTORY="curl -sf https://stellar-archive-2-lobstr.s3.amazonaws.com/{0} -o {1}" + +[[VALIDATORS]] +NAME="lobstr_3_north_america" +HOME_DOMAIN="lobstr.co" +PUBLIC_KEY="GD5QWEVV4GZZTQP46BRXV5CUMMMLP4JTGFD7FWYJJWRL54CELY6JGQ63" +ADDRESS="v3.stellar.lobstr.co:11625" +HISTORY="curl -sf https://stellar-archive-3-lobstr.s3.amazonaws.com/{0} -o {1}" + +[[VALIDATORS]] +NAME="lobstr_4_asia" +HOME_DOMAIN="lobstr.co" +PUBLIC_KEY="GA7TEPCBDQKI7JQLQ34ZURRMK44DVYCIGVXQQWNSWAEQR6KB4FMCBT7J" +ADDRESS="v4.stellar.lobstr.co:11625" +HISTORY="curl -sf https://stellar-archive-4-lobstr.s3.amazonaws.com/{0} -o {1}" + +[[VALIDATORS]] +NAME="lobstr_5_australia" +HOME_DOMAIN="lobstr.co" +PUBLIC_KEY="GA5STBMV6QDXFDGD62MEHLLHZTPDI77U3PFOD2SELU5RJDHQWBR5NNK7" +ADDRESS="v5.stellar.lobstr.co:11625" +HISTORY="curl -sf https://stellar-archive-5-lobstr.s3.amazonaws.com/{0} -o {1}" + +[[VALIDATORS]] +NAME="coinqvest_hong_kong" +HOME_DOMAIN="www.coinqvest.com" +PUBLIC_KEY="GAZ437J46SCFPZEDLVGDMKZPLFO77XJ4QVAURSJVRZK2T5S7XUFHXI2Z" +ADDRESS="hongkong.stellar.coinqvest.com:11625" +HISTORY="curl -sf https://hongkong.stellar.coinqvest.com/history/{0} -o {1}" + +[[VALIDATORS]] +NAME="coinqvest_germany" +HOME_DOMAIN="www.coinqvest.com" +PUBLIC_KEY="GD6SZQV3WEJUH352NTVLKEV2JM2RH266VPEM7EH5QLLI7ZZAALMLNUVN" +ADDRESS="germany.stellar.coinqvest.com:11625" +HISTORY="curl -sf https://germany.stellar.coinqvest.com/history/{0} -o {1}" + +[[VALIDATORS]] +NAME="coinqvest_finland" +HOME_DOMAIN="www.coinqvest.com" +PUBLIC_KEY="GADLA6BJK6VK33EM2IDQM37L5KGVCY5MSHSHVJA4SCNGNUIEOTCR6J5T" +ADDRESS="finland.stellar.coinqvest.com:11625" +HISTORY="curl -sf https://finland.stellar.coinqvest.com/history/{0} -o {1}" + +[[VALIDATORS]] +NAME="bootes" +HOME_DOMAIN="publicnode.org" +PUBLIC_KEY="GCVJ4Z6TI6Z2SOGENSPXDQ2U4RKH3CNQKYUHNSSPYFPNWTLGS6EBH7I2" +ADDRESS="bootes.publicnode.org" +HISTORY="curl -sf https://bootes-history.publicnode.org/{0} -o {1}" + +[[VALIDATORS]] +NAME="hercules" +HOME_DOMAIN="publicnode.org" +PUBLIC_KEY="GBLJNN3AVZZPG2FYAYTYQKECNWTQYYUUY2KVFN2OUKZKBULXIXBZ4FCT" +ADDRESS="hercules.publicnode.org" +HISTORY="curl -sf https://hercules-history.publicnode.org/{0} -o {1}" + +[[VALIDATORS]] +NAME="lyra" +HOME_DOMAIN="publicnode.org" +PUBLIC_KEY="GCIXVKNFPKWVMKJKVK2V4NK7D4TC6W3BUMXSIJ365QUAXWBRPPJXIR2Z" +ADDRESS="lyra.publicnode.org" +HISTORY="curl -sf https://lyra-history.publicnode.org/{0} -o {1}" + +[[VALIDATORS]] +NAME="Blockdaemon_Validator_1" +HOME_DOMAIN="stellar.blockdaemon.com" +PUBLIC_KEY="GAAV2GCVFLNN522ORUYFV33E76VPC22E72S75AQ6MBR5V45Z5DWVPWEU" +ADDRESS="stellar-full-validator1.bdnodes.net" +HISTORY="curl -sf https://stellar-full-history1.bdnodes.net/{0} -o {1}" + +[[VALIDATORS]] +NAME="Blockdaemon_Validator_2" +HOME_DOMAIN="stellar.blockdaemon.com" +PUBLIC_KEY="GAVXB7SBJRYHSG6KSQHY74N7JAFRL4PFVZCNWW2ARI6ZEKNBJSMSKW7C" +ADDRESS="stellar-full-validator2.bdnodes.net" +HISTORY="curl -sf https://stellar-full-history2.bdnodes.net/{0} -o {1}" + +[[VALIDATORS]] +NAME="Blockdaemon_Validator_3" +HOME_DOMAIN="stellar.blockdaemon.com" +PUBLIC_KEY="GAYXZ4PZ7P6QOX7EBHPIZXNWY4KCOBYWJCA4WKWRKC7XIUS3UJPT6EZ4" +ADDRESS="stellar-full-validator3.bdnodes.net" +HISTORY="curl -sf https://stellar-full-history3.bdnodes.net/{0} -o {1}" + +[[VALIDATORS]] +NAME="wirexUS" +ADDRESS="us.stellar.wirexapp.com" +HOME_DOMAIN="wirexapp.com" +PUBLIC_KEY="GDXUKFGG76WJC7ACEH3JUPLKM5N5S76QSMNDBONREUXPCZYVPOLFWXUS" +HISTORY="curl -sf http://wxhorizonusstga1.blob.core.windows.net/history/{0} -o {1}" + +[[VALIDATORS]] +NAME="wirexUK" +ADDRESS="uk.stellar.wirexapp.com" +HOME_DOMAIN="wirexapp.com" +PUBLIC_KEY="GBBQQT3EIUSXRJC6TGUCGVA3FVPXVZLGG3OJYACWBEWYBHU46WJLWXEU" +HISTORY="curl -sf http://wxhorizonukstga1.blob.core.windows.net/history/{0} -o {1}" + +[[VALIDATORS]] +NAME="wirexSG" +ADDRESS="sg.stellar.wirexapp.com" +HOME_DOMAIN="wirexapp.com" +PUBLIC_KEY="GAB3GZIE6XAYWXGZUDM4GMFFLJBFMLE2JDPUCWUZXMOMT3NHXDHEWXAS" +HISTORY="curl -sf http://wxhorizonasiastga1.blob.core.windows.net/history/{0} -o {1}" diff --git a/start b/start index 51fae01a..46da26d4 100644 --- a/start +++ b/start @@ -27,16 +27,13 @@ export PGPORT=5432 : "${ENABLE_SOROBAN_DIAGNOSTIC_EVENTS:=false}" : "${ENABLE_SOROBAN_RPC_ADMIN_ENDPOINT:=false}" : "${ENABLE_CORE_MANUAL_CLOSE:=false}" +: "${CORE_SUPPORTS_TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE:=false}" QUICKSTART_INITIALIZED=false CURRENT_POSTGRES_PID="" function main() { process_args $* - if [ "$NETWORK" != "local" ] && [ "$NETWORK" != "futurenet" ] &&[ "$ENABLE_HORIZON_CAPTIVE_CORE" = "true" ]; then - echo "--enable-horizon-captive-core usage only supported on local/futurenet networks" >&2 - exit 1 - fi if [ "$NETWORK" != "local" ] && [ "$NETWORK" != "futurenet" ] && [ "$ENABLE_SOROBAN_RPC" = "true" ]; then echo "--enable-soroban-rpc usage only supported on local/futurenet networks" >&2 exit 1 @@ -361,6 +358,12 @@ function init_stellar_core() { run_silent "finalize-core-config-run-local" perl -pi -e "s/__RUN_STANDALONE__/$RUN_STANDALONE/g" etc/stellar-core.cfg run_silent "finalize-core-config-manual-close" perl -pi -e "s/__MANUAL_CLOSE__/$ENABLE_CORE_MANUAL_CLOSE/g" etc/stellar-core.cfg + if [ "$NETWORK" = "local" ] && [ "${CORE_SUPPORTS_TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE}" = "true" ]; then + run_silent "finalize-core-config-testing-soroban-high-limit-override-set-true" perl -pi -e "s/__TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE__/TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE=true/g" etc/stellar-core.cfg + else + run_silent "finalize-core-config-testing-soroban-high-limit-override-unset" perl -pi -e "s/__TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE__//g" etc/stellar-core.cfg + fi + start_postgres run_silent "init-core-db" sudo -u stellar stellar-core new-db --conf etc/stellar-core.cfg @@ -397,6 +400,12 @@ function init_horizon() { run_silent "finalize-horizon-captivecore-db" perl -pi -e "s*__DATABASE__*sqlite3://$HZHOME/captive-core/stellar.db*g" $HORIZON_CAPTIVE_CORE_CFG perl -pi -e "s/__NETWORK__/$NETWORK_PASSPHRASE/g" $HORIZON_CAPTIVE_CORE_CFG + if [ "$NETWORK" = "local" ] && [ "${CORE_SUPPORTS_TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE}" = "true" ]; then + run_silent "finalize-horizon-captivecore-config-testing-soroban-high-limit-override-set-true" perl -pi -e "s/__TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE__/TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE=true/g" $HORIZON_CAPTIVE_CORE_CFG + else + run_silent "finalize-horizon-captivecore-config-testing-soroban-high-limit-override-unset" perl -pi -e "s/__TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE__//g" $HORIZON_CAPTIVE_CORE_CFG + fi + cat << EOF >> etc/horizon.env export ENABLE_CAPTIVE_CORE_INGESTION=true export STELLAR_CORE_BINARY_PATH=/usr/bin/stellar-core @@ -438,7 +447,13 @@ function init_soroban_rpc() { run_silent "finalize-soroban-rpc-captivecore-db" perl -pi -e "s*__DATABASE__*sqlite3://$SOROBAN_RPC_HOME/captive-core/stellar-rpc.db*g" $SOROBAN_RPC_CAPTIVE_CORE_CFG perl -pi -e "s/__NETWORK__/$NETWORK_PASSPHRASE/g" $SOROBAN_RPC_CAPTIVE_CORE_CFG run_silent "finalize-core-config-enable-soroban-diagnostic-events" perl -pi -e "s/__ENABLE_SOROBAN_DIAGNOSTIC_EVENTS__/$ENABLE_SOROBAN_DIAGNOSTIC_EVENTS/g" $SOROBAN_RPC_CAPTIVE_CORE_CFG - + + if [ "$NETWORK" = "local" ] && [ "${CORE_SUPPORTS_TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE}" = "true" ]; then + run_silent "finalize-soroban-rpc-captivecore-config-testing-soroban-high-limit-override-set-true" perl -pi -e "s/__TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE__/TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE=true/g" $SOROBAN_RPC_CAPTIVE_CORE_CFG + else + run_silent "finalize-soroban-rpc-captivecore-config-testing-soroban-high-limit-override-unset" perl -pi -e "s/__TESTING_SOROBAN_HIGH_LIMIT_OVERRIDE__//g" $SOROBAN_RPC_CAPTIVE_CORE_CFG + fi + local ADMIN_ENDPOINT=0.0.0.0:6061 if [ "$ENABLE_SOROBAN_RPC_ADMIN_ENDPOINT" != "true" ]; then ADMIN_ENDPOINT= diff --git a/testnet/horizon/etc/stellar-captive-core.cfg b/testnet/horizon/etc/stellar-captive-core.cfg new file mode 100644 index 00000000..7e1caa14 --- /dev/null +++ b/testnet/horizon/etc/stellar-captive-core.cfg @@ -0,0 +1,39 @@ +# captive core config for futurenet +NETWORK_PASSPHRASE="__NETWORK__" +# disable the web service port, not used +HTTP_PORT=0 +PUBLIC_HTTP_PORT=false +# To avoid conflicts with the core instance +PEER_PORT=11725 +DATABASE="__DATABASE__" + +# TODO: Connect only to the local node after +# https://github.com/stellar/go/pull/5053 is available. +# PREFERRED_PEERS=["127.0.0.1:11625"] +# PREFERRED_PEER_KEYS=["GCTI6HMWRH2QGMFKWVU5M5ZSOTKL7P7JAHZDMJJBKDHGWTEC4CJ7O3DU"] +# PREFERRED_PEERS_ONLY=true + +[[HOME_DOMAINS]] +HOME_DOMAIN="testnet.stellar.org" +QUALITY="HIGH" + +[[VALIDATORS]] +NAME="sdf_testnet_1" +HOME_DOMAIN="testnet.stellar.org" +PUBLIC_KEY="GDKXE2OZMJIPOSLNA6N6F2BVCI3O777I2OOC4BV7VOYUEHYX7RTRYA7Y" +ADDRESS="core-testnet1.stellar.org" +HISTORY="curl -sf http://history.stellar.org/prd/core-testnet/core_testnet_001/{0} -o {1}" + +[[VALIDATORS]] +NAME="sdf_testnet_2" +HOME_DOMAIN="testnet.stellar.org" +PUBLIC_KEY="GCUCJTIYXSOXKBSNFGNFWW5MUQ54HKRPGJUTQFJ5RQXZXNOLNXYDHRAP" +ADDRESS="core-testnet2.stellar.org" +HISTORY="curl -sf http://history.stellar.org/prd/core-testnet/core_testnet_002/{0} -o {1}" + +[[VALIDATORS]] +NAME="sdf_testnet_3" +HOME_DOMAIN="testnet.stellar.org" +PUBLIC_KEY="GC2V2EFSXN6SQTWVYA5EPJPBWWIMSD2XQNKUOHGEKB535AQE2I6IXV2Z" +ADDRESS="core-testnet3.stellar.org" +HISTORY="curl -sf http://history.stellar.org/prd/core-testnet/core_testnet_003/{0} -o {1}"