mirror of
				https://hub.gitmirror.com/https://github.com/gradle/actions.git
				synced 2025-10-31 10:00:01 +08:00 
			
		
		
		
	 fb14e0ee5b
			
		
	
	
		fb14e0ee5b
		
	
	
	
	
		
			
			After the '[bot] update dist directory' commit, we run a full test suite. This will now use the content from the 'dist' directory, rather than regenerating this content in the test.
		
			
				
	
	
		
			93 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			93 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| name: Test cache cleanup
 | |
| 
 | |
| on:
 | |
|   workflow_call:
 | |
|     inputs:
 | |
|       cache-key-prefix:
 | |
|         type: string
 | |
|       runner-os:
 | |
|         type: string
 | |
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]'
 | |
|       skip-dist:
 | |
|         type: boolean
 | |
|         default: false
 | |
| 
 | |
| env:
 | |
|   SKIP_DIST: ${{ inputs.skip-dist }}
 | |
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: cache-cleanup-${{ inputs.cache-key-prefix }}
 | |
| 
 | |
| jobs:
 | |
|   full-build:
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: ${{fromJSON(inputs.runner-os)}}
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     steps:
 | |
|     - name: Checkout sources
 | |
|       uses: actions/checkout@v4
 | |
|     - name: Initialize integ-test
 | |
|       uses: ./.github/actions/init-integ-test
 | |
| 
 | |
|     - name: Setup Gradle
 | |
|       uses: ./setup-gradle
 | |
|       with:
 | |
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches
 | |
|     - name: Build with 3.1
 | |
|       working-directory: sources/test/jest/resources/cache-cleanup
 | |
|       run: gradle --no-daemon --build-cache -Dcommons_math3_version="3.1" build
 | |
| 
 | |
|   # Second build will use the cache from the first build, but cleanup should remove unused artifacts
 | |
|   assemble-build:
 | |
|     needs: full-build
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: ${{fromJSON(inputs.runner-os)}}
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     steps:
 | |
|     - name: Checkout sources
 | |
|       uses: actions/checkout@v4
 | |
|     - name: Initialize integ-test
 | |
|       uses: ./.github/actions/init-integ-test
 | |
| 
 | |
|     - name: Setup Gradle
 | |
|       uses: ./setup-gradle
 | |
|       with:
 | |
|         cache-read-only: false
 | |
|         gradle-home-cache-cleanup: true
 | |
|     - name: Build with 3.1.1
 | |
|       working-directory: sources/test/jest/resources/cache-cleanup
 | |
|       run: gradle --no-daemon --build-cache -Dcommons_math3_version="3.1.1" build
 | |
| 
 | |
|   check-clean-cache:
 | |
|     needs: assemble-build
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: ${{fromJSON(inputs.runner-os)}}
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     steps:
 | |
|     - name: Checkout sources
 | |
|       uses: actions/checkout@v4
 | |
|     - name: Initialize integ-test
 | |
|       uses: ./.github/actions/init-integ-test
 | |
| 
 | |
|     - name: Setup Gradle
 | |
|       uses: ./setup-gradle
 | |
|       with:
 | |
|         cache-read-only: true
 | |
|     - name: Report Gradle User Home
 | |
|       run: du -hc ~/.gradle/caches/modules-2
 | |
|     - name: Verify cleaned cache
 | |
|       shell: bash
 | |
|       run: |
 | |
|         if [ ! -e ~/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-math3/3.1.1 ]; then
 | |
|           echo "::error ::Should find commons-math3 3.1.1 in cache"
 | |
|           exit 1
 | |
|         fi
 | |
|         if [ -e ~/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-math3/3.1 ]; then
 | |
|           echo "::error ::Should NOT find commons-math3 3.1 in cache"
 | |
|           exit 1
 | |
|         fi
 |