forked from MapComplete/MapComplete
Scripts(android): only copy assets that are needed
This commit is contained in:
parent
4be89ffdd3
commit
995427cc66
4 changed files with 23 additions and 8 deletions
|
@ -36,7 +36,9 @@ jobs:
|
|||
run: npm ci
|
||||
|
||||
|
||||
- run: npm run init
|
||||
- run: |
|
||||
npm run init
|
||||
npm run generate:layeroverview -- --print-needed-assets
|
||||
|
||||
- name: Move dependency (@capacitor) into android repo
|
||||
run: |
|
||||
|
@ -63,9 +65,6 @@ jobs:
|
|||
fi
|
||||
git add build.gradle
|
||||
|
||||
- name: Run tests
|
||||
run: npm run test
|
||||
|
||||
- name: prepare android build
|
||||
run: npm run android:prepare
|
||||
|
||||
|
@ -123,7 +122,7 @@ jobs:
|
|||
run: |
|
||||
npm run clean && npm run clean:deep
|
||||
npm run prep:layeroverview
|
||||
npm run generate:layeroverview -- --force --exclude-labels=nsfw
|
||||
npm run generate:layeroverview -- --force --exclude-labels=nsfw --print-needed-assets
|
||||
npm run generate:layouts
|
||||
|
||||
- name: Move dependency (@capacitor) into android repo
|
||||
|
|
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -52,3 +52,4 @@ public/assets/icons/*.webp
|
|||
uploaded_images.json
|
||||
/app/dist/
|
||||
src/assets/bing.json
|
||||
needed_assets.csv
|
||||
|
|
|
@ -771,7 +771,7 @@ class LayerOverviewUtils extends Script {
|
|||
)
|
||||
|
||||
const forceReload = args.some((a) => a == "--force") || labelBlacklist.size > 0
|
||||
|
||||
const printAssets = args.some(a => a === "--print-needed-assets")
|
||||
console.log("Arguments are:", { labelBlacklist, themeWhitelist, forceReload })
|
||||
const doesImageExist = DoesImageExist.constructWithLicenses(existsSync)
|
||||
const sharedLayers = this.buildLayerIndex(doesImageExist, labelBlacklist)
|
||||
|
@ -860,6 +860,11 @@ class LayerOverviewUtils extends Script {
|
|||
(l) => Constants.added_by_default.indexOf(l["id"]) < 0
|
||||
)
|
||||
}
|
||||
if(printAssets){
|
||||
const images = Utils.Dedup(Array.from(sharedThemes.values()).flatMap(th => th._usedImages ?? [] ))
|
||||
writeFileSync("needed_assets.csv", images.join("\n"))
|
||||
console.log("Written needed_assets.csv")
|
||||
}
|
||||
}
|
||||
|
||||
private parseLayer(
|
||||
|
|
|
@ -15,6 +15,7 @@ then
|
|||
exit 0
|
||||
fi
|
||||
|
||||
# We don't bundle studio; as it is not suited for small screens anyway
|
||||
mv studio.html studiohtml
|
||||
npm run build
|
||||
mv studiohtml studio.html
|
||||
|
@ -57,13 +58,22 @@ cp -r dist/assets/data dist-full/assets/
|
|||
cp -r dist/assets/docs dist-full/assets/
|
||||
cp -r dist/assets/fonts dist-full/assets/
|
||||
cp -r dist/assets/langs dist-full/assets/
|
||||
cp -r dist/assets/layers dist-full/assets/
|
||||
# We need the assets for files, we copy them from "needed_assets"
|
||||
# cp -r dist/assets/layers dist-full/assets/
|
||||
# cp -r dist/assets/themes dist-full/assets/
|
||||
|
||||
while IFS= read -r file; do
|
||||
[[ $file == ./assets/* ]] || continue
|
||||
dest="dist-full/${file#./}"
|
||||
mkdir -p "$(dirname "$dest")"
|
||||
cp "$file" "$dest"
|
||||
# echo "Copying $file to $dest"
|
||||
done < needed_assets.csv
|
||||
|
||||
cp -r dist/assets/png dist-full/assets/
|
||||
cp -r dist/assets/svg dist-full/assets/
|
||||
cp -r dist/assets/templates dist-full/assets/
|
||||
cp -r dist/assets/generated/themes/ dist-full/assets/generated/
|
||||
cp -r dist/assets/themes dist-full/assets/
|
||||
# cp dist/assets/*.js.map dist-full/assets/
|
||||
rm -rf dist-full/assets/data/nsi
|
||||
rm dist-full/assets/layers/*/*.json
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue