aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Brown <mcb30@ipxe.org>2023-02-06 18:30:06 +0000
committerMichael Brown <mcb30@ipxe.org>2023-02-06 18:47:28 +0000
commitfd484754e527263b968207807e97d00e0e9f2136 (patch)
tree2e96cfa7bd43ac03c039846f302bd44a24d846b5
parentef0a6f47920a4fb245f35f1b2e4bcaa7305819cd (diff)
downloadipxe-pkgcache.zip
ipxe-pkgcache.tar.gz
ipxe-pkgcache.tar.bz2
[ci] Cache downloaded packages for GitHub actionspkgcache
Speed up the "Install packages" step for each CI run by caching the downloaded packages in /var/cache/apt. Do not include libc6-dbg:i386 within the cache, since apt seems to complain if asked to download both gcc-aarch64-linux-gnu and libc6-dbg:i386 at the same time. Signed-off-by: Michael Brown <mcb30@ipxe.org>
-rw-r--r--.github/workflows/build.yml35
1 files changed, 35 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index b6e18e3..85896f9 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -4,14 +4,37 @@ on: push
jobs:
+ cache:
+ name: Cache
+ runs-on: ubuntu-22.04
+ steps:
+ - name: Cache packages
+ uses: actions/cache@v3
+ with:
+ path: /var/cache/apt/archives/*.deb
+ key: apt-cache
+ - name: Download packages
+ run: |
+ sudo apt update
+ sudo apt install -y -d -o Acquire::Retries=50 \
+ mtools syslinux isolinux \
+ libc6-dev-i386 valgrind \
+ gcc-arm-none-eabi gcc-aarch64-linux-gnu
+
x86:
name: x86
runs-on: ubuntu-22.04
+ needs: cache
steps:
- name: Check out code
uses: actions/checkout@v3
with:
fetch-depth: 0
+ - name: Cached packages
+ uses: actions/cache/restore@v3
+ with:
+ path: /var/cache/apt/archives/*.deb
+ key: apt-cache
- name: Install packages
run: |
sudo dpkg --add-architecture i386
@@ -33,11 +56,17 @@ jobs:
arm32:
name: ARM32
runs-on: ubuntu-22.04
+ needs: cache
steps:
- name: Check out code
uses: actions/checkout@v3
with:
fetch-depth: 0
+ - name: Cached packages
+ uses: actions/cache/restore@v3
+ with:
+ path: /var/cache/apt/archives/*.deb
+ key: apt-cache
- name: Install packages
run: |
sudo apt update
@@ -53,11 +82,17 @@ jobs:
arm64:
name: ARM64
runs-on: ubuntu-22.04
+ needs: cache
steps:
- name: Check out code
uses: actions/checkout@v3
with:
fetch-depth: 0
+ - name: Cached packages
+ uses: actions/cache/restore@v3
+ with:
+ path: /var/cache/apt/archives/*.deb
+ key: apt-cache
- name: Install packages
run: |
sudo apt update