diff --git a/.github/workflows/getdeps_linux.yml b/.github/workflows/getdeps_linux.yml index 0f08a07fc..8fcfe9a16 100644 --- a/.github/workflows/getdeps_linux.yml +++ b/.github/workflows/getdeps_linux.yml @@ -11,7 +11,7 @@ on: - main permissions: - contents: read + contents: read # to fetch code (actions/checkout) jobs: build: @@ -19,9 +19,9 @@ jobs: steps: - uses: actions/checkout@v4 - name: Update system package info - run: sudo apt-get update + run: sudo --preserve-env=http_proxy apt-get update - name: Install system deps - run: sudo python3 build/fbcode_builder/getdeps.py --allow-system-packages install-system-deps --recursive cachelib && sudo python3 build/fbcode_builder/getdeps.py --allow-system-packages install-system-deps --recursive patchelf + run: sudo --preserve-env=http_proxy python3 build/fbcode_builder/getdeps.py --allow-system-packages install-system-deps --recursive cachelib && sudo --preserve-env=http_proxy python3 build/fbcode_builder/getdeps.py --allow-system-packages install-system-deps --recursive patchelf - id: paths name: Query paths run: python3 build/fbcode_builder/getdeps.py --allow-system-packages query-paths --recursive --src-dir=. cachelib >> "$GITHUB_OUTPUT" @@ -79,9 +79,6 @@ jobs: - name: Fetch sparsemap if: ${{ steps.paths.outputs.sparsemap_SOURCE }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages fetch --no-tests sparsemap - - name: Fetch bz2 - if: ${{ steps.paths.outputs.bz2_SOURCE }} - run: python3 build/fbcode_builder/getdeps.py --allow-system-packages fetch --no-tests bz2 - name: Fetch openssl if: ${{ steps.paths.outputs.openssl_SOURCE }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages fetch --no-tests openssl @@ -124,129 +121,537 @@ jobs: - name: Fetch mvfst if: ${{ steps.paths.outputs.mvfst_SOURCE }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages fetch --no-tests mvfst - - name: Fetch libffi - if: ${{ steps.paths.outputs.libffi_SOURCE }} - run: python3 build/fbcode_builder/getdeps.py --allow-system-packages fetch --no-tests libffi - - name: Fetch ncurses - if: ${{ steps.paths.outputs.ncurses_SOURCE }} - run: python3 build/fbcode_builder/getdeps.py --allow-system-packages fetch --no-tests ncurses - - name: Fetch python - if: ${{ steps.paths.outputs.python_SOURCE }} - run: python3 build/fbcode_builder/getdeps.py --allow-system-packages fetch --no-tests python - name: Fetch fbthrift if: ${{ steps.paths.outputs.fbthrift_SOURCE }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages fetch --no-tests fbthrift - - name: Build libaio + - name: Restore libaio from cache + id: restore_libaio if: ${{ steps.paths.outputs.libaio_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.libaio_INSTALL }} + key: ${{ steps.paths.outputs.libaio_CACHE_KEY }}-install + - name: Build libaio + if: ${{ steps.paths.outputs.libaio_SOURCE && ! steps.restore_libaio.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests libaio - - name: Build ninja + - name: Save libaio to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.libaio_SOURCE && ! steps.restore_libaio.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.libaio_INSTALL }} + key: ${{ steps.paths.outputs.libaio_CACHE_KEY }}-install + - name: Restore ninja from cache + id: restore_ninja if: ${{ steps.paths.outputs.ninja_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.ninja_INSTALL }} + key: ${{ steps.paths.outputs.ninja_CACHE_KEY }}-install + - name: Build ninja + if: ${{ steps.paths.outputs.ninja_SOURCE && ! steps.restore_ninja.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests ninja - - name: Build cmake + - name: Save ninja to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.ninja_SOURCE && ! steps.restore_ninja.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.ninja_INSTALL }} + key: ${{ steps.paths.outputs.ninja_CACHE_KEY }}-install + - name: Restore cmake from cache + id: restore_cmake if: ${{ steps.paths.outputs.cmake_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.cmake_INSTALL }} + key: ${{ steps.paths.outputs.cmake_CACHE_KEY }}-install + - name: Build cmake + if: ${{ steps.paths.outputs.cmake_SOURCE && ! steps.restore_cmake.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests cmake - - name: Build fmt + - name: Save cmake to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.cmake_SOURCE && ! steps.restore_cmake.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.cmake_INSTALL }} + key: ${{ steps.paths.outputs.cmake_CACHE_KEY }}-install + - name: Restore fmt from cache + id: restore_fmt if: ${{ steps.paths.outputs.fmt_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.fmt_INSTALL }} + key: ${{ steps.paths.outputs.fmt_CACHE_KEY }}-install + - name: Build fmt + if: ${{ steps.paths.outputs.fmt_SOURCE && ! steps.restore_fmt.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests fmt - - name: Build googletest + - name: Save fmt to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.fmt_SOURCE && ! steps.restore_fmt.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.fmt_INSTALL }} + key: ${{ steps.paths.outputs.fmt_CACHE_KEY }}-install + - name: Restore googletest from cache + id: restore_googletest if: ${{ steps.paths.outputs.googletest_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.googletest_INSTALL }} + key: ${{ steps.paths.outputs.googletest_CACHE_KEY }}-install + - name: Build googletest + if: ${{ steps.paths.outputs.googletest_SOURCE && ! steps.restore_googletest.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests googletest - - name: Build xxhash + - name: Save googletest to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.googletest_SOURCE && ! steps.restore_googletest.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.googletest_INSTALL }} + key: ${{ steps.paths.outputs.googletest_CACHE_KEY }}-install + - name: Restore xxhash from cache + id: restore_xxhash if: ${{ steps.paths.outputs.xxhash_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.xxhash_INSTALL }} + key: ${{ steps.paths.outputs.xxhash_CACHE_KEY }}-install + - name: Build xxhash + if: ${{ steps.paths.outputs.xxhash_SOURCE && ! steps.restore_xxhash.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests xxhash - - name: Build zstd + - name: Save xxhash to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.xxhash_SOURCE && ! steps.restore_xxhash.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.xxhash_INSTALL }} + key: ${{ steps.paths.outputs.xxhash_CACHE_KEY }}-install + - name: Restore zstd from cache + id: restore_zstd if: ${{ steps.paths.outputs.zstd_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.zstd_INSTALL }} + key: ${{ steps.paths.outputs.zstd_CACHE_KEY }}-install + - name: Build zstd + if: ${{ steps.paths.outputs.zstd_SOURCE && ! steps.restore_zstd.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests zstd - - name: Build zlib + - name: Save zstd to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.zstd_SOURCE && ! steps.restore_zstd.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.zstd_INSTALL }} + key: ${{ steps.paths.outputs.zstd_CACHE_KEY }}-install + - name: Restore zlib from cache + id: restore_zlib if: ${{ steps.paths.outputs.zlib_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.zlib_INSTALL }} + key: ${{ steps.paths.outputs.zlib_CACHE_KEY }}-install + - name: Build zlib + if: ${{ steps.paths.outputs.zlib_SOURCE && ! steps.restore_zlib.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests zlib - - name: Build boost + - name: Save zlib to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.zlib_SOURCE && ! steps.restore_zlib.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.zlib_INSTALL }} + key: ${{ steps.paths.outputs.zlib_CACHE_KEY }}-install + - name: Restore boost from cache + id: restore_boost if: ${{ steps.paths.outputs.boost_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.boost_INSTALL }} + key: ${{ steps.paths.outputs.boost_CACHE_KEY }}-install + - name: Build boost + if: ${{ steps.paths.outputs.boost_SOURCE && ! steps.restore_boost.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests boost - - name: Build double-conversion + - name: Save boost to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.boost_SOURCE && ! steps.restore_boost.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.boost_INSTALL }} + key: ${{ steps.paths.outputs.boost_CACHE_KEY }}-install + - name: Restore double-conversion from cache + id: restore_double-conversion if: ${{ steps.paths.outputs.double-conversion_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.double-conversion_INSTALL }} + key: ${{ steps.paths.outputs.double-conversion_CACHE_KEY }}-install + - name: Build double-conversion + if: ${{ steps.paths.outputs.double-conversion_SOURCE && ! steps.restore_double-conversion.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests double-conversion - - name: Build fast_float + - name: Save double-conversion to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.double-conversion_SOURCE && ! steps.restore_double-conversion.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.double-conversion_INSTALL }} + key: ${{ steps.paths.outputs.double-conversion_CACHE_KEY }}-install + - name: Restore fast_float from cache + id: restore_fast_float if: ${{ steps.paths.outputs.fast_float_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.fast_float_INSTALL }} + key: ${{ steps.paths.outputs.fast_float_CACHE_KEY }}-install + - name: Build fast_float + if: ${{ steps.paths.outputs.fast_float_SOURCE && ! steps.restore_fast_float.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests fast_float - - name: Build gflags + - name: Save fast_float to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.fast_float_SOURCE && ! steps.restore_fast_float.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.fast_float_INSTALL }} + key: ${{ steps.paths.outputs.fast_float_CACHE_KEY }}-install + - name: Restore gflags from cache + id: restore_gflags if: ${{ steps.paths.outputs.gflags_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.gflags_INSTALL }} + key: ${{ steps.paths.outputs.gflags_CACHE_KEY }}-install + - name: Build gflags + if: ${{ steps.paths.outputs.gflags_SOURCE && ! steps.restore_gflags.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests gflags - - name: Build glog + - name: Save gflags to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.gflags_SOURCE && ! steps.restore_gflags.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.gflags_INSTALL }} + key: ${{ steps.paths.outputs.gflags_CACHE_KEY }}-install + - name: Restore glog from cache + id: restore_glog if: ${{ steps.paths.outputs.glog_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.glog_INSTALL }} + key: ${{ steps.paths.outputs.glog_CACHE_KEY }}-install + - name: Build glog + if: ${{ steps.paths.outputs.glog_SOURCE && ! steps.restore_glog.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests glog - - name: Build libdwarf + - name: Save glog to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.glog_SOURCE && ! steps.restore_glog.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.glog_INSTALL }} + key: ${{ steps.paths.outputs.glog_CACHE_KEY }}-install + - name: Restore libdwarf from cache + id: restore_libdwarf if: ${{ steps.paths.outputs.libdwarf_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.libdwarf_INSTALL }} + key: ${{ steps.paths.outputs.libdwarf_CACHE_KEY }}-install + - name: Build libdwarf + if: ${{ steps.paths.outputs.libdwarf_SOURCE && ! steps.restore_libdwarf.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests libdwarf - - name: Build libevent + - name: Save libdwarf to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.libdwarf_SOURCE && ! steps.restore_libdwarf.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.libdwarf_INSTALL }} + key: ${{ steps.paths.outputs.libdwarf_CACHE_KEY }}-install + - name: Restore libevent from cache + id: restore_libevent if: ${{ steps.paths.outputs.libevent_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.libevent_INSTALL }} + key: ${{ steps.paths.outputs.libevent_CACHE_KEY }}-install + - name: Build libevent + if: ${{ steps.paths.outputs.libevent_SOURCE && ! steps.restore_libevent.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests libevent - - name: Build lz4 + - name: Save libevent to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.libevent_SOURCE && ! steps.restore_libevent.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.libevent_INSTALL }} + key: ${{ steps.paths.outputs.libevent_CACHE_KEY }}-install + - name: Restore lz4 from cache + id: restore_lz4 if: ${{ steps.paths.outputs.lz4_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.lz4_INSTALL }} + key: ${{ steps.paths.outputs.lz4_CACHE_KEY }}-install + - name: Build lz4 + if: ${{ steps.paths.outputs.lz4_SOURCE && ! steps.restore_lz4.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests lz4 - - name: Build snappy + - name: Save lz4 to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.lz4_SOURCE && ! steps.restore_lz4.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.lz4_INSTALL }} + key: ${{ steps.paths.outputs.lz4_CACHE_KEY }}-install + - name: Restore snappy from cache + id: restore_snappy if: ${{ steps.paths.outputs.snappy_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.snappy_INSTALL }} + key: ${{ steps.paths.outputs.snappy_CACHE_KEY }}-install + - name: Build snappy + if: ${{ steps.paths.outputs.snappy_SOURCE && ! steps.restore_snappy.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests snappy - - name: Build sparsemap + - name: Save snappy to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.snappy_SOURCE && ! steps.restore_snappy.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.snappy_INSTALL }} + key: ${{ steps.paths.outputs.snappy_CACHE_KEY }}-install + - name: Restore sparsemap from cache + id: restore_sparsemap if: ${{ steps.paths.outputs.sparsemap_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.sparsemap_INSTALL }} + key: ${{ steps.paths.outputs.sparsemap_CACHE_KEY }}-install + - name: Build sparsemap + if: ${{ steps.paths.outputs.sparsemap_SOURCE && ! steps.restore_sparsemap.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests sparsemap - - name: Build bz2 - if: ${{ steps.paths.outputs.bz2_SOURCE }} - run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests bz2 - - name: Build openssl + - name: Save sparsemap to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.sparsemap_SOURCE && ! steps.restore_sparsemap.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.sparsemap_INSTALL }} + key: ${{ steps.paths.outputs.sparsemap_CACHE_KEY }}-install + - name: Restore openssl from cache + id: restore_openssl if: ${{ steps.paths.outputs.openssl_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.openssl_INSTALL }} + key: ${{ steps.paths.outputs.openssl_CACHE_KEY }}-install + - name: Build openssl + if: ${{ steps.paths.outputs.openssl_SOURCE && ! steps.restore_openssl.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests openssl - - name: Build liboqs + - name: Save openssl to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.openssl_SOURCE && ! steps.restore_openssl.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.openssl_INSTALL }} + key: ${{ steps.paths.outputs.openssl_CACHE_KEY }}-install + - name: Restore liboqs from cache + id: restore_liboqs if: ${{ steps.paths.outputs.liboqs_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.liboqs_INSTALL }} + key: ${{ steps.paths.outputs.liboqs_CACHE_KEY }}-install + - name: Build liboqs + if: ${{ steps.paths.outputs.liboqs_SOURCE && ! steps.restore_liboqs.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests liboqs - - name: Build autoconf + - name: Save liboqs to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.liboqs_SOURCE && ! steps.restore_liboqs.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.liboqs_INSTALL }} + key: ${{ steps.paths.outputs.liboqs_CACHE_KEY }}-install + - name: Restore autoconf from cache + id: restore_autoconf if: ${{ steps.paths.outputs.autoconf_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.autoconf_INSTALL }} + key: ${{ steps.paths.outputs.autoconf_CACHE_KEY }}-install + - name: Build autoconf + if: ${{ steps.paths.outputs.autoconf_SOURCE && ! steps.restore_autoconf.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests autoconf - - name: Build automake + - name: Save autoconf to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.autoconf_SOURCE && ! steps.restore_autoconf.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.autoconf_INSTALL }} + key: ${{ steps.paths.outputs.autoconf_CACHE_KEY }}-install + - name: Restore automake from cache + id: restore_automake if: ${{ steps.paths.outputs.automake_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.automake_INSTALL }} + key: ${{ steps.paths.outputs.automake_CACHE_KEY }}-install + - name: Build automake + if: ${{ steps.paths.outputs.automake_SOURCE && ! steps.restore_automake.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests automake - - name: Build libtool + - name: Save automake to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.automake_SOURCE && ! steps.restore_automake.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.automake_INSTALL }} + key: ${{ steps.paths.outputs.automake_CACHE_KEY }}-install + - name: Restore libtool from cache + id: restore_libtool if: ${{ steps.paths.outputs.libtool_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.libtool_INSTALL }} + key: ${{ steps.paths.outputs.libtool_CACHE_KEY }}-install + - name: Build libtool + if: ${{ steps.paths.outputs.libtool_SOURCE && ! steps.restore_libtool.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests libtool - - name: Build numa + - name: Save libtool to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.libtool_SOURCE && ! steps.restore_libtool.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.libtool_INSTALL }} + key: ${{ steps.paths.outputs.libtool_CACHE_KEY }}-install + - name: Restore numa from cache + id: restore_numa if: ${{ steps.paths.outputs.numa_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.numa_INSTALL }} + key: ${{ steps.paths.outputs.numa_CACHE_KEY }}-install + - name: Build numa + if: ${{ steps.paths.outputs.numa_SOURCE && ! steps.restore_numa.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests numa - - name: Build libiberty + - name: Save numa to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.numa_SOURCE && ! steps.restore_numa.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.numa_INSTALL }} + key: ${{ steps.paths.outputs.numa_CACHE_KEY }}-install + - name: Restore libiberty from cache + id: restore_libiberty if: ${{ steps.paths.outputs.libiberty_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.libiberty_INSTALL }} + key: ${{ steps.paths.outputs.libiberty_CACHE_KEY }}-install + - name: Build libiberty + if: ${{ steps.paths.outputs.libiberty_SOURCE && ! steps.restore_libiberty.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests libiberty - - name: Build libsodium + - name: Save libiberty to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.libiberty_SOURCE && ! steps.restore_libiberty.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.libiberty_INSTALL }} + key: ${{ steps.paths.outputs.libiberty_CACHE_KEY }}-install + - name: Restore libsodium from cache + id: restore_libsodium if: ${{ steps.paths.outputs.libsodium_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.libsodium_INSTALL }} + key: ${{ steps.paths.outputs.libsodium_CACHE_KEY }}-install + - name: Build libsodium + if: ${{ steps.paths.outputs.libsodium_SOURCE && ! steps.restore_libsodium.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests libsodium - - name: Build libunwind + - name: Save libsodium to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.libsodium_SOURCE && ! steps.restore_libsodium.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.libsodium_INSTALL }} + key: ${{ steps.paths.outputs.libsodium_CACHE_KEY }}-install + - name: Restore libunwind from cache + id: restore_libunwind if: ${{ steps.paths.outputs.libunwind_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.libunwind_INSTALL }} + key: ${{ steps.paths.outputs.libunwind_CACHE_KEY }}-install + - name: Build libunwind + if: ${{ steps.paths.outputs.libunwind_SOURCE && ! steps.restore_libunwind.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests libunwind - - name: Build xz + - name: Save libunwind to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.libunwind_SOURCE && ! steps.restore_libunwind.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.libunwind_INSTALL }} + key: ${{ steps.paths.outputs.libunwind_CACHE_KEY }}-install + - name: Restore xz from cache + id: restore_xz if: ${{ steps.paths.outputs.xz_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.xz_INSTALL }} + key: ${{ steps.paths.outputs.xz_CACHE_KEY }}-install + - name: Build xz + if: ${{ steps.paths.outputs.xz_SOURCE && ! steps.restore_xz.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests xz - - name: Build folly + - name: Save xz to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.xz_SOURCE && ! steps.restore_xz.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.xz_INSTALL }} + key: ${{ steps.paths.outputs.xz_CACHE_KEY }}-install + - name: Restore folly from cache + id: restore_folly if: ${{ steps.paths.outputs.folly_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.folly_INSTALL }} + key: ${{ steps.paths.outputs.folly_CACHE_KEY }}-install + - name: Build folly + if: ${{ steps.paths.outputs.folly_SOURCE && ! steps.restore_folly.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests folly - - name: Build fizz + - name: Save folly to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.folly_SOURCE && ! steps.restore_folly.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.folly_INSTALL }} + key: ${{ steps.paths.outputs.folly_CACHE_KEY }}-install + - name: Restore fizz from cache + id: restore_fizz if: ${{ steps.paths.outputs.fizz_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.fizz_INSTALL }} + key: ${{ steps.paths.outputs.fizz_CACHE_KEY }}-install + - name: Build fizz + if: ${{ steps.paths.outputs.fizz_SOURCE && ! steps.restore_fizz.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests fizz - - name: Build wangle + - name: Save fizz to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.fizz_SOURCE && ! steps.restore_fizz.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.fizz_INSTALL }} + key: ${{ steps.paths.outputs.fizz_CACHE_KEY }}-install + - name: Restore wangle from cache + id: restore_wangle if: ${{ steps.paths.outputs.wangle_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.wangle_INSTALL }} + key: ${{ steps.paths.outputs.wangle_CACHE_KEY }}-install + - name: Build wangle + if: ${{ steps.paths.outputs.wangle_SOURCE && ! steps.restore_wangle.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests wangle - - name: Build mvfst + - name: Save wangle to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.wangle_SOURCE && ! steps.restore_wangle.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.wangle_INSTALL }} + key: ${{ steps.paths.outputs.wangle_CACHE_KEY }}-install + - name: Restore mvfst from cache + id: restore_mvfst if: ${{ steps.paths.outputs.mvfst_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.mvfst_INSTALL }} + key: ${{ steps.paths.outputs.mvfst_CACHE_KEY }}-install + - name: Build mvfst + if: ${{ steps.paths.outputs.mvfst_SOURCE && ! steps.restore_mvfst.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests mvfst - - name: Build libffi - if: ${{ steps.paths.outputs.libffi_SOURCE }} - run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests libffi - - name: Build ncurses - if: ${{ steps.paths.outputs.ncurses_SOURCE }} - run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests ncurses - - name: Build python - if: ${{ steps.paths.outputs.python_SOURCE }} - run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests python - - name: Build fbthrift + - name: Save mvfst to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.mvfst_SOURCE && ! steps.restore_mvfst.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.mvfst_INSTALL }} + key: ${{ steps.paths.outputs.mvfst_CACHE_KEY }}-install + - name: Restore fbthrift from cache + id: restore_fbthrift if: ${{ steps.paths.outputs.fbthrift_SOURCE }} + uses: actions/cache/restore@v4 + with: + path: ${{ steps.paths.outputs.fbthrift_INSTALL }} + key: ${{ steps.paths.outputs.fbthrift_CACHE_KEY }}-install + - name: Build fbthrift + if: ${{ steps.paths.outputs.fbthrift_SOURCE && ! steps.restore_fbthrift.outputs.cache-hit }} run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --no-tests fbthrift + - name: Save fbthrift to cache + uses: actions/cache/save@v4 + if: ${{ steps.paths.outputs.fbthrift_SOURCE && ! steps.restore_fbthrift.outputs.cache-hit }} + with: + path: ${{ steps.paths.outputs.fbthrift_INSTALL }} + key: ${{ steps.paths.outputs.fbthrift_CACHE_KEY }}-install - name: Build cachelib run: python3 build/fbcode_builder/getdeps.py --allow-system-packages build --src-dir=. cachelib --project-install-prefix cachelib:/usr/local - name: Copy artifacts