mirror of
				https://github.com/kitabisa/sonarqube-action.git
				synced 2025-10-31 21:24:18 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| set -e
 | |
| 
 | |
| REPOSITORY_NAME=$(basename "${GITHUB_REPOSITORY}")
 | |
| 
 | |
| if [[ ! -z "${INPUT_PASSWORD}" ]]; then
 | |
|   echo "::warning ::Running this GitHub Action without authentication token is NOT recommended!"
 | |
|   SONAR_PASSWORD="${INPUT_PASSWORD}"
 | |
| else
 | |
|   SONAR_PASSWORD=""
 | |
| fi
 | |
| 
 | |
| if [[ -f "${INPUT_PROJECTBASEDIR%/}pom.xml" ]]; then
 | |
|   echo "::error file=${INPUT_PROJECTBASEDIR%/}pom.xml::Maven project detected. You should run the goal 'org.sonarsource.scanner.maven:sonar' during build rather than using this GitHub Action."
 | |
|   exit 1
 | |
| fi
 | |
| 
 | |
| if [[ -f "${INPUT_PROJECTBASEDIR%/}build.gradle" ]]; then
 | |
|   echo "::error file=${INPUT_PROJECTBASEDIR%/}build.gradle::Gradle project detected. You should use the SonarQube plugin for Gradle during build rather than using this GitHub Action."
 | |
|   exit 1
 | |
| fi
 | |
| 
 | |
| unset JAVA_HOME
 | |
| 
 | |
| if [[ ! -f "${INPUT_PROJECTBASEDIR%/}sonar-project.properties" ]]; then
 | |
|   [[ -z "${INPUT_PROJECTKEY}" ]] && SONAR_PROJECTKEY="${REPOSITORY_NAME}" || SONAR_PROJECTKEY="${INPUT_PROJECTKEY}"
 | |
|   [[ -z "${INPUT_PROJECTNAME}" ]] && SONAR_PROJECTNAME="${REPOSITORY_NAME}" || SONAR_PROJECTNAME="${INPUT_PROJECTNAME}"
 | |
|   [[ -z "${INPUT_PROJECTVERSION}" ]] && SONAR_PROJECTVERSION="" || SONAR_PROJECTVERSION="${INPUT_PROJECTVERSION}"
 | |
|   sonar-scanner \
 | |
|     -Dsonar.host.url=${INPUT_HOST} \
 | |
|     -Dsonar.projectKey=${SONAR_PROJECTKEY} \
 | |
|     -Dsonar.projectName=${SONAR_PROJECTNAME} \
 | |
|     -Dsonar.projectVersion=${SONAR_PROJECTVERSION} \
 | |
|     -Dsonar.projectBaseDir=${INPUT_PROJECTBASEDIR} \
 | |
|     -Dsonar.login=${INPUT_LOGIN} \
 | |
|     -Dsonar.password=${SONAR_PASSWORD} \
 | |
|     -Dsonar.sources=. \
 | |
|     -Dsonar.sourceEncoding=${INPUT_ENCODING}
 | |
| else
 | |
|   sonar-scanner \
 | |
|     -Dsonar.host.url=${INPUT_HOST} \
 | |
|     -Dsonar.login=${INPUT_LOGIN} \
 | |
|     -Dsonar.password=${SONAR_PASSWORD}
 | |
| fi
 | 
