@@ -64,16 +64,27 @@ jobs:
6464 - name : " Install Project"
6565 run : make install-dev
6666
67- - name : " Install LocalStack"
68- run : pip install localstack==${RELEASE_VERSION}
67+ - name : " Install lstk"
68+ run : npm install -g @localstack/lstk
69+
70+ - name : " Configure lstk"
71+ # The config pins the emulator image to the release version. It lives outside
72+ # the workspace so the "Check Uncommitted Changes" step stays clean.
73+ run : |
74+ cat > "${RUNNER_TEMP}/lstk-config.toml" <<EOF
75+ [[containers]]
76+ type = "aws"
77+ tag = "${RELEASE_VERSION}"
78+ port = "4566"
79+ EOF
80+ echo "LSTK_CONFIG_FILE=${RUNNER_TEMP}/lstk-config.toml" >> "$GITHUB_ENV"
6981
7082 - name : " Start Localstack"
7183 env :
72- LOCALSTACK_AUTH_TOKEN : ${{ secrets.LOCALSTACK_AUTH_TOKEN }}
73- run : |
74- source .venv/bin/activate
75- DEBUG=1 DISABLE_EVENTS="1" IMAGE_NAME="localstack/localstack-pro:${RELEASE_VERSION}" localstack start -d
76- localstack wait -t 120 || (python -m localstack.cli.main logs && false)
84+ LOCALSTACK_AUTH_TOKEN : ${{ secrets.LOCALSTACK_AUTH_TOKEN }}
85+ LOCALSTACK_DEBUG : " 1"
86+ LOCALSTACK_DISABLE_EVENTS : " 1"
87+ run : lstk --config "${LSTK_CONFIG_FILE}" start --timeout 2m
7788
7889 - name : " Run Python Tests"
7990 env :
8394 - name : " Stop Localstack"
8495 if : success() || failure()
8596 run : |
86- source .venv/bin/activate
87- localstack logs
88- localstack stop
97+ lstk --config "${LSTK_CONFIG_FILE}" logs
98+ lstk --config "${LSTK_CONFIG_FILE}" stop
8999
90100 - name : " Check Uncommitted Changes"
91101 run : |
0 commit comments