fix: re-enable build-time coin config fetching #2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run unit test on PR | |
on: | |
pull_request: | |
types: [opened, synchronize, reopened] | |
jobs: | |
build_and_preview: | |
runs-on: [self-hosted, Linux] | |
timeout-minutes: 15 | |
steps: | |
- name: Setup GH Actions | |
uses: actions/checkout@v4 | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '18' | |
- run: | | |
npx @puppeteer/browsers install chromedriver@stable | |
- name: Get stable flutter | |
uses: subosito/flutter-action@v2 | |
with: | |
flutter-version: '3.22.x' | |
channel: 'stable' | |
- name: Prepare build directory | |
run: | | |
flutter clean | |
rm -rf build/* | |
rm -rf web/src/mm2/* | |
rm -rf web/src/kdfi/* | |
rm -rf web/dist/* | |
- name: Fetch packages and generate assets | |
run: | | |
echo "Running \`flutter build\` to generate assets for the deployment build" | |
flutter pub get > /dev/null 2>&1 | |
flutter build web --release > /dev/null 2>&1 || true | |
flutter pub get > /dev/null 2>&1 | |
flutter build web --release > /dev/null 2>&1 || true | |
echo "Done fetching packages and generating assets" | |
- name: Validate build | |
run: | | |
# Check that the web build folder contains a wasm file in the format build/web/dist/*.wasm | |
if [ ! -f build/web/dist/*.wasm ]; then | |
echo "Error: Web build failed. No wasm file found in build/web/dist/" | |
# List files for debugging | |
echo "Listing files in build/web recursively" | |
ls -R build/web | |
echo "Listing files in web recursively" | |
ls -R web | |
exit 1 | |
fi | |
# Check that the index.html is present and that it is equal to the source index.html | |
if ! cmp -s web/index.html build/web/index.html; then | |
echo "Error: Web build failed. index.html is not equal to the source index.html" | |
exit 1 | |
fi | |
# Check that the index.html has uncommitted changes to ensure that the placeholder was replaced with the generated content | |
if git diff --exit-code web/index.html; then | |
echo "Error: Web build failed. index.html has no uncommitted changes which indicates an issue with the \`template.html\` to \`index.html\` generation" | |
exit 1 | |
fi | |
# Decode the AssetManifest.bin and check for the coin icon presence | |
if [ ! -f build/web/assets/AssetManifest.bin ]; then | |
echo "Error: AssetManifest.bin file not found." | |
exit 1 | |
fi | |
if ! strings build/web/assets/AssetManifest.bin | grep -q "assets/coin_icons/png/kmd.png"; then | |
echo "Error: Coin icon not found in AssetManifest.bin" | |
exit 1 | |
fi | |
- name: Test unit_test (unix) | |
id: unit_tests | |
continue-on-error: false | |
timeout-minutes: 15 | |
run: | | |
flutter test test_units/main.dart |