mirror of
				https://gitea.com/actions/setup-java.git
				synced 2025-10-25 07:16:33 +00:00 
			
		
		
		
	![dependabot[bot]](/assets/img/avatar_default.png) dded088883
			
		
	
	dded088883
	
	
	
		
			
			Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
		
			
				
	
	
		
			154 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			154 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| name: Validate publishing functionality
 | |
| 
 | |
| on:
 | |
|   push:
 | |
|     branches:
 | |
|       - main
 | |
|       - releases/*
 | |
|     paths-ignore:
 | |
|       - '**.md'
 | |
|   pull_request:
 | |
|     paths-ignore:
 | |
|       - '**.md'
 | |
| 
 | |
| defaults:
 | |
|   run:
 | |
|     shell: pwsh
 | |
| 
 | |
| jobs:
 | |
|   setup-java-publishing:
 | |
|     name: Validate settings.xml
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [macos-latest, windows-latest, ubuntu-latest]
 | |
|     steps:
 | |
|       - name: Checkout
 | |
|         uses: actions/checkout@v5
 | |
|       - name: setup-java
 | |
|         uses: ./
 | |
|         id: setup-java
 | |
|         with:
 | |
|           distribution: 'adopt'
 | |
|           java-version: '11'
 | |
|           server-id: maven
 | |
|           server-username: MAVEN_USERNAME
 | |
|           server-password: MAVEN_CENTRAL_TOKEN
 | |
|           gpg-passphrase: MAVEN_GPG_PASSPHRASE
 | |
|       - name: Validate settings.xml
 | |
|         run: |
 | |
|           $xmlPath = Join-Path $HOME ".m2" "settings.xml"
 | |
|           Get-Content $xmlPath | ForEach-Object { Write-Host $_ }
 | |
| 
 | |
|           [xml]$xml = Get-Content $xmlPath
 | |
|           $servers = $xml.settings.servers.server
 | |
|           if (($servers[0].id -ne 'maven') -or ($servers[0].username -ne '${env.MAVEN_USERNAME}') -or ($servers[0].password -ne '${env.MAVEN_CENTRAL_TOKEN}')) {
 | |
|             throw "Generated XML file is incorrect"
 | |
|           }
 | |
| 
 | |
|           if (($servers[1].id -ne 'gpg.passphrase') -or ($servers[1].passphrase -ne '${env.MAVEN_GPG_PASSPHRASE}')) {
 | |
|             throw "Generated XML file is incorrect"
 | |
|           }
 | |
| 
 | |
|   test-publishing-overwrite:
 | |
|     name: settings.xml is overwritten if flag is true
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [macos-latest, windows-latest, ubuntu-latest]
 | |
|     steps:
 | |
|       - name: Checkout
 | |
|         uses: actions/checkout@v5
 | |
|       - name: Create fake settings.xml
 | |
|         run: |
 | |
|           $xmlDirectory = Join-Path $HOME ".m2"
 | |
|           $xmlPath = Join-Path $xmlDirectory "settings.xml"
 | |
|           New-Item -Path $xmlDirectory -ItemType Directory
 | |
|           Set-Content -Path $xmlPath -Value "Fake_XML"
 | |
|       - name: setup-java
 | |
|         uses: ./
 | |
|         id: setup-java
 | |
|         with:
 | |
|           distribution: 'adopt'
 | |
|           java-version: '11'
 | |
|           server-id: maven
 | |
|           server-username: MAVEN_USERNAME
 | |
|           server-password: MAVEN_CENTRAL_TOKEN
 | |
|           gpg-passphrase: MAVEN_GPG_PASSPHRASE
 | |
|       - name: Validate settings.xml is overwritten
 | |
|         run: |
 | |
|           $xmlPath = Join-Path $HOME ".m2" "settings.xml"
 | |
|           Get-Content $xmlPath | ForEach-Object { Write-Host $_ }
 | |
| 
 | |
|           $content = Get-Content $xmlPath -Raw
 | |
|           if ($content -notlike '*maven*') {
 | |
|             throw "settings.xml file is not overwritten"
 | |
|           }
 | |
| 
 | |
|   test-publishing-skip-overwrite:
 | |
|     name: settings.xml is not overwritten if flag is false
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [macos-latest, windows-latest, ubuntu-latest]
 | |
|     steps:
 | |
|       - name: Checkout
 | |
|         uses: actions/checkout@v5
 | |
|       - name: Create fake settings.xml
 | |
|         run: |
 | |
|           $xmlDirectory = Join-Path $HOME ".m2"
 | |
|           $xmlPath = Join-Path $xmlDirectory "settings.xml"
 | |
|           New-Item -Path $xmlDirectory -ItemType Directory
 | |
|           Set-Content -Path $xmlPath -Value "Fake_XML"
 | |
|       - name: setup-java
 | |
|         uses: ./
 | |
|         id: setup-java
 | |
|         with:
 | |
|           distribution: 'adopt'
 | |
|           java-version: '11'
 | |
|           server-id: maven
 | |
|           server-username: MAVEN_USERNAME
 | |
|           server-password: MAVEN_CENTRAL_TOKEN
 | |
|           overwrite-settings: false
 | |
|           gpg-passphrase: MAVEN_GPG_PASSPHRASE
 | |
|       - name: Validate that settings.xml is not overwritten
 | |
|         run: |
 | |
|           $xmlPath = Join-Path $HOME ".m2" "settings.xml"
 | |
|           $content = Get-Content -Path $xmlPath -Raw
 | |
|           Write-Host $content
 | |
| 
 | |
|           if ($content -notlike "*Fake_XML*") {
 | |
|             throw "settings.xml file was overwritten but it should not be"
 | |
|           }
 | |
| 
 | |
|   test-publishing-custom-location:
 | |
|     name: settings.xml in custom location
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [macos-latest, windows-latest, ubuntu-latest]
 | |
|     steps:
 | |
|       - name: Checkout
 | |
|         uses: actions/checkout@v5
 | |
|       - name: setup-java
 | |
|         uses: ./
 | |
|         id: setup-java
 | |
|         with:
 | |
|           distribution: 'adopt'
 | |
|           java-version: '11'
 | |
|           server-id: maven
 | |
|           server-username: MAVEN_USERNAME
 | |
|           server-password: MAVEN_CENTRAL_TOKEN
 | |
|           gpg-passphrase: MAVEN_GPG_PASSPHRASE
 | |
|           settings-path: ${{ runner.temp }}
 | |
|       - name: Validate settings.xml location
 | |
|         run: |
 | |
|           $path = Join-Path $env:RUNNER_TEMP "settings.xml"
 | |
|           if (-not (Test-Path $path)) {
 | |
|             throw "settings.xml file is not found in expected location"
 | |
|           }
 |