mirror of
				https://hub.gitmirror.com/https://github.com/gradle/actions.git
				synced 2025-10-29 00:50:07 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			202 lines
		
	
	
		
			7.3 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			202 lines
		
	
	
		
			7.3 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| name: Test develocity injection
 | |
| 
 | |
| 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
 | |
|     secrets:
 | |
|       DEVELOCITY_ACCESS_KEY:
 | |
|         required: true
 | |
| 
 | |
| env:
 | |
|   SKIP_DIST: ${{ inputs.skip-dist }}
 | |
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: inject-develocity-${{ inputs.cache-key-prefix }}
 | |
| 
 | |
| jobs:
 | |
|   inject-develocity:
 | |
|     env:
 | |
|       DEVELOCITY_INJECTION_ENABLED: true
 | |
|       DEVELOCITY_URL: https://ge.solutions-team.gradle.com
 | |
|       DEVELOCITY_PLUGIN_VERSION: ${{ matrix.plugin-version }}
 | |
|       DEVELOCITY_CCUD_PLUGIN_VERSION: '2.0'
 | |
|       ${{matrix.accessKeyEnv}}: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         gradle: [current, 7.6.2, 6.9.4, 5.6.4]
 | |
|         os: ${{fromJSON(inputs.runner-os)}}
 | |
|         plugin-version: [3.16.2, 3.17.5]
 | |
|         include:
 | |
|         - plugin-version: 3.16.2
 | |
|           accessKeyEnv: GRADLE_ENTERPRISE_ACCESS_KEY
 | |
|         - plugin-version: 3.17.5
 | |
|           accessKeyEnv: DEVELOCITY_ACCESS_KEY
 | |
| 
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     steps:
 | |
|     - name: Checkout sources
 | |
|       uses: actions/checkout@v4
 | |
|     - name: Initialize integ-test
 | |
|       uses: ./.github/actions/init-integ-test
 | |
| 
 | |
|     - name: Setup Java
 | |
|       uses: actions/setup-java@v4
 | |
|       with:
 | |
|         distribution: temurin
 | |
|         java-version: 11
 | |
|     - name: Setup Gradle
 | |
|       id: setup-gradle
 | |
|       uses: ./setup-gradle
 | |
|       with:
 | |
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches
 | |
|         gradle-version: ${{ matrix.gradle }}
 | |
|     - name: Run Gradle build
 | |
|       id: gradle
 | |
|       working-directory: .github/workflow-samples/no-ge
 | |
|       run: gradle help
 | |
|     - name: Check Build Scan url
 | |
|       if: ${{ !steps.gradle.outputs.build-scan-url }}
 | |
|       uses: actions/github-script@v7
 | |
|       with:
 | |
|         script: |
 | |
|           core.setFailed('No Build Scan detected')
 | |
|     - name: Check short lived token (DEVELOCITY_ACCESS_KEY)
 | |
|       run: "[ ${#DEVELOCITY_ACCESS_KEY} -gt 500 ] || (echo 'DEVELOCITY_ACCESS_KEY does not look like a short lived token'; exit 1)"
 | |
|     - name: Check short lived token (GRADLE_ENTERPRISE_ACCESS_KEY)
 | |
|       run: "[ ${#GRADLE_ENTERPRISE_ACCESS_KEY} -gt 500 ] || (echo 'GRADLE_ENTERPRISE_ACCESS_KEY does not look like a short lived token'; exit 1)"
 | |
| 
 | |
|   inject-develocity-with-access-key:
 | |
|     env:
 | |
|       DEVELOCITY_INJECTION_ENABLED: true
 | |
|       DEVELOCITY_URL: 'https://ge.solutions-team.gradle.com'
 | |
|       DEVELOCITY_PLUGIN_VERSION: ${{ matrix.plugin-version }}
 | |
|       DEVELOCITY_CCUD_PLUGIN_VERSION: '2.0'
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         gradle: [current, 7.6.2, 6.9.4, 5.6.4]
 | |
|         os: ${{fromJSON(inputs.runner-os)}}
 | |
|         plugin-version: [3.16.2, 3.17.5]
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     steps:
 | |
|       - name: Checkout sources
 | |
|         uses: actions/checkout@v4
 | |
|       - name: Initialize integ-test
 | |
|         uses: ./.github/actions/init-integ-test
 | |
|       - name: Setup Java
 | |
|         uses: actions/setup-java@v4
 | |
|         with:
 | |
|           distribution: temurin
 | |
|           java-version: 8
 | |
|       - name: Setup Gradle
 | |
|         id: setup-gradle
 | |
|         uses: ./setup-gradle
 | |
|         with:
 | |
|           cache-read-only: false # For testing, allow writing cache entries on non-default branches
 | |
|           gradle-version: ${{ matrix.gradle }}
 | |
|           develocity-access-key: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
 | |
|           develocity-token-expiry: 1
 | |
|       - name: Run Gradle build
 | |
|         id: gradle
 | |
|         working-directory: .github/workflow-samples/no-ge
 | |
|         run: gradle help
 | |
|       - name: Check short lived token (DEVELOCITY_ACCESS_KEY)
 | |
|         run: "[ ${#DEVELOCITY_ACCESS_KEY} -gt 500 ] || (echo 'DEVELOCITY_ACCESS_KEY does not look like a short lived token'; exit 1)"
 | |
|       - name: Check short lived token (GRADLE_ENTERPRISE_ACCESS_KEY)
 | |
|         run: "[ ${#GRADLE_ENTERPRISE_ACCESS_KEY} -gt 500 ] || (echo 'GRADLE_ENTERPRISE_ACCESS_KEY does not look like a short lived token'; exit 1)"
 | |
|       - name: Check Build Scan url
 | |
|         if: ${{ !steps.gradle.outputs.build-scan-url }}
 | |
|         uses: actions/github-script@v7
 | |
|         with:
 | |
|           script: |
 | |
|             core.setFailed('No Build Scan detected')
 | |
| 
 | |
|   inject-develocity-short-lived-token-failed:
 | |
|     env:
 | |
|       DEVELOCITY_INJECTION_ENABLED: true
 | |
|       DEVELOCITY_URL: 'https://localhost:3333/'
 | |
|       DEVELOCITY_PLUGIN_VERSION: ${{ matrix.plugin-version }}
 | |
|       DEVELOCITY_CCUD_PLUGIN_VERSION: '2.0'
 | |
|       # Access key also set as an env var, we want to check it does not leak
 | |
|       GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
 | |
|       DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         gradle: [ current, 7.6.2, 6.9.4, 5.6.4 ]
 | |
|         os: ${{fromJSON(inputs.runner-os)}}
 | |
|         plugin-version: [ 3.16.2, 3.17.5 ]
 | |
|     runs-on: ubuntu-latest
 | |
|     steps:
 | |
|       - name: Checkout sources
 | |
|         uses: actions/checkout@v4
 | |
|       - name: Initialize integ-test
 | |
|         uses: ./.github/actions/init-integ-test
 | |
| 
 | |
|       - name: Setup Java
 | |
|         uses: actions/setup-java@v4
 | |
|         with:
 | |
|           distribution: temurin
 | |
|           java-version: 8
 | |
|       - name: Setup Gradle
 | |
|         id: setup-gradle
 | |
|         uses: ./setup-gradle
 | |
|         with:
 | |
|           cache-read-only: false # For testing, allow writing cache entries on non-default branches
 | |
|           develocity-access-key: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
 | |
|       - name: Run Gradle build
 | |
|         id: gradle
 | |
|         working-directory: .github/workflow-samples/no-ge
 | |
|         run: gradle help
 | |
|       - name: Check access key is not blank (DEVELOCITY_ACCESS_KEY)
 | |
|         run: "[ \"${DEVELOCITY_ACCESS_KEY}\" != \"\" ] || (echo 'using DEVELOCITY_ACCESS_KEY!'; exit 1)"
 | |
|       - name: Check access key is not blank (GRADLE_ENTERPRISE_ACCESS_KEY)
 | |
|         run: "[ \"${GRADLE_ENTERPRISE_ACCESS_KEY}\" != \"\" ] || (echo 'GRADLE_ENTERPRISE_ACCESS_KEY is still supported in v3!'; exit 1)"
 | |
| 
 | |
|   inject-develocity-with-access-key-from-input-actions:
 | |
|     env:
 | |
|       DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         gradle: [ current, 7.6.2, 6.9.4, 5.6.4 ]
 | |
|         os: ${{fromJSON(inputs.runner-os)}}
 | |
|         plugin-version: [ 3.16.2, 3.17.5 ]
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     steps:
 | |
|       - name: Checkout sources
 | |
|         uses: actions/checkout@v4
 | |
|       - name: Initialize integ-test
 | |
|         uses: ./.github/actions/init-integ-test
 | |
|       - name: Setup Java
 | |
|         uses: actions/setup-java@v4
 | |
|         with:
 | |
|           distribution: temurin
 | |
|           java-version: 8
 | |
|       - name: Setup Gradle
 | |
|         id: setup-gradle
 | |
|         uses: ./setup-gradle
 | |
|         with:
 | |
|           cache-read-only: false # For testing, allow writing cache entries on non-default branches
 | |
|           gradle-version: ${{ matrix.gradle }}
 | |
|           develocity-injection-enabled: true
 | |
|           develocity-url: 'https://ge.solutions-team.gradle.com'
 | |
|           develocity-plugin-version: ${{ matrix.plugin-version }}
 | |
|       - name: Run Gradle build
 | |
|         id: gradle
 | |
|         working-directory: .github/workflow-samples/no-ge
 | |
|         run: gradle help
 | |
|       - name: Check Build Scan url
 | |
|         if: ${{ !steps.gradle.outputs.build-scan-url }}
 | |
|         uses: actions/github-script@v7
 | |
|         with:
 | |
|           script: |
 | |
|             core.setFailed('No Build Scan detected')
 | 
