action.yml 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. name: 'Free Space macOS'
  2. description: 'Checks out Electron and stores it in the AKS Cache'
  3. runs:
  4. using: "composite"
  5. steps:
  6. - name: Free Space on MacOS
  7. shell: bash
  8. run: |
  9. sudo mkdir -p $TMPDIR/del-target
  10. tmpify() {
  11. if [ -d "$1" ]; then
  12. sudo mv "$1" $TMPDIR/del-target/$(echo $1|shasum -a 256|head -n1|cut -d " " -f1)
  13. fi
  14. }
  15. strip_universal_deep() {
  16. opwd=$(pwd)
  17. cd $1
  18. f=$(find . -perm +111 -type f)
  19. for fp in $f
  20. do
  21. if [[ $(file "$fp") == *"universal binary"* ]]; then
  22. if [ "`arch`" == "arm64" ]; then
  23. if [[ $(file "$fp") == *"x86_64"* ]]; then
  24. sudo lipo -remove x86_64 "$fp" -o "$fp" || true
  25. fi
  26. else
  27. if [[ $(file "$fp") == *"arm64e)"* ]]; then
  28. sudo lipo -remove arm64e "$fp" -o "$fp" || true
  29. fi
  30. if [[ $(file "$fp") == *"arm64)"* ]]; then
  31. sudo lipo -remove arm64 "$fp" -o "$fp" || true
  32. fi
  33. fi
  34. fi
  35. done
  36. cd $opwd
  37. }
  38. tmpify /Library/Developer/CoreSimulator
  39. tmpify ~/Library/Developer/CoreSimulator
  40. tmpify $(xcode-select -p)/Platforms/AppleTVOS.platform
  41. tmpify $(xcode-select -p)/Platforms/iPhoneOS.platform
  42. tmpify $(xcode-select -p)/Platforms/WatchOS.platform
  43. tmpify $(xcode-select -p)/Platforms/WatchSimulator.platform
  44. tmpify $(xcode-select -p)/Platforms/AppleTVSimulator.platform
  45. tmpify $(xcode-select -p)/Platforms/iPhoneSimulator.platform
  46. tmpify $(xcode-select -p)/Toolchains/XcodeDefault.xctoolchain/usr/metal/ios
  47. tmpify $(xcode-select -p)/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift
  48. tmpify $(xcode-select -p)/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift-5.0
  49. tmpify ~/.rubies
  50. tmpify ~/Library/Caches/Homebrew
  51. tmpify /usr/local/Homebrew
  52. sudo rm -rf $TMPDIR/del-target
  53. sudo rm -rf /Applications/Safari.app
  54. sudo rm -rf ~/project/src/third_party/catapult/tracing/test_data
  55. sudo rm -rf ~/project/src/third_party/angle/third_party/VK-GL-CTS
  56. # lipo off some huge binaries arm64 versions to save space
  57. strip_universal_deep $(xcode-select -p)/../SharedFrameworks
  58. # strip_arm_deep /System/Volumes/Data/Library/Developer/CommandLineTools/usr