Bladeren bron

use apt-caching, don't cargo install during test

Jonathan Kelley 4 maanden geleden
bovenliggende
commit
202f2e81d7
2 gewijzigde bestanden met toevoegingen van 37 en 42 verwijderingen
  1. 20 34
      .github/workflows/main.yml
  2. 17 8
      packages/cli/src/wasm_bindgen.rs

+ 20 - 34
.github/workflows/main.yml

@@ -69,14 +69,10 @@ jobs:
     runs-on: ubuntu-latest
     steps:
       - uses: actions/checkout@v4
-      - name: Free Disk Space (Ubuntu)
-        uses: jlumbroso/free-disk-space@v1.3.1
-        with: # speed things up a bit
-          large-packages: false
-          docker-images: false
-          swap-storage: false
-      - run: sudo apt-get update
-      - run: sudo apt install libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev libxdo-dev
+      - uses: awalsh128/cache-apt-pkgs-action@latest
+        with:
+          packages: libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev libxdo-dev
+          version: 1.0
       - uses: dtolnay/rust-toolchain@1.84.0
         with:
           components: rustfmt, clippy
@@ -92,14 +88,10 @@ jobs:
     runs-on: ubuntu-latest
     steps:
       - uses: actions/checkout@v4
-      - name: Free Disk Space (Ubuntu)
-        uses: jlumbroso/free-disk-space@v1.3.1
-        with: # speed things up a bit
-          large-packages: false
-          docker-images: false
-          swap-storage: false
-      - run: sudo apt-get update
-      - run: sudo apt install libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev libxdo-dev
+      - uses: awalsh128/cache-apt-pkgs-action@latest
+        with:
+          packages: libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev libxdo-dev
+          version: 1.0
       - uses: dtolnay/rust-toolchain@1.84.0
         with:
           components: rustfmt, clippy
@@ -129,8 +121,10 @@ jobs:
     runs-on: ubuntu-latest
     steps:
       - uses: actions/checkout@v4
-      - run: sudo apt-get update
-      - run: sudo apt install libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev libxdo-dev
+      - uses: awalsh128/cache-apt-pkgs-action@latest
+        with:
+          packages: libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev libxdo-dev
+          version: 1.0
       - name: Install Rust ${{ env.rust_nightly }}
         uses: dtolnay/rust-toolchain@nightly
         with:
@@ -154,8 +148,10 @@ jobs:
     runs-on: ubuntu-latest
     steps:
       - uses: actions/checkout@v4
-      - run: sudo apt-get update
-      - run: sudo apt install libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev libxdo-dev
+      - uses: awalsh128/cache-apt-pkgs-action@latest
+        with:
+          packages: libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev libxdo-dev
+          version: 1.0
       - uses: dtolnay/rust-toolchain@1.84.0
       - uses: Swatinem/rust-cache@v2
         with:
@@ -168,8 +164,10 @@ jobs:
     runs-on: ubuntu-latest
     steps:
       - uses: actions/checkout@v4
-      - run: sudo apt-get update
-      - run: sudo apt install libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev
+      - uses: awalsh128/cache-apt-pkgs-action@latest
+        with:
+          packages: libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev libxdo-dev
+          version: 1.0
       - uses: dtolnay/rust-toolchain@1.84.0
         with:
           components: rustfmt, clippy
@@ -202,12 +200,6 @@ jobs:
     steps:
       # Do our best to cache the toolchain and node install steps
       - uses: actions/checkout@v4
-      - name: Free Disk Space (Ubuntu)
-        uses: jlumbroso/free-disk-space@v1.3.1
-        with: # speed things up a bit
-          large-packages: false
-          docker-images: false
-          swap-storage: false
       - uses: actions/setup-node@v4
         with:
           node-version: 16
@@ -280,12 +272,6 @@ jobs:
     steps:
       - uses: actions/checkout@v4
       - name: Free Disk Space (Ubuntu)
-        if: ${{ matrix.platform.os == 'ubuntu-latest' }}
-        uses: jlumbroso/free-disk-space@v1.3.1
-        with: # speed things up a bit
-          large-packages: false
-          docker-images: false
-          swap-storage: false
       - name: install stable
         uses: dtolnay/rust-toolchain@master
         with:

+ 17 - 8
packages/cli/src/wasm_bindgen.rs

@@ -440,6 +440,9 @@ mod test {
     /// Test the github installer.
     #[tokio::test]
     async fn test_github_install() {
+        if std::env::var("TEST_INSTALLS").is_err() {
+            return;
+        }
         let binary = WasmBindgen::new(VERSION);
         reset_test().await;
         binary.install_github().await.unwrap();
@@ -450,6 +453,9 @@ mod test {
     /// Test the cargo installer.
     #[tokio::test]
     async fn test_cargo_install() {
+        if std::env::var("TEST_INSTALLS").is_err() {
+            return;
+        }
         let binary = WasmBindgen::new(VERSION);
         reset_test().await;
         binary.install_cargo().await.unwrap();
@@ -459,14 +465,17 @@ mod test {
 
     // CI doesn't have binstall.
     // Test the binstall installer
-    // #[tokio::test]
-    // async fn test_binstall_install() {
-    //     let binary = WasmBindgen::new(VERSION);
-    //     reset_test().await;
-    //     binary.install_binstall().await.unwrap();
-    //     test_verify_install().await;
-    //     verify_installation(&binary).await;
-    // }
+    #[tokio::test]
+    async fn test_binstall_install() {
+        if std::env::var("TEST_INSTALLS").is_err() {
+            return;
+        }
+        let binary = WasmBindgen::new(VERSION);
+        reset_test().await;
+        binary.install_binstall().await.unwrap();
+        test_verify_install().await;
+        verify_installation(&binary).await;
+    }
 
     /// Helper to test `verify_install` after an installation.
     async fn test_verify_install() {