archive artifacts before upload
authorDmitry Misharov <dmitry@openssl.org>
Thu, 25 Apr 2024 12:53:26 +0000 (14:53 +0200)
committerTomas Mraz <tomas@openssl.org>
Mon, 29 Apr 2024 08:34:40 +0000 (10:34 +0200)
Some CI jobs produce a significant amount artifacts and it takes a lot
of time to upload them into GitHub artifacts storage. It will be much
faster to upload only one archive with artifacts.

Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24264)

.github/workflows/ci.yml
.github/workflows/cross-compiles.yml
.github/workflows/make-test

index f55f9dce95430e9f0b806a044709dac76f50a1c9..9bc5f9777f1209a9e589110ba5a26dff0d61c91d 100644 (file)
@@ -96,7 +96,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@basic-gcc"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   basic_clang:
     runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
@@ -118,7 +118,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@basic-clang"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   self-hosted:
     if: github.repository == 'openssl/openssl'
@@ -143,7 +143,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@self-hosted-${{ matrix.os }}"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   minimal:
     runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
@@ -165,8 +165,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@minimal"
-        path: artifacts/
-        if-no-files-found: ignore
+        path: artifacts.tar.gz
 
   no-deprecated:
     runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
@@ -188,7 +187,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@no-deprecated"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   no-shared-ubuntu:
     runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
@@ -210,7 +209,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@no-shared-ubuntu"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   no-shared-macos:
     strategy:
@@ -237,7 +236,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@no-shared-${{ matrix.os }}"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   non-caching:
     runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
@@ -263,7 +262,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@non-caching"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   address_ub_sanitizer:
     runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
@@ -289,7 +288,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@address_ub_sanitizer"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   fuzz_tests:
     runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
@@ -315,7 +314,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@fuzz_tests"
-        path: artifacts/
+        path: artifacts.tar.gz
         if-no-files-found: ignore
 
   memory_sanitizer:
@@ -343,7 +342,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@memory_sanitizer"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   threads_sanitizer:
     runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
@@ -369,7 +368,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@threads_sanitizer"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   enable_non-default_options:
     runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
@@ -393,7 +392,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@enable_non-default_options"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   full_featured:
     runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
@@ -423,7 +422,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@full_featured"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   no-legacy:
     runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
@@ -445,7 +444,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@no-legacy"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   legacy:
     runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
@@ -467,7 +466,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@legacy"
-        path: artifacts/
+        path: artifacts.tar.gz
 
   # out-of-source-and-install checks multiple things at the same time:
   # - That building, testing and installing works from an out-of-source
@@ -509,7 +508,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@out-of-readonly-source-and-install-ubuntu"
-        path: build/artifacts/
+        path: build/artifacts.tar.gz
     - name: make install
       run: make install
       working-directory: ./build
@@ -554,7 +553,7 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "ci@out-of-readonly-source-and-install-${{ matrix.os }}"
-        path: build/artifacts/
+        path: build/artifacts.tar.gz
     - name: make install
       run: make install
       working-directory: ./build
index 4e5dfa45f249f068cdc2aed66f67c7497c508226..5dc1b83f4efa2f89fe8081e1a951fd441a721d17 100644 (file)
@@ -220,5 +220,5 @@ jobs:
       uses: actions/upload-artifact@v3
       with:
         name: "cross-compiles@${{ matrix.platform.arch }}"
-        path: artifacts/
+        path: artifacts.tar.gz
         if-no-files-found: ignore
index 247b4c61bd46d3359c16b8ba410d1d6d87908c53..195928e786fa8c16983409ff2c8af0df24863f84 100755 (executable)
@@ -37,4 +37,7 @@ echo "Test suite exited with $RESULT, artifacts path is $OSSL_CI_ARTIFACTS_PATH"
 (cd "$OSSL_CI_ARTIFACTS_PATH"; find . -type f | sort)
 echo "::endgroup::"
 
+echo "Archive artifacts"
+tar -czvf artifacts.tar.gz $OSSL_CI_ARTIFACTS_PATH
+
 exit $RESULT