From 7d38dd258c1edb73bdad9747d64c50c1b014b43e Mon Sep 17 00:00:00 2001
From: paku <paku@skyizwhite.dev>
Date: Sat, 11 Jan 2025 14:47:26 +0900
Subject: [PATCH 1/2] Apply cache

---
 .forgejo/workflows/CI.yml | 27 ++++++++++++++++++++++-----
 1 file changed, 22 insertions(+), 5 deletions(-)

diff --git a/.forgejo/workflows/CI.yml b/.forgejo/workflows/CI.yml
index 79673c2..ed94097 100644
--- a/.forgejo/workflows/CI.yml
+++ b/.forgejo/workflows/CI.yml
@@ -9,27 +9,44 @@ on:
 jobs:
   test:
     runs-on: docker
-    
+
     strategy:
       matrix:
         lisp:
           - sbcl-bin
-          
+
     env:
       LISP: ${{ matrix.lisp }}
 
     steps:
       - uses: actions/checkout@v4
-      - name: Install Roswell
+      
+      - name: Restore cache
+        id: restore-cache
+        uses: actions/cache/restore@v4
+        with:
+          path: $HOME/.roswell/
+          key: roswell-${{ runner.os }}-${{ matrix.lisp }}
+
+      - name: Install Roswell and Qlot
+        if: steps.restore-cache.outputs.cache-hit != 'true'
         env:
           LISP: ${{ matrix.lisp }}
         run: |
           curl -L https://raw.githubusercontent.com/roswell/roswell/master/scripts/install-for-ci.sh | sh
-      - name: Install Qlot
-        run: ros install fukamachi/qlot
+          ros install fukamachi/qlot
+
+      - name: Save cache
+        id: save-cache
+        uses: actions/cache/save@v4
+        with:
+          path: $HOME/.roswell/
+          key: ${{ steps.restore-cache.outputs.cache-primary-key }}
+
       - name: Install dependencies
         run: |
           PATH="~/.roswell/bin:$PATH"
           qlot install
+      
       - name: Run tests
         run: .qlot/bin/rove hsx.asd

From e852fa6b2736eb6657c6dc120d7265b2106fbb85 Mon Sep 17 00:00:00 2001
From: paku <paku@skyizwhite.dev>
Date: Sat, 11 Jan 2025 14:47:26 +0900
Subject: [PATCH 2/2] Apply cache

---
 .forgejo/workflows/CI.yml | 30 +++++++++++++++++++++++++-----
 1 file changed, 25 insertions(+), 5 deletions(-)

diff --git a/.forgejo/workflows/CI.yml b/.forgejo/workflows/CI.yml
index 79673c2..bcc5041 100644
--- a/.forgejo/workflows/CI.yml
+++ b/.forgejo/workflows/CI.yml
@@ -9,27 +9,47 @@ on:
 jobs:
   test:
     runs-on: docker
-    
+
     strategy:
       matrix:
         lisp:
           - sbcl-bin
-          
+
     env:
       LISP: ${{ matrix.lisp }}
 
     steps:
       - uses: actions/checkout@v4
-      - name: Install Roswell
+      
+      - name: Restore cache
+        id: restore-cache
+        uses: actions/cache/restore@v4
+        with:
+          path: |
+            ~/.roswell
+            ~/.config/common-lisp/source-registry.conf.d
+            ~/lisp
+          key: roswell-${{ runner.os }}-${{ matrix.lisp }}
+
+      - name: Install Roswell and Qlot
+        if: steps.restore-cache.outputs.cache-hit != 'true'
         env:
           LISP: ${{ matrix.lisp }}
         run: |
           curl -L https://raw.githubusercontent.com/roswell/roswell/master/scripts/install-for-ci.sh | sh
-      - name: Install Qlot
-        run: ros install fukamachi/qlot
+          ros install fukamachi/qlot
+
+      - name: Save cache
+        id: save-cache
+        uses: actions/cache/save@v4
+        with:
+          path: $HOME/.roswell/
+          key: ${{ steps.restore-cache.outputs.cache-primary-key }}
+
       - name: Install dependencies
         run: |
           PATH="~/.roswell/bin:$PATH"
           qlot install
+      
       - name: Run tests
         run: .qlot/bin/rove hsx.asd