From 5713d7d3c6e443298dda40417fa5e7fc00785f15 Mon Sep 17 00:00:00 2001 From: Vladimir Stoilov Date: Mon, 9 Dec 2024 18:11:00 +0200 Subject: [PATCH] Make eartly local only build --- .earthlyignore | 6 +++--- Earthfile | 40 ++++++++++++++++++++++------------------ 2 files changed, 25 insertions(+), 21 deletions(-) diff --git a/.earthlyignore b/.earthlyignore index 8953460f..d1dc7512 100644 --- a/.earthlyignore +++ b/.earthlyignore @@ -12,11 +12,11 @@ desktop/tauri/src-tauri/target # Copy from .gitignore: # Compiled binaries -*.exe -dist/ +# *.exe +# dist/ # Dist dir -dist +# dist # Custom dev deops go.mod.* diff --git a/Earthfile b/Earthfile index aaa60d87..977c0837 100644 --- a/Earthfile +++ b/Earthfile @@ -512,6 +512,9 @@ tauri-lint: release-prep: FROM +rust-base + WORKDIR /app + COPY ./dist ./dist + # Linux specific COPY (+tauri-build/output/portmaster --target="x86_64-unknown-linux-gnu") ./output/binary/linux_amd64/portmaster COPY (+go-build/output/portmaster-core --GOARCH=amd64 --GOOS=linux --CMDS=portmaster-core) ./output/binary/linux_amd64/portmaster-core @@ -520,44 +523,45 @@ release-prep: COPY (+tauri-build/output/portmaster.exe --target="x86_64-pc-windows-gnu") ./output/binary/windows_amd64/portmaster.exe COPY (+tauri-build/output/WebView2Loader.dll --target="x86_64-pc-windows-gnu") ./output/binary/windows_amd64/WebView2Loader.dll COPY (+go-build/output/portmaster-core.exe --GOARCH=amd64 --GOOS=windows --CMDS=portmaster-core) ./output/binary/windows_amd64/portmaster-core.exe - # TODO(vladimir): figure out a way to get the lastest release of the kext and dll. - RUN wget -O ./output/binary/windows_amd64/portmaster-kext.sys https://updates.safing.io/windows_amd64/kext/portmaster-kext_v2-0-4.sys - RUN touch ./output/binary/windows_amd64/portmaster-core.dll + # TODO(vladimir): figure out a way to get the lastest release of the kext and the dll. + RUN cp "${outputDir}/windows_amd64/portmaster-kext.sys" ./output/binary/windows_amd64/portmaster-kext.sys + RUN cp "${outputDir}/windows_amd64/portmaster-core.dll" ./output/binary/windows_amd64/portmaster-core.dll # All platforms COPY (+assets/assets.zip) ./output/binary/all/assets.zip COPY (+angular-project/output/portmaster.zip --project=portmaster --dist=./dist --configuration=production --baseHref=/ui/modules/portmaster/) ./output/binary/all/portmaster.zip # Intel - # TODO(vladimir): figure out a way to download all latest intel data. + # TODO(vladimir): figure out a way to download all the latest intel data. RUN mkdir -p ./output/intel - RUN wget -O ./output/intel/geoipv4.mmdb.gz "https://updates.safing.io/all/intel/geoip/geoipv4_v20240820-0-1.mmdb.gz" && \ - wget -O ./output/intel/geoipv6.mmdb.gz "https://updates.safing.io/all/intel/geoip/geoipv6_v20240820-0-1.mmdb.gz" && \ - wget -O ./output/intel/index.dsd "https://updates.safing.io/all/intel/lists/index_v2023-6-13.dsd" && \ - wget -O ./output/intel/base.dsdl "https://updates.safing.io/all/intel/lists/base_v20241001-0-9.dsdl" && \ - wget -O ./output/intel/intermediate.dsdl "https://updates.safing.io/all/intel/lists/intermediate_v20240929-0-0.dsdl" && \ - wget -O ./output/intel/urgent.dsdl "https://updates.safing.io/all/intel/lists/urgent_v20241002-2-14.dsdl" + RUN cp "${outputDir}/intel/geoipv4.mmdb.gz" ./output/intel/geoipv4.mmdb.gz + RUN cp "${outputDir}/intel/geoipv6.mmdb.gz" ./output/intel/geoipv6.mmdb.gz + RUN cp "${outputDir}/intel/index.dsd" ./output/intel/index.dsd + RUN cp "${outputDir}/intel/base.dsdl" ./output/intel/base.dsdl + RUN cp "${outputDir}/intel/intermediate.dsdl" ./output/intel/intermediate.dsdl + RUN cp "${outputDir}/intel/urgent.dsdl" ./output/intel/urgent.dsdl + # Genereate index files COPY (+go-build/output/updatemgr --GOARCH=amd64 --GOOS=linux --CMDS=updatemgr) ./updatemgr RUN ./updatemgr scan --dir "./output/binary" > ./output/binary/index.json RUN ./updatemgr scan --dir "./output/intel" > ./output/intel/index.json # Intel Extracted (needed for the installers) RUN mkdir -p ./output/intel_decompressed - RUN cp ./output/intel/index.json ./output/intel_decompressed/index.json - RUN gzip -dc ./output/intel/geoipv4.mmdb.gz > ./output/intel_decompressed/geoipv4.mmdb - RUN gzip -dc ./output/intel/geoipv6.mmdb.gz > ./output/intel_decompressed/geoipv6.mmdb - RUN cp ./output/intel/index.dsd ./output/intel_decompressed/index.dsd - RUN cp ./output/intel/base.dsdl ./output/intel_decompressed/base.dsdl - RUN cp ./output/intel/intermediate.dsdl ./output/intel_decompressed/intermediate.dsdl - RUN cp ./output/intel/urgent.dsdl ./output/intel_decompressed/urgent.dsdl + RUN cp ${outputDir}/intel/index.json ./output/intel_decompressed/index.json + RUN gzip -dc ${outputDir}/intel/geoipv4.mmdb.gz > ./output/intel_decompressed/geoipv4.mmdb + RUN gzip -dc ./${outputDir}/intel/geoipv6.mmdb.gz > ./output/intel_decompressed/geoipv6.mmdb + RUN cp ${outputDir}/intel/index.dsd ./output/intel_decompressed/index.dsd + RUN cp ${outputDir}/intel/base.dsdl ./output/intel_decompressed/base.dsdl + RUN cp ${outputDir}/intel/intermediate.dsdl ./output/intel_decompressed/intermediate.dsdl + RUN cp ${outputDir}/intel/urgent.dsdl ./output/intel_decompressed/urgent.dsdl # Save all artifacts to output folder SAVE ARTIFACT --if-exists --keep-ts "output/binary/index.json" AS LOCAL "${outputDir}/binary/index.json" SAVE ARTIFACT --if-exists --keep-ts "output/binary/all/*" AS LOCAL "${outputDir}/binary/all/" SAVE ARTIFACT --if-exists --keep-ts "output/binary/linux_amd64/*" AS LOCAL "${outputDir}/binary/linux_amd64/" SAVE ARTIFACT --if-exists --keep-ts "output/binary/windows_amd64/*" AS LOCAL "${outputDir}/binary/windows_amd64/" - SAVE ARTIFACT --if-exists --keep-ts "output/intel/*" AS LOCAL "${outputDir}/intel/" + # SAVE ARTIFACT --if-exists --keep-ts "output/intel/*" AS LOCAL "${outputDir}/intel/" SAVE ARTIFACT --if-exists --keep-ts "output/intel_decompressed/*" AS LOCAL "${outputDir}/intel_decompressed/" # Save all artifacts to the container output folder so other containers can access it.