CI_LINUX #175
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This is a basic workflow to help you get started with Actions | |
name: CI_LINUX | |
# Controls when the action will run. Triggers the workflow after CI_WINDOWS workflow is completed | |
# only for the master branch | |
on: | |
workflow_run: | |
workflows: ["CI_WINDOWS"] | |
branches: [master] | |
types: | |
- completed | |
# This workflow run is made of two jobs "check" and "build_linux" | |
jobs: | |
check: | |
name: Check changed files | |
if: ${{ github.event.workflow_run.conclusion == 'success' }} | |
outputs: | |
run_job: ${{ steps.check_files.outputs.run_job }} | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 2 | |
- name: check files | |
id: check_files | |
run: | | |
echo "=============== list changed files ===============" | |
git diff --name-only HEAD^ HEAD | |
echo "run_job=false" >> $GITHUB_OUTPUT | |
echo "========== check paths of changed files ==========" | |
git diff --name-only HEAD^ HEAD > files.txt | |
while IFS= read -r file | |
do | |
echo $file | |
if [[ $file == ".github/workflows/linux.yaml"* ]]; then | |
echo "This file is under the directory '.github/workflows/linux.yaml'." | |
echo "run_job=true" >> $GITHUB_OUTPUT | |
break | |
fi | |
if [[ $file == "src/jvm/src/"* ]]; then | |
echo "This file is under the directory 'src/jvm/src'." | |
echo "run_job=true" >> $GITHUB_OUTPUT | |
break | |
fi | |
if [[ $file == "tests/jvm/"* ]]; then | |
echo "This file is under the directory 'tests/jvm/'." | |
echo "run_job=true" >> $GITHUB_OUTPUT | |
break | |
fi | |
echo "This files are not in a source directory no action required" | |
done < files.txt | |
# This workflow contains a single job called "build" | |
build_linux: | |
needs: check | |
if: needs.check.outputs.run_job == 'true' | |
# The type of runner that the job will run on | |
runs-on: ubuntu-latest | |
# Steps represent a sequence of tasks that will be executed as part of the job | |
steps: | |
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: '1' | |
- name: Extract file | |
run: .github/workflows/GetLicense.ps1 ${{ secrets.JCOBRIDGE_2_5_9 }} $env:GITHUB_WORKSPACE/JCOBridge.lic | |
shell: pwsh | |
# Runs a set of commands using the runners shell | |
- name: Build JCOReflectorCLI | |
run: | | |
dotnet build --no-incremental --framework net6.0 --configuration Release src/net/JCOReflectorCLI.sln | |
dotnet build --no-incremental --framework net7.0 --configuration Release src/net/JCOReflectorCLI.sln | |
dotnet build --no-incremental --framework net8.0 --configuration Release src/net/JCOReflectorCLI.sln | |
- name: Build Java files | |
run: | | |
dotnet bin/net6.0/MASES.JCOReflectorCLI.dll -JobType Build -JDKFolder $JAVA_HOME_11_X64 -JobFile .github/workflows/build_linux.job | |
dotnet bin/net7.0/MASES.JCOReflectorCLI.dll -JobType Build -JDKFolder $JAVA_HOME_11_X64 -JobFile .github/workflows/build_linux.job | |
dotnet bin/net8.0/MASES.JCOReflectorCLI.dll -JobType Build -JDKFolder $JAVA_HOME_11_X64 -JobFile .github/workflows/build_linux.job | |
- name: Build JAR files | |
run: | | |
dotnet bin/net6.0/MASES.JCOReflectorCLI.dll -JobType CreateJars -JDKFolder $JAVA_HOME_11_X64 -JobFile .github/workflows/createjars_core6.0_linux.job | |
dotnet bin/net7.0/MASES.JCOReflectorCLI.dll -JobType CreateJars -JDKFolder $JAVA_HOME_11_X64 -JobFile .github/workflows/createjars_core7.0_linux.job | |
dotnet bin/net8.0/MASES.JCOReflectorCLI.dll -JobType CreateJars -JDKFolder $JAVA_HOME_11_X64 -JobFile .github/workflows/createjars_core8.0_linux.job | |
- uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: '17' | |
cache: 'maven' | |
- name: Build Java test source file .NET 6.0 | |
run: javac -cp ./bin/net6.0/JCOReflector.jar ./tests/jvm/java/src/hierarchy/*.java ./tests/jvm/java/src/mscorlib/*.java ./tests/jvm/java/src/nettest/*.java ./tests/jvm/java/src/refout/*.java | |
- run: java -cp "./bin/net6.0/JCOReflector.jar:./tests/jvm/java/src/" mscorlib.HelloLock --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: java -cp "./bin/net6.0/JCOReflector.jar:./tests/jvm/java/src/" mscorlib.HelloNET --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: java -cp "./bin/net6.0/JCOReflector.jar:./tests/jvm/java/src/" mscorlib.HelloNETEvent --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: java -cp "./bin/net6.0/JCOReflector.jar:./tests/jvm/java/src/" mscorlib.HelloIterator --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: java -cp "./bin/net6.0/JCOReflector.jar:./tests/jvm/java/src/" hierarchy.HelloHierarchy --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: java -cp "./bin/net6.0/JCOReflector.jar:./tests/jvm/java/src/" hierarchy.HelloInterfaces --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: java -cp "./bin/net6.0/JCOReflector.jar:./tests/jvm/java/src/" nettest.HelloNETSocket -server 127.0.0.1 --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: java -cp "./bin/net6.0/JCOReflector.jar:./tests/jvm/java/src/" nettest.HelloNETSocket -async -server 127.0.0.1 --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
#java -cp "./bin/net6.0/JCOReflector.jar;./tests/jvm/java/src/" refout.HelloRefOutBase | |
#java -cp "./bin/net6.0/JCOReflector.jar;./tests/jvm/java/src/" refout.HelloRefOut | |
- name: Build Java test source file .NET 7.0 | |
run: javac -cp ./bin/net7.0/JCOReflector.jar ./tests/jvm/java/src/hierarchy/*.java ./tests/jvm/java/src/mscorlib/*.java ./tests/jvm/java/src/nettest/*.java ./tests/jvm/java/src/refout/*.java | |
- run: java -cp "./bin/net7.0/JCOReflector.jar:./tests/jvm/java/src/" mscorlib.HelloLock --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: java -cp "./bin/net7.0/JCOReflector.jar:./tests/jvm/java/src/" mscorlib.HelloNET --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: java -cp "./bin/net7.0/JCOReflector.jar:./tests/jvm/java/src/" mscorlib.HelloNETEvent --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: java -cp "./bin/net7.0/JCOReflector.jar:./tests/jvm/java/src/" mscorlib.HelloIterator --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: java -cp "./bin/net7.0/JCOReflector.jar:./tests/jvm/java/src/" hierarchy.HelloHierarchy --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: java -cp "./bin/net7.0/JCOReflector.jar:./tests/jvm/java/src/" hierarchy.HelloInterfaces --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: java -cp "./bin/net7.0/JCOReflector.jar:./tests/jvm/java/src/" nettest.HelloNETSocket -server 127.0.0.1 --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: java -cp "./bin/net7.0/JCOReflector.jar:./tests/jvm/java/src/" nettest.HelloNETSocket -async -server 127.0.0.1 --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
#java -cp "./bin/net7.0/JCOReflector.jar;./tests/jvm/java/src/" refout.HelloRefOutBase | |
#java -cp "./bin/net7.0/JCOReflector.jar;./tests/jvm/java/src/" refout.HelloRefOut | |
- name: Build Java test source file .NET 8.0 | |
run: javac -cp ./bin/net8.0/JCOReflector.jar ./tests/jvm/java/src/hierarchy/*.java ./tests/jvm/java/src/mscorlib/*.java ./tests/jvm/java/src/nettest/*.java ./tests/jvm/java/src/refout/*.java | |
- run: java -cp "./bin/net8.0/JCOReflector.jar:./tests/jvm/java/src/" mscorlib.HelloLock --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: java -cp "./bin/net8.0/JCOReflector.jar:./tests/jvm/java/src/" mscorlib.HelloNET --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: java -cp "./bin/net8.0/JCOReflector.jar:./tests/jvm/java/src/" mscorlib.HelloNETEvent --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: java -cp "./bin/net8.0/JCOReflector.jar:./tests/jvm/java/src/" mscorlib.HelloIterator --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: java -cp "./bin/net8.0/JCOReflector.jar:./tests/jvm/java/src/" hierarchy.HelloHierarchy --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: java -cp "./bin/net8.0/JCOReflector.jar:./tests/jvm/java/src/" hierarchy.HelloInterfaces --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: java -cp "./bin/net8.0/JCOReflector.jar:./tests/jvm/java/src/" nettest.HelloNETSocket -server 127.0.0.1 --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: java -cp "./bin/net8.0/JCOReflector.jar:./tests/jvm/java/src/" nettest.HelloNETSocket -async -server 127.0.0.1 --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
#java -cp "./bin/net8.0/JCOReflector.jar;./tests/jvm/java/src/" refout.HelloRefOutBase | |
#java -cp "./bin/net8.0/JCOReflector.jar;./tests/jvm/java/src/" refout.HelloRefOut | |
- name: Download and install Scala package | |
run: | | |
sudo apt update | |
sudo apt-get install unzip | |
sudo apt-get install zip | |
curl -s "https://get.sdkman.io" | bash | |
source "$HOME/.sdkman/bin/sdkman-init.sh" | |
sdk install scala 2.13.5 | |
- name: Build Scala test source file .NET 6.0 | |
run: | | |
source "$HOME/.sdkman/bin/sdkman-init.sh" | |
mkdir ./tests/jvm/scala/output | |
scalac -cp "./bin/net6.0/*" -d ./tests/jvm/scala/output ./tests/jvm/scala/src/main/scala/hierarchy/* ./tests/jvm/scala/src/main/scala/mscorlib/* ./tests/jvm/scala/src/main/scala/nettest/* ./tests/jvm/scala/src/main/scala/refout/* | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net6.0/*:./tests/jvm/scala/output" mscorlib.HelloLock --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net6.0/*:./tests/jvm/scala/output" mscorlib.HelloNet --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net6.0/*:./tests/jvm/scala/output" mscorlib.HelloNETEvent --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net6.0/*:./tests/jvm/scala/output" mscorlib.HelloIterator --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net6.0/*:./tests/jvm/scala/output" hierarchy.HelloHierarchy --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net6.0/*:./tests/jvm/scala/output" hierarchy.HelloInterfaces --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net6.0/*:./tests/jvm/scala/output" nettest.HelloNETSocket --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net6.0/*:./tests/jvm/scala/output" nettest.HelloNETSocket -async --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net6.0/*:./tests/jvm/scala/output" refout.HelloRefOutBase --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net6.0/*:./tests/jvm/scala/output" refout.HelloRefOut --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET6.App | |
continue-on-error: true | |
- run: rm -rf ./tests/jvm/scala/output | |
- name: Build Scala test source file .NET 7.0 | |
run: | | |
source "$HOME/.sdkman/bin/sdkman-init.sh" | |
mkdir ./tests/jvm/scala/output | |
scalac -cp "./bin/net7.0/*" -d ./tests/jvm/scala/output ./tests/jvm/scala/src/main/scala/hierarchy/* ./tests/jvm/scala/src/main/scala/mscorlib/* ./tests/jvm/scala/src/main/scala/nettest/* ./tests/jvm/scala/src/main/scala/refout/* | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net7.0/*:./tests/jvm/scala/output" mscorlib.HelloLock --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net7.0/*:./tests/jvm/scala/output" mscorlib.HelloNet --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net7.0/*:./tests/jvm/scala/output" mscorlib.HelloNETEvent --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net7.0/*:./tests/jvm/scala/output" mscorlib.HelloIterator --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net7.0/*:./tests/jvm/scala/output" hierarchy.HelloHierarchy --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net7.0/*:./tests/jvm/scala/output" hierarchy.HelloInterfaces --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net7.0/*:./tests/jvm/scala/output" nettest.HelloNETSocket --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net7.0/*:./tests/jvm/scala/output" nettest.HelloNETSocket -async --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net7.0/*:./tests/jvm/scala/output" refout.HelloRefOutBase --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net7.0/*:./tests/jvm/scala/output" refout.HelloRefOut --LicensePath:$GITHUB_WORKSPACE --CoreCLRApp:Microsoft.NET7.App | |
continue-on-error: true | |
- run: rm -rf ./tests/jvm/scala/output | |
- name: Build Scala test source file .NET 8.0 | |
run: | | |
source "$HOME/.sdkman/bin/sdkman-init.sh" | |
mkdir ./tests/jvm/scala/output | |
scalac -cp "./bin/net8.0/*" -d ./tests/jvm/scala/output ./tests/jvm/scala/src/main/scala/hierarchy/* ./tests/jvm/scala/src/main/scala/mscorlib/* ./tests/jvm/scala/src/main/scala/nettest/* ./tests/jvm/scala/src/main/scala/refout/* | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net8.0/*:./tests/jvm/scala/output" mscorlib.HelloLock --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net8.0/*:./tests/jvm/scala/output" mscorlib.HelloNet --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net8.0/*:./tests/jvm/scala/output" mscorlib.HelloNETEvent --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net8.0/*:./tests/jvm/scala/output" mscorlib.HelloIterator --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net8.0/*:./tests/jvm/scala/output" hierarchy.HelloHierarchy --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net8.0/*:./tests/jvm/scala/output" hierarchy.HelloInterfaces --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net8.0/*:./tests/jvm/scala/output" nettest.HelloNETSocket --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net8.0/*:./tests/jvm/scala/output" nettest.HelloNETSocket -async --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net8.0/*:./tests/jvm/scala/output" refout.HelloRefOutBase --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: source "$HOME/.sdkman/bin/sdkman-init.sh" && scala -nobootcp -toolcp "./bin/net8.0/*:./tests/jvm/scala/output" refout.HelloRefOut --LicensePath:$GITHUB_WORKSPACE | |
continue-on-error: true | |
- run: rm -rf ./tests/jvm/scala/output |