mirror of
				https://hub.gitmirror.com/https://github.com/gradle/actions.git
				synced 2025-10-29 00:50:07 +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.
		
			
				
	
	
		
			101 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			101 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| name: Test wrapper validation
 | ||
| 
 | ||
| on:
 | ||
|   workflow_call:
 | ||
|     inputs:
 | ||
|       runner-os:
 | ||
|         type: string
 | ||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]'
 | ||
|       skip-dist:
 | ||
|         type: boolean
 | ||
|         default: false
 | ||
| 
 | ||
| env:
 | ||
|   SKIP_DIST: ${{ inputs.skip-dist }}
 | ||
| 
 | ||
| jobs:
 | ||
|   test-setup-gradle-validation:
 | ||
|     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: Run wrapper-validation-action
 | ||
|       id: setup-gradle
 | ||
|       uses: ./setup-gradle
 | ||
|       with:
 | ||
|         validate-wrappers: true
 | ||
|       continue-on-error: true
 | ||
| 
 | ||
|     - name: Check failure
 | ||
|       run: |
 | ||
|         if [ "${{ steps.setup-gradle.outcome}}" != "failure" ] ; then
 | ||
|           echo "Expected validation to fail, but it didn't"
 | ||
|           exit 1
 | ||
|         fi
 | ||
| 
 | ||
|   test-validation-success:
 | ||
|     runs-on: ubuntu-latest
 | ||
|     steps:
 | ||
|     - name: Checkout sources
 | ||
|       uses: actions/checkout@v4
 | ||
|     - name: Initialize integ-test
 | ||
|       uses: ./.github/actions/init-integ-test
 | ||
| 
 | ||
|     - name: Run wrapper-validation-action
 | ||
|       id: action-test
 | ||
|       uses: ./wrapper-validation
 | ||
|       with:
 | ||
|         # to allow the invalid wrapper jar present in test data
 | ||
|         allow-checksums: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
 | ||
| 
 | ||
|     - name: Check outcome
 | ||
|       env:
 | ||
|         # Evaluate workflow expressions here as env variable values instead of inside shell script
 | ||
|         # below to not accidentally inject code into shell script or break its syntax
 | ||
|         FAILED_WRAPPERS: ${{ steps.action-test.outputs.failed-wrapper }}
 | ||
|         FAILED_WRAPPERS_MATCHES: ${{ steps.action-test.outputs.failed-wrapper == '' }}
 | ||
|       run: |
 | ||
|         if [ "$FAILED_WRAPPERS_MATCHES" != "true" ] ; then
 | ||
|           echo "'outputs.failed-wrapper' has unexpected content: $FAILED_WRAPPERS"
 | ||
|           exit 1
 | ||
|         fi
 | ||
| 
 | ||
|   test-validation-error:
 | ||
|     runs-on: ubuntu-latest
 | ||
|     steps:
 | ||
|     - name: Checkout sources
 | ||
|       uses: actions/checkout@v4
 | ||
|     - name: Initialize integ-test
 | ||
|       uses: ./.github/actions/init-integ-test
 | ||
| 
 | ||
|     - name: Run wrapper-validation-action
 | ||
|       id: action-test
 | ||
|       uses: ./wrapper-validation
 | ||
|       # Expected to fail; validated below
 | ||
|       continue-on-error: true
 | ||
| 
 | ||
|     - name: Check outcome
 | ||
|       env:
 | ||
|         # Evaluate workflow expressions here as env variable values instead of inside shell script
 | ||
|         # below to not accidentally inject code into shell script or break its syntax
 | ||
|         VALIDATION_FAILED: ${{ steps.action-test.outcome == 'failure' }}
 | ||
|         FAILED_WRAPPERS: ${{ steps.action-test.outputs.failed-wrapper }}
 | ||
|         FAILED_WRAPPERS_MATCHES: ${{ steps.action-test.outputs.failed-wrapper == 'sources/test/jest/wrapper-validation/data/invalid/gradle-wrapper.jar|sources/test/jest/wrapper-validation/data/invalid/gradlе-wrapper.jar' }}
 | ||
|       run: |
 | ||
|         if [ "$VALIDATION_FAILED" != "true" ] ; then
 | ||
|           echo "Expected validation to fail, but it didn't"
 | ||
|           exit 1
 | ||
|         fi
 | ||
| 
 | ||
|         if [ "$FAILED_WRAPPERS_MATCHES" != "true" ] ; then
 | ||
|           echo "'outputs.failed-wrapper' has unexpected content: $FAILED_WRAPPERS"
 | ||
|           exit 1
 | ||
|         fi
 |