Skip to content

Commit

Permalink
Merge pull request #66 from tbroyer/outputs
Browse files Browse the repository at this point in the history
Add output parameters for the tool path and version
  • Loading branch information
Konrad Pabjan authored and GitHub committed May 27, 2020
2 parents 4003c04 + 457d7a4 commit 6e1616c
Show file tree
Hide file tree
Showing 6 changed files with 121 additions and 37 deletions.
11 changes: 7 additions & 4 deletions .github/workflows/workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,15 +35,16 @@ jobs:
if: runner.os == 'windows'
run: move "${{ runner.tool_cache }}" "${{ runner.tool_cache }}.old"
- name: Setup Java 13
id: setup-java
uses: ./
with:
java-version: 13.0.2
- name: Verify Java 13
if: runner.os != 'windows'
run: __tests__/verify-java.sh 13.0.2
run: __tests__/verify-java.sh 13.0.2 "${{ steps.setup-java.outputs.path }}" "${{ steps.setup-java.outputs.version }}"
- name: Verify Java 13 (Windows)
if: runner.os == 'windows'
run: __tests__/verify-java.ps1 13.0.2
run: __tests__/verify-java.ps1 13.0.2 "${{ steps.setup-java.outputs.path }}" "${{ steps.setup-java.outputs.version }}"

test-proxy:
runs-on: ubuntu-latest
Expand All @@ -62,11 +63,12 @@ jobs:
- name: Clear tool cache
run: rm -rf $RUNNER_TOOL_CACHE/*
- name: Setup Java 13
id: setup-java
uses: ./
with:
java-version: 13.0.2
- name: Verify Java 13
run: __tests__/verify-java.sh 13.0.2
run: __tests__/verify-java.sh 13.0.2 "${{ steps.setup-java.outputs.path }}" "${{ steps.setup-java.outputs.version }}"

test-bypass-proxy:
runs-on: ubuntu-latest
Expand All @@ -78,8 +80,9 @@ jobs:
- name: Clear tool cache
run: rm -rf $RUNNER_TOOL_CACHE/*
- name: Setup Java 13
id: setup-java
uses: ./
with:
java-version: 13.0.2
- name: Verify Java 13
run: __tests__/verify-java.sh 13.0.2
run: __tests__/verify-java.sh 13.0.2 "${{ steps.setup-java.outputs.path }}" "${{ steps.setup-java.outputs.version }}"
20 changes: 20 additions & 0 deletions __tests__/verify-java.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,23 @@ if (!$java_version.Contains($args[0]))
{
throw "Unexpected version"
}

if ($args.Count -lt 2 -or !$args[1])
{
throw "Must supply java path argument"
}

if ($args[1] -ne $Env:JAVA_HOME)
{
throw "Unexpected path"
}

if ($args.Count -lt 3 -or !$args[2])
{
throw "Must supply java version argument"
}

if ($args[0] -ne $args[2])
{
throw "Unexpected version"
}
24 changes: 22 additions & 2 deletions __tests__/verify-java.sh
Original file line number Diff line number Diff line change
@@ -1,13 +1,33 @@
#!/bin/sh

if [ -z "$1" ]; then
echo "Must supply java version argument"
echo "::error::Must supply java version argument"
exit 1
fi

java_version="$(java -version 2>&1)"
echo "Found java version: $java_version"
if [ -z "$(echo $java_version | grep --fixed-strings $1)" ]; then
echo "Unexpected version"
echo "::error::Unexpected version"
exit 1
fi

if [ -z "$2" ]; then
echo "::error::Must supply java path argument"
exit 1
fi

if [ "$2" != "$JAVA_HOME" ]; then
echo "::error::Unexpected path"
exit 1
fi

if [ -z "$3" ]; then
echo "::error::Must supply java version argument"
exit 1
fi

if [ "$1" != "$3" ]; then
echo "::error::Unexpected version"
exit 1
fi
5 changes: 5 additions & 0 deletions action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,11 @@ inputs:
settings-path:
description: 'Path to where the settings.xml file will be written. Default is ~/.m2.'
required: false
outputs:
path:
description: 'Path to where the java environment has been installed (same as $JAVA_HOME)'
version:
description: 'Actual version of the java environment that has been installed'
runs:
using: 'node12'
main: 'dist/index.js'
96 changes: 65 additions & 31 deletions dist/index.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions src/installer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,8 @@ export async function getJava(
core.exportVariable('JAVA_HOME', toolPath);
core.exportVariable(extendedJavaHome, toolPath);
core.addPath(path.join(toolPath, 'bin'));
core.setOutput('path', toolPath);
core.setOutput('version', version);
}

function getCacheVersionString(version: string) {
Expand Down

0 comments on commit 6e1616c

Please sign in to comment.