diff --git a/.github/workflows/CD.yml b/.github/workflows/CD.yml
index 06dbb094d2..f6788a095c 100644
--- a/.github/workflows/CD.yml
+++ b/.github/workflows/CD.yml
@@ -1,36 +1,71 @@
+# This GitHub Actions workflow is named "CD" and is triggered manually via the `workflow_dispatch` event.
+# It accepts the following inputs:
+# - major: Year (number, required, default: '24')
+# - minor: Release (number, required, default: '4')
+# - build: Beta (number, required, default: '0')
+# - revision: Alpha (number, required, default: '0')
+# - SSLCert: Add Certificate (choice, required, default: 'No', options: ['Yes', 'No'])
+#
+# The workflow consists of the following jobs:
+# 1. Create-version-Number:
+# - Runs on `ubuntu-latest`.
+# - Generates version numbers and tags based on the input values.
+# - Outputs `version_number` and `version_tag`.
+# - Caches the generated version text file.
+#
+# 2. CI:
+# - Depends on the `Create-version-Number` job.
+# - Uses the `.github/workflows/CI.yml` workflow.
+# - Inherits secrets.
+#
+# 3. Release:
+# - Depends on the `CI` job.
+# - Uses the `.github/workflows/Release.yml` workflow.
+# - Inherits secrets.
+#
+# 4. Deploy:
+# - Depends on the `Release` job.
+# - Uses the `.github/workflows/Deploy.yml` workflow.
+#
+# 5. Docker:
+# - Depends on the `CI` job.
+# - Uses the `.github/workflows/Docker.yml` workflow.
+# - Inherits secrets.
+
name: CD
on:
+ # Trigger the workflow manually with the `workflow_dispatch` event
workflow_dispatch:
- inputs:
- major:
- description: Year
- type: number
- required: true
- default: '24'
- minor:
- description: Release
- type: number
- required: true
- default: '4'
- build:
- description: Beta
- type: number
- required: true
- default: '0'
- revision:
- description: Alpha
- type: number
- required: true
- default: '0'
- SSLCert:
- description: "Add Certificate"
- type: choice
- required: true
- default: 'No'
- options:
- - 'Yes'
- - 'No'
+ inputs:
+ major:
+ description: Year # The year of the release, e.g., 24 for 2024
+ type: number
+ required: true
+ default: '24'
+ minor:
+ description: Release # The minor version of the release, e.g., 4 for the fourth release of the year
+ type: number
+ required: true
+ default: '4'
+ build:
+ description: Beta # The build number, typically used for beta versions
+ type: number
+ required: true
+ default: '0'
+ revision:
+ description: Alpha # The revision number, typically used for alpha versions
+ type: number
+ required: true
+ default: '0'
+ SSLCert:
+ description: "Add Certificate" # Option to add an SSL certificate
+ type: choice
+ required: true
+ default: 'No'
+ options:
+ - 'Yes' # Add SSL certificate
+ - 'No' # Do not add SSL certificate
jobs:
Create-version-Number:
runs-on: ubuntu-latest
diff --git a/.github/workflows/CI-2.yml b/.github/workflows/CI-2.yml
index ad7b6fea86..1b47e7447d 100644
--- a/.github/workflows/CI-2.yml
+++ b/.github/workflows/CI-2.yml
@@ -21,10 +21,10 @@ jobs:
Build:
name: Build Stage
# needs: Codacy
- uses: ./.github/workflows/GingerBuild-2.yml
+ uses: ./.github/workflows/GingerBuild.yml
Test:
name: Test Stage
needs: Build
- uses: ./.github/workflows/GingerTests-2.yml
+ uses: ./.github/workflows/GingerTests.yml
secrets: inherit
diff --git a/.github/workflows/GingerBuild-2.yml b/.github/workflows/GingerBuild-2.yml
deleted file mode 100644
index 1c443627d7..0000000000
--- a/.github/workflows/GingerBuild-2.yml
+++ /dev/null
@@ -1,104 +0,0 @@
-name: Ginger_Builder
-
-on:
- workflow_call:
-
-jobs:
- build:
- runs-on: windows-latest
-
- env:
- BUILD_CONFIGURATION: Release
-
- steps:
-# ------------------------------------------------------------------------------------------------------
-# Createin version Tag & Number variables - only for CD Job
-# ------------------------------------------------------------------------------------------------------
- - name: Restore Version text file
- if: ${{github.workflow == 'CD'}}
- uses: actions/cache@v3.2.6
- with:
- path: ./version.txt
- key: cache-version-${{ github.run_number }}
- enableCrossOsArchive:
- true
-
- - name: Create variables from Artifacts file
- if: ${{github.workflow == 'CD'}}
- shell: bash
- run: |
- source version.txt
- echo $TAG
- echo "gingernumber=$NUMBER" >> $GITHUB_ENV
- echo "gingertag=$TAG" >> $GITHUB_ENV
-
-# ------------------------------------------------------------------------------------------------------
-# Copy Ginger repo
-# ------------------------------------------------------------------------------------------------------
- - uses: actions/checkout@v3
-
-# ------------------------------------------------------------------------------------------------------
-# Update Ginger Version
-# ------------------------------------------------------------------------------------------------------
- - name: 'Update Assembly'
- if: ${{github.workflow == 'CD'}}
- run: |
- $save=((Get-Content .\Ginger\GingerCoreCommon/GingerCoreCommon.csproj) -replace '*.*.*.*','${{ env.gingernumber}}') -replace '*.*.*.*','${{ env.gingernumber}}'
- echo $save > .\Ginger\GingerCoreCommon/GingerCoreCommon.csproj
- $save=(Get-Content .\Ginger\GingerInstallerScript.iss) -replace '#define MyAppVersion "*.*.*.*"','#define MyAppVersion "${{ env.gingernumber}}"'
- echo $save > .\Ginger\GingerInstallerScript.iss
- $save=(Get-Content .\Ginger\GingerCore\Drivers\JavaDriverLib\GingerJavaAgent\agent\com\amdocs\ginger\GingerAgent.java) -replace 'public static final String GINGER_JAVA_AGENT_VERSION="*.*.*.*";','public static final String GINGER_JAVA_AGENT_VERSION="${{ env.gingernumber}}";'
- echo $save > .\Ginger\GingerCore\Drivers\JavaDriverLib\GingerJavaAgent\agent\com\amdocs\ginger\GingerAgent.java
- $save=(Get-Content .\Ginger\GingerInstallerScriptGithub.iss) -replace '#define MyAppVersion "*.*.*.*"','#define MyAppVersion "${{ env.gingernumber}}"'
- echo $save > .\Ginger\GingerInstallerScriptGithub.iss
-
-# ------------------------------------------------------------------------------------------------------
-# Install .Net core SDK 8.0.100
-# ------------------------------------------------------------------------------------------------------
- - name: 'Install .NET 8'
- uses: actions/setup-dotnet@v3
- with:
- dotnet-version: 8.0.100
-
-# ------------------------------------------------------------------------------------------------------
-# Install Nuget tool v1.0.5
-# ------------------------------------------------------------------------------------------------------
- - name: 'Setup Nuget'
- uses: Nuget/setup-nuget@v1.0.5
-
-# ------------------------------------------------------------------------------------------------------
-# Restore Ginger solution NuGet packages
-# ------------------------------------------------------------------------------------------------------
- - name: 'Restore nuget packages'
- run: nuget restore ./Ginger/Ginger.sln
-
-# ------------------------------------------------------------------------------------------------------
-# Install msbild && Build Ginger Solution
-# ------------------------------------------------------------------------------------------------------
- - name: 'Add msbuild to PATH'
- uses: microsoft/setup-msbuild@v1.0.2
-
- - name: 'Build Ginger Solution'
- run: msbuild ./Ginger/Ginger.sln /p:DebugSymbols=true /p:DebugType=full /p:Configuration=$env:BUILD_CONFIGURATION
-
-# ------------------------------------------------------------------------------------------------------
-# Publish GingerRuntime
-# ------------------------------------------------------------------------------------------------------
- - name: 'Publish GingerRuntime'
- run: dotnet publish ./Ginger/GingerRuntime/GingerRuntime.csproj --runtime linux-x64 --self-contained true -c Release
-
-# ------------------------------------------------------------------------------------------------------
-# Upload Artifacts
-# ------------------------------------------------------------------------------------------------------
- - name: Cache static site content
- id: cache
- uses: actions/cache@v3.2.6
- with:
- path:
- ./**
- key:
- cache-site-${{ github.run_number }}
- enableCrossOsArchive:
- true
-
-
diff --git a/.github/workflows/GingerBuild.yml b/.github/workflows/GingerBuild.yml
index 7f8aab65d5..1c443627d7 100644
--- a/.github/workflows/GingerBuild.yml
+++ b/.github/workflows/GingerBuild.yml
@@ -14,11 +14,14 @@ jobs:
# ------------------------------------------------------------------------------------------------------
# Createin version Tag & Number variables - only for CD Job
# ------------------------------------------------------------------------------------------------------
- - name: Download Version Artifacts
- if: ${{github.workflow == 'CD'}}
- uses: actions/download-artifact@v3
+ - name: Restore Version text file
+ if: ${{github.workflow == 'CD'}}
+ uses: actions/cache@v3.2.6
with:
- name: ginger-version
+ path: ./version.txt
+ key: cache-version-${{ github.run_number }}
+ enableCrossOsArchive:
+ true
- name: Create variables from Artifacts file
if: ${{github.workflow == 'CD'}}
@@ -50,12 +53,12 @@ jobs:
echo $save > .\Ginger\GingerInstallerScriptGithub.iss
# ------------------------------------------------------------------------------------------------------
-# Install .Net core SDK 6.0.301
+# Install .Net core SDK 8.0.100
# ------------------------------------------------------------------------------------------------------
- - name: 'Install .NET Core'
+ - name: 'Install .NET 8'
uses: actions/setup-dotnet@v3
with:
- dotnet-version: 7.x.x
+ dotnet-version: 8.0.100
# ------------------------------------------------------------------------------------------------------
# Install Nuget tool v1.0.5
@@ -83,12 +86,19 @@ jobs:
# ------------------------------------------------------------------------------------------------------
- name: 'Publish GingerRuntime'
run: dotnet publish ./Ginger/GingerRuntime/GingerRuntime.csproj --runtime linux-x64 --self-contained true -c Release
-
+
# ------------------------------------------------------------------------------------------------------
# Upload Artifacts
-# ------------------------------------------------------------------------------------------------------
- - name: 'Upload static site content'
- uses: actions/upload-artifact@v3
+# ------------------------------------------------------------------------------------------------------
+ - name: Cache static site content
+ id: cache
+ uses: actions/cache@v3.2.6
with:
- name: ginger-artifact
- path: ./
+ path:
+ ./**
+ key:
+ cache-site-${{ github.run_number }}
+ enableCrossOsArchive:
+ true
+
+
diff --git a/.github/workflows/GingerTests-2.yml b/.github/workflows/GingerTests-2.yml
deleted file mode 100644
index 0f2cef45a2..0000000000
--- a/.github/workflows/GingerTests-2.yml
+++ /dev/null
@@ -1,13 +0,0 @@
-name: Ginger-Tests
-
-on:
- workflow_call
-
-jobs:
- windows:
- uses: ./.github/workflows/WindowsTest-2.yml
- secrets: inherit
- Linux:
- uses: ./.github/workflows/LinuxTest-2.yml
-# MacOS:
-# uses: ./.github/workflows/MacOSTest-2.yml
diff --git a/.github/workflows/GingerTests.yml b/.github/workflows/GingerTests.yml
index 1215874795..241a6ea9b2 100644
--- a/.github/workflows/GingerTests.yml
+++ b/.github/workflows/GingerTests.yml
@@ -1,15 +1,13 @@
name: Ginger-Tests
-
+
on:
workflow_call
-
+
jobs:
windows:
uses: ./.github/workflows/WindowsTest.yml
secrets: inherit
-
Linux:
uses: ./.github/workflows/LinuxTest.yml
-
-# MacOS:
-# uses: ./.github/workflows/MacOSTest.yml
+ MacOS:
+ uses: ./.github/workflows/MacOSTest.yml
diff --git a/.github/workflows/LinuxBuild.yml b/.github/workflows/LinuxBuild.yml
deleted file mode 100644
index 0f0e041162..0000000000
--- a/.github/workflows/LinuxBuild.yml
+++ /dev/null
@@ -1,92 +0,0 @@
-name: Ginger Linux Build
-
-on:
- # pull_request:
- # branches:
- # - master
- # - Features/Linux-Migration
- # - Releases/*
- # - Releases/*/*
-
- workflow_dispatch:
-
-
-jobs:
- build:
-
- runs-on: ubuntu-latest
-
- env:
- BUILD_CONFIGURATION: Release
-
- steps:
- - uses: actions/checkout@v3
-
- - uses: actions/setup-dotnet@v3
- with:
- dotnet-version: '8.0.100'
-
-
-
- - name: 'printing file - GingerConsole.dll'
- if: success() || failure() # run this step even if previous step failed
- run: |
- ls -alt Ginger/GingerUtilsTest
-# ------------------------------------------------------------------------------------------------------
-# start Testing
-# ------------------------------------------------------------------------------------------------------
- - name: Testing GingerUtilsTest
- run: dotnet test Ginger/GingerUtilsTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'printing file - GingerConsole.dll'
- if: success() || failure() # run this step even if previous step failed
- run: |
- ls -alt Ginger/GingerUtilsTest
-
- - name: 'Testing GingerCoreCommonTest'
- run: dotnet test Ginger/GingerCoreCommonTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- # for GingerCoreNET we use run setting to limit to have one worker thread due to workspace limitation
- - name: 'Testing GingerCoreNETUnitTest'
- run: dotnet test Ginger/GingerCoreNETUnitTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerPluginCoreTest'
- run: dotnet test Ginger/GingerPluginCoreTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerConsoleTest'
- run: dotnet test Ginger/GingerConsoleTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerAutoPilotTest'
- run: dotnet test Ginger/GingerAutoPilotTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
-
-
-# ------------------------------------------------------------------------------------------------------
-# Publish GingerRuntime
-# ------------------------------------------------------------------------------------------------------
- - name: 'Publish GingerRuntime'
- run: dotnet publish Ginger/GingerRuntime -c Release
-
-
-
-# ------------------------------------------------------------------------------------------------------
-# Publish Test Results
-# ------------------------------------------------------------------------------------------------------
- - name: Test Report
- uses: dorny/test-reporter@v1
- if: success() || failure() # run this step even if previous step failed
- with:
- name: Ginger Linux UnitTests # Name of the check run which will be created
- path: "**/*.trx" # Path to test results
- reporter: dotnet-trx # Format of test results
-
-
-
-# ------------------------------------------------------------------------------------------------------
-# Run Standalone CLI Test
-# ------------------------------------------------------------------------------------------------------
- - name: Run Standalone CLI Test
- if: success() || failure() # run this step even if previous step failed
- run: |
- chmod +x CLITestsGithub.ps1
- ./CLITestsGithub.ps1
diff --git a/.github/workflows/LinuxTest-2.yml b/.github/workflows/LinuxTest-2.yml
deleted file mode 100644
index dd7baf1ac6..0000000000
--- a/.github/workflows/LinuxTest-2.yml
+++ /dev/null
@@ -1,95 +0,0 @@
-name: Ginger Linux Test
-
-on:
- workflow_dispatch:
- workflow_call:
-
-jobs:
- build:
- name: Linux Test
- runs-on: ubuntu-latest
-
- env:
- BUILD_CONFIGURATION: Release
-
- steps:
-
-# ------------------------------------------------------------------------------------------------------
-# Copy Ginger repo
-# ------------------------------------------------------------------------------------------------------
- - name: Code Checkout
- if: ${{github.workflow == 'Ginger Linux Test'}}
- uses: actions/checkout@v3
-
-
- - name: Restore static site content
- if: ${{github.workflow != 'Ginger Linux Test'}}
- uses: actions/cache@v3.2.6
- with:
- path: ./**
- key: cache-site-${{ github.run_number }}
- enableCrossOsArchive:
- true
-
-# ------------------------------------------------------------------------------------------------------
-# Install .Net core SDK 8.0.100
-# ------------------------------------------------------------------------------------------------------
- - uses: actions/setup-dotnet@v3
- with:
- dotnet-version: '8.0.100'
-
-# ------------------------------------------------------------------------------------------------------
-# start Testing
-# ------------------------------------------------------------------------------------------------------
- - name: 'Testing GingerUtilsTest'
- run: dotnet test Ginger/GingerUtilsTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerCoreCommonTest'
- run: dotnet test Ginger/GingerCoreCommonTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- # for GingerCoreNET we use run setting to limit to have one worker thread due to workspace limitation
- - name: 'Testing GingerCoreNETUnitTest'
- run: dotnet test Ginger/GingerCoreNETUnitTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerPluginCoreTest'
- run: dotnet test Ginger/GingerPluginCoreTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerConsoleTest'
- run: dotnet test Ginger/GingerConsoleTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerAutoPilotTest'
- run: dotnet test Ginger/GingerAutoPilotTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
-# ------------------------------------------------------------------------------------------------------
-# Publish GingerRuntime
-# ------------------------------------------------------------------------------------------------------
- - name: 'Publish GingerRuntime'
- if: ${{github.event_name == 'Ginger Linux Test' }}
- run: dotnet publish Ginger/GingerRuntime -c Release
-
-# ------------------------------------------------------------------------------------------------------
-# Publish Test Results
-# ------------------------------------------------------------------------------------------------------
- - name: Test Report
- uses: dorny/test-reporter@v1
- if: success() || failure() # run this step even if previous step failed
- with:
- name: Ginger Linux UnitTests # Name of the check run which will be created
- path: "**/*.trx" # Path to test results
- reporter: dotnet-trx # Format of test results
-
-# ------------------------------------------------------------------------------------------------------
-# Run Standalone CLI Test
-# ------------------------------------------------------------------------------------------------------
- - name: Run Standalone CLI Test
- if: success() || failure() # run this step even if previous step failed
- shell: bash
- run: |
- pwd
- ls -alt
- chmod +x CLITestsGithub.sh
- sudo apt install dos2unix
- dos2unix -b CLITestsGithub.sh
- ./CLITestsGithub.sh
-
-
diff --git a/.github/workflows/LinuxTest.yml b/.github/workflows/LinuxTest.yml
index 9e97912e11..dd7baf1ac6 100644
--- a/.github/workflows/LinuxTest.yml
+++ b/.github/workflows/LinuxTest.yml
@@ -22,18 +22,21 @@ jobs:
uses: actions/checkout@v3
- - name: Download Airtifacts
+ - name: Restore static site content
if: ${{github.workflow != 'Ginger Linux Test'}}
- uses: actions/download-artifact@v3
+ uses: actions/cache@v3.2.6
with:
- name: ginger-artifact
+ path: ./**
+ key: cache-site-${{ github.run_number }}
+ enableCrossOsArchive:
+ true
# ------------------------------------------------------------------------------------------------------
-# Install .Net core SDK 6.0.301
+# Install .Net core SDK 8.0.100
# ------------------------------------------------------------------------------------------------------
- uses: actions/setup-dotnet@v3
with:
- dotnet-version: '7.x.x'
+ dotnet-version: '8.0.100'
# ------------------------------------------------------------------------------------------------------
# start Testing
diff --git a/.github/workflows/MacBuild.yml b/.github/workflows/MacBuild.yml
deleted file mode 100644
index 2fd09e921e..0000000000
--- a/.github/workflows/MacBuild.yml
+++ /dev/null
@@ -1,65 +0,0 @@
-name: Ginger Mac Build
-
-on:
- # pull_request:
- # branches:
- # - master
- # - Features/Linux-Migration
- # - Releases/*
- # - Releases/*/*
-
- workflow_dispatch:
-
-
-jobs:
- build:
-
- runs-on: macOS-latest
-
- env:
- BUILD_CONFIGURATION: Release
-
- steps:
- - uses: actions/checkout@v3
-
- - uses: actions/setup-dotnet@v3
- with:
- dotnet-version: '8.0.100'
-
-
-
-# ------------------------------------------------------------------------------------------------------
-# start Testing
-# ------------------------------------------------------------------------------------------------------
- - name: Testing GingerUtilsTest
- run: dotnet test Ginger/GingerUtilsTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerCoreCommonTest'
- run: dotnet test Ginger/GingerCoreCommonTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerCoreNETUnitTest'
- run: dotnet test Ginger/GingerCoreNETUnitTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerPluginCoreTest'
- run: dotnet test Ginger/GingerPluginCoreTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerConsoleTest'
- run: dotnet test Ginger/GingerConsoleTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerAutoPilotTest'
- run: dotnet test Ginger/GingerAutoPilotTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
-
-
-# ------------------------------------------------------------------------------------------------------
-# Publish Test Results
-# ------------------------------------------------------------------------------------------------------
-
-
- - name: Test Report
- uses: dorny/test-reporter@v1
- if: success() || failure() # run this step even if previous step failed
- with:
- name: Ginger MacOS UnitTests # Name of the check run which will be created
- path: "**/*.trx" # Path to test results
- reporter: dotnet-trx # Format of test results
diff --git a/.github/workflows/MacOSTest-2.yml b/.github/workflows/MacOSTest-2.yml
deleted file mode 100644
index 9cde25f597..0000000000
--- a/.github/workflows/MacOSTest-2.yml
+++ /dev/null
@@ -1,71 +0,0 @@
-name: Ginger MacOS Test
-
-on:
- workflow_call:
- workflow_dispatch:
-
-
-jobs:
- build:
- name: MacOS Test
- runs-on: macOS-latest
-
- env:
- BUILD_CONFIGURATION: Release
-
- steps:
-
-# ------------------------------------------------------------------------------------------------------
-# Copy Ginger repo
-# ------------------------------------------------------------------------------------------------------
- - name: Code Checkout
- if: ${{github.workflow == 'Ginger MacOS Test'}}
- uses: actions/checkout@v3
-
- - name: Restore static site content
- if: ${{github.workflow != 'Ginger MacOS Test'}}
- uses: actions/cache@v3.2.6
- with:
- path: ./**
- key: cache-site-${{ github.run_number }}
- enableCrossOsArchive:
- truet
-
-# ------------------------------------------------------------------------------------------------------
-# Install .Net core SDK 8.0.100
-# ------------------------------------------------------------------------------------------------------
- - uses: actions/setup-dotnet@v3
- with:
- dotnet-version: '8.0.100'
-
-# ------------------------------------------------------------------------------------------------------
-# start Testing
-# ------------------------------------------------------------------------------------------------------
- - name: 'Testing GingerUtilsTest'
- run: dotnet test Ginger/GingerUtilsTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerCoreCommonTest'
- run: dotnet test Ginger/GingerCoreCommonTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerCoreNETUnitTest'
- run: dotnet test Ginger/GingerCoreNETUnitTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerPluginCoreTest'
- run: dotnet test Ginger/GingerPluginCoreTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerConsoleTest'
- run: dotnet test Ginger/GingerConsoleTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
- - name: 'Testing GingerAutoPilotTest'
- run: dotnet test Ginger/GingerAutoPilotTest --configuration ${BUILD_CONFIGURATION} --logger trx --verbosity=normal
-
-# ------------------------------------------------------------------------------------------------------
-# Publish Test Results
-# ------------------------------------------------------------------------------------------------------
- - name: Test Report
- uses: dorny/test-reporter@v1
- if: success() || failure() # run this step even if previous step failed
- with:
- name: Ginger MacOS UnitTests # Name of the check run which will be created
- path: "**/*.trx" # Path to test results
- reporter: dotnet-trx # Format of test results
diff --git a/.github/workflows/MacOSTest.yml b/.github/workflows/MacOSTest.yml
index 152e051df9..9cde25f597 100644
--- a/.github/workflows/MacOSTest.yml
+++ b/.github/workflows/MacOSTest.yml
@@ -22,18 +22,21 @@ jobs:
if: ${{github.workflow == 'Ginger MacOS Test'}}
uses: actions/checkout@v3
- - name: Download Airtifacts
+ - name: Restore static site content
if: ${{github.workflow != 'Ginger MacOS Test'}}
- uses: actions/download-artifact@v3
+ uses: actions/cache@v3.2.6
with:
- name: ginger-artifact
+ path: ./**
+ key: cache-site-${{ github.run_number }}
+ enableCrossOsArchive:
+ truet
# ------------------------------------------------------------------------------------------------------
-# Install .Net core SDK 6.0.301
+# Install .Net core SDK 8.0.100
# ------------------------------------------------------------------------------------------------------
- uses: actions/setup-dotnet@v3
with:
- dotnet-version: '7.x.x'
+ dotnet-version: '8.0.100'
# ------------------------------------------------------------------------------------------------------
# start Testing
diff --git a/.github/workflows/WindowsBuild.yml b/.github/workflows/WindowsBuild.yml
deleted file mode 100644
index db3eec294c..0000000000
--- a/.github/workflows/WindowsBuild.yml
+++ /dev/null
@@ -1,117 +0,0 @@
-name: Ginger Windows Build
-
-on:
- # pull_request:
- # branches:
- # - master
- # - Features/Linux-Migration
- # - Releases/*
- # - Releases/*/*
-
- workflow_dispatch:
-
-jobs:
- build:
-
- runs-on: windows-latest
-
- env:
- BUILD_CONFIGURATION: Release
-
- steps:
- - uses: actions/checkout@v3
-
-# ------------------------------------------------------------------------------------------------------
-# Install .Net core SDK 8.0.100
-# ------------------------------------------------------------------------------------------------------
- - name: Setup .NET
- uses: actions/setup-dotnet@v3
- with:
- dotnet-version: 8.0.100
-
-# ------------------------------------------------------------------------------------------------------
-# Install Nuget tool v1.0.5
-# ------------------------------------------------------------------------------------------------------
- - name: Setup Nuget
- uses: Nuget/setup-nuget@v1.0.5
-
-# ------------------------------------------------------------------------------------------------------
-# Restore Ginger solution NuGet packages
-# ------------------------------------------------------------------------------------------------------
- - name: Restore nuget packages
- run: nuget restore ./Ginger/Ginger.sln
-
-
-
-# ------------------------------------------------------------------------------------------------------
-# SeaLight
-# ---------------------------------------------------------------------------------------------------
-
-
-
-
-# ------------------------------------------------------------------------------------------------------
-# Install msbuild && Build Ginger Solution
-# ------------------------------------------------------------------------------------------------------
- - name: Add msbuild to PATH
- uses: microsoft/setup-msbuild@v1.0.2
-
-
- - name: Build
- run: msbuild ./Ginger/Ginger.sln /p:DebugSymbols=true /p:DebugType=full /p:Configuration=Release
-
-# ------------------------------------------------------------------------------------------------------
-# Start Testing
-# ------------------------------------------------------------------------------------------------------
- - name: Testing GingerUtilsTest
- run: dotnet test Ginger/GingerUtilsTest --configuration Release --logger trx --verbosity=normal
-
- - name: 'Testing GingerCoreCommonTest'
- if: success() || failure()
- run: dotnet test Ginger/GingerCoreCommonTest --configuration Release --logger trx --verbosity=normal
-
- - name: 'Testing GingerCoreNETUnitTest'
- if: success() || failure()
- run: dotnet test Ginger/GingerCoreNETUnitTest --configuration Release --logger trx --verbosity=normal
-
- - name: 'Testing GingerPluginCoreTest'
- if: success() || failure()
- run: dotnet test Ginger/GingerPluginCoreTest --configuration Release --logger trx --verbosity=normal
-
- - name: 'Testing GingerConsoleTest'
- if: success() || failure()
- run: dotnet test Ginger/GingerConsoleTest --configuration Release --logger trx --verbosity=normal
-
- - name: 'Testing GingerAutoPilotTest'
- if: success() || failure()
- run: dotnet test Ginger/GingerAutoPilotTest --configuration Release --logger trx --verbosity=normal
-
-# ------------------------------------------------------------------------------------------------------
-# Run .Net Framework tests using powershell and publish the results
-# ------------------------------------------------------------------------------------------------------
-
- - name: Run tests for Ginger .NetFramework *Test Dlls
- if: success() || failure() # run this step even if previous step failed
- run: powershell -file "TestDotNetFrameworkGithub.ps1"
-
-# ------------------------------------------------------------------------------------------------------
-# Publish Test Results
-# ------------------------------------------------------------------------------------------------------
- - name: Test Report
- uses: dorny/test-reporter@v1
- if: success() || failure() # run this step even if previous step failed
- with:
- name: Ginger Windows UnitTests # Name of the check run which will be created
- path: "**/*.trx" # Path to test results
- reporter: dotnet-trx # Format of test results
-
-
-# ------------------------------------------------------------------------------------------------------
-# Stop Sealight
-# ------------------------------------------------------------------------------------------------------
-# - task: EndTestExecution@2
-# inputs:
-# sealightsToken: "$(SLAGENTTOKEN)"
-# SealightsBuildSessionId : $(Build.ArtifactStagingDirectory)\SealightsBuildSessionId.txt
-
-
diff --git a/.github/workflows/WindowsTest-2.yml b/.github/workflows/WindowsTest-2.yml
deleted file mode 100644
index eb4be322c1..0000000000
--- a/.github/workflows/WindowsTest-2.yml
+++ /dev/null
@@ -1,185 +0,0 @@
-name: Ginger Windows Test
-
-on:
- workflow_dispatch:
- workflow_call:
-
-jobs:
- build:
- name: Windows Test
- runs-on: windows-latest
-
- env:
- BUILD_CONFIGURATION: "Release"
- SLDOMAIN: "amdocs.sealights.co"
- APP_NAME: "Ginger"
- APP_NAMESPACE: "Amdocs.*,ginger.*"
- PR_NUMBER: ${{github.event.pull_request.number}}
- PR_TARGET_BRANCH: "Releases/${{github.base_ref}}"
- PR_LAST_COMMIT: ${{ github.event.pull_request.head.sha }}
- REPO_URL: ${{github.repositoryUrl }}
-
- steps:
-# ------------------------------------------------------------------------------------------------------
-# Copy Ginger repo
-# ------------------------------------------------------------------------------------------------------
- - name: Code Checkout
- if: ${{github.workflow == 'Ginger Windows Test'}}
- uses: actions/checkout@v3
-
-
- - name: Restore static site content
- if: ${{github.workflow != 'Ginger Windows Test'}}
- uses: actions/cache@v3.2.6
- with:
- path: ./**
- key: cache-site-${{ github.run_number }}
- enableCrossOsArchive:
- true
-
-
-# ------------------------------------------------------------------------------------------------------
-# Install .Net core SDK 8.0.100
-# ------------------------------------------------------------------------------------------------------
- - name: Setup .NET
- uses: actions/setup-dotnet@v3
- with:
- dotnet-version: 8.0.100
-
-# ------------------------------------------------------------------------------------------------------
-# Install Nuget tool v1.0.5
-# ------------------------------------------------------------------------------------------------------
- - name: Setup Nuget
- uses: Nuget/setup-nuget@v1.0.5
-
-# ------------------------------------------------------------------------------------------------------
-# Restore Ginger solution NuGet packages
-# ------------------------------------------------------------------------------------------------------
- - name: Restore nuget packages
- run: nuget restore ./Ginger/Ginger.sln
-
-# ------------------------------------------------------------------------------------------------------
-# SeaLight - Downloading the .NET agent files && Scanning a build using MSBuild
-# ---------------------------------------------------------------------------------------------------
-
-# - name: Download Sealights .Net agent
-# run: |
-# Write-Output "Build Reason = ${{github.event_name}}"
-# echo $env:SLDOMAIN
-# echo $env:BUILD_CONFIGURATION
-# [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
-# Write-Output "Download the Sealights DotNet agent version set in settings..."
-# $agentversion = ((iwr -Uri https://amdocs.sealights.co/api/v2/agents/dotnet/recommended -Headers @{'Accept' = 'application/json'; 'Authorization' = "Bearer ${{ secrets.SLT }}"}).Content | ConvertFrom-Json | Select-Object agent).agent.version
-# Write-Output "*** start download ***"
-# iwr -OutFile sealights-dotnet-agent.zip -Uri http://agents.sealights.co/SL.DotNet/SL.DotNet-$($agentversion).zip
-# Expand-Archive .\sealights-dotnet-agent.zip -DestinationPath SL.DotNet -Force
-# Write-Output "Sealights agent version used is:$(Get-Content .\SL.DotNet\version.txt)"
-
-# - name: Sealights - Generating a Pull Request Session ID
-# id: SealightsPR
-# if: ${{github.event_name == 'pull_request'}}
-# run: |
-# Write-Output "*** Create PR BSID ***"
-# .\SL.DotNet\x64\SL.DotNet prConfig --token ${{ secrets.SLT }} --appName ${{ env.APP_NAME }} --includeNamespace ${{ env.APP_NAMESPACE }} --pullRequestNumber 25 --latestCommit a51d0f337dc7547d20dbf5fbfea1c45831249325 --targetBranch Release/master --repositoryUrl ${{ env.REPO_URL }}
-
-# - name: Sealights - Generating a Standard Session ID
-# id: SealightsStandard
-# if: ${{github.event_name != 'pull_request'}}
-# run: |
-# Write-Output "*** Create Standard SID ***"
-# .\SL.DotNet\x64\SL.DotNet config --token ${{ secrets.SLT }} --includeNamespace ${{ env.APP_NAMESPACE }} --appName ${{ env.APP_NAME }} --branchName Release/master --buildName "Github.Nadeem.${{ github.run_number }}"
-
-# - name: Sealights - Prepare for MSBuild
-# id: SealightsMSBuild
-# if: steps.SealightsStandard.outcome == 'success' || steps.SealightsPR.outcome == 'success'
-# run: |
-# Write-Output "*** Prepare for MSBuild ***"
-# .\SL.DotNet\x64\SL.DotNet.exe prepareForMsBuild --buildSessionIdFile buildSessionId --workspacePath .\Ginger --baseDir . --ignoreGeneratedCode true --debugMode true --logEnabled true --logAppendConsole true --ignoreCertificateErrors true --token ${{ secrets.SLT }} --scm git --scmProvider vsts
-
-# # ------------------------------------------------------------------------------------------------------
-# # SeaLights- Starting test stage && Starting Background test listener
-# # ------------------------------------------------------------------------------------------------------
-# - name: Sealights - Starting test stage
-# if: steps.SealightsMSBuild.outcome == 'success'
-# run: |
-# .\SL.DotNet\x64\SL.DotNet.exe startExecution --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testStage "Unit Tests"
-
-# - name: Sealights - Starting Background test listener
-# if: steps.SealightsMSBuild.outcome == 'success'
-# run: |
-# .\SL.DotNet\x64\SL.DotNet.exe startBackgroundTestListener --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testListenerSessionKey ${{ github.run_number }} --testStage "Unit Tests"
-
-# ------------------------------------------------------------------------------------------------------
-# Install msbild && Build Ginger Solution
-# ------------------------------------------------------------------------------------------------------
- - name: Add msbuild to PATH
- if: ${{github.workflow == 'Ginger Windows Test'}}
- uses: microsoft/setup-msbuild@v1.0.2
-
- - name: Build Ginger Solution
- if: ${{github.workflow == 'Ginger Windows Test'}}
- run: msbuild ./Ginger/Ginger.sln /p:DebugSymbols=true /p:DebugType=full /p:Configuration=$env:BUILD_CONFIGURATION
-
-# ------------------------------------------------------------------------------------------------------
-# Start Testing
-# ------------------------------------------------------------------------------------------------------
- - name: 'Testing GingerUtilsTest'
- if: success() || failure()
- run: dotnet test Ginger/GingerUtilsTest --configuration ${{ env.BUILD_CONFIGURATION }} --logger trx --results-directory D:\a\TestResults --verbosity=normal
-
- - name: 'Testing GingerCoreCommonTest'
- if: success() || failure()
- run: dotnet test Ginger/GingerCoreCommonTest --configuration ${{ env.BUILD_CONFIGURATION }} --logger trx --results-directory D:\a\TestResults --verbosity=normal
-
- - name: 'Testing GingerCoreNETUnitTest'
- if: success() || failure()
- run: dotnet test Ginger/GingerCoreNETUnitTest --configuration ${{ env.BUILD_CONFIGURATION }} --logger trx --results-directory D:\a\TestResults --verbosity=normal
-
- - name: 'Testing GingerPluginCoreTest'
- if: success() || failure()
- run: dotnet test Ginger/GingerPluginCoreTest --configuration ${{ env.BUILD_CONFIGURATION }} --logger trx --results-directory D:\a\TestResults --verbosity=normal
-
- - name: 'Testing GingerConsoleTest'
- if: success() || failure()
- run: dotnet test Ginger/GingerConsoleTest --configuration ${{ env.BUILD_CONFIGURATION }} --logger trx --results-directory D:\a\TestResults --verbosity=normal
-
- - name: 'Testing GingerAutoPilotTest'
- if: success() || failure()
- run: dotnet test Ginger/GingerAutoPilotTest --configuration ${{ env.BUILD_CONFIGURATION }} --logger trx --results-directory D:\a\TestResults --verbosity=normal
-
-# ------------------------------------------------------------------------------------------------------
-# Run .Net Framework tests using powershell and publish the results
-# ------------------------------------------------------------------------------------------------------
- - name: Run tests for Ginger .NetFramework *Test Dlls
- if: success() || failure() # run this step even if previous step failed
- run: powershell -file "TestDotNetFrameworkGithub.ps1"
-
-# ------------------------------------------------------------------------------------------------------
-# Publish Test Results
-# ------------------------------------------------------------------------------------------------------
- - name: Test Report
- uses: dorny/test-reporter@v1
- if: success() || failure() # run this step even if previous step failed
- with:
- name: Ginger Windows UnitTests # Name of the check run which will be created
- path: "D:/a/TestResults/*.trx" # Path to test results
- reporter: dotnet-trx # Format of test results
-
-
-# ------------------------------------------------------------------------------------------------------
-# Sealight - Stop Background test listener && Ending a test stage && Upload report files
-# ------------------------------------------------------------------------------------------------------
- # - name: Sealights - Stop Background test listener
- # if: (success() || failure()) && steps.SealightsMSBuild.outcome == 'success' # run this step even if previous step failed
- # run: |
- # .\SL.DotNet\x64\SL.DotNet.exe stopBackgroundTestListener --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testListenerSessionKey ${{ github.run_number }}
- # - name: Sealights - Ending test stage
- # if: (success() || failure()) && steps.SealightsMSBuild.outcome == 'success' # run this step even if previous step failed
- # run: |
- # .\SL.DotNet\x64\SL.DotNet.exe endExecution --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testStage "Unit Tests"
-
- # - name: Sealights - Upload test report
- # if: (success() || failure()) && steps.SealightsMSBuild.outcome == 'success' # run this step even if previous step failed
- # run: |
- # .\SL.DotNet\x64\SL.DotNet.exe uploadTestReport --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testStage "Unit Tests" --report "D:\\a\\TestResults"
-
diff --git a/.github/workflows/WindowsTest.yml b/.github/workflows/WindowsTest.yml
index 8f61173c17..eb4be322c1 100644
--- a/.github/workflows/WindowsTest.yml
+++ b/.github/workflows/WindowsTest.yml
@@ -28,11 +28,15 @@ jobs:
uses: actions/checkout@v3
- - name: Download Artifacts
+ - name: Restore static site content
if: ${{github.workflow != 'Ginger Windows Test'}}
- uses: actions/download-artifact@v3
+ uses: actions/cache@v3.2.6
with:
- name: ginger-artifact
+ path: ./**
+ key: cache-site-${{ github.run_number }}
+ enableCrossOsArchive:
+ true
+
# ------------------------------------------------------------------------------------------------------
# Install .Net core SDK 8.0.100
@@ -58,52 +62,52 @@ jobs:
# SeaLight - Downloading the .NET agent files && Scanning a build using MSBuild
# ---------------------------------------------------------------------------------------------------
- - name: Download Sealights .Net agent
- run: |
- Write-Output "Build Reason = ${{github.event_name}}"
- echo $env:SLDOMAIN
- echo $env:BUILD_CONFIGURATION
- [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
- Write-Output "Download the Sealights DotNet agent version set in settings..."
- $agentversion = ((iwr -Uri https://amdocs.sealights.co/api/v2/agents/dotnet/recommended -Headers @{'Accept' = 'application/json'; 'Authorization' = "Bearer ${{ secrets.SLT }}"}).Content | ConvertFrom-Json | Select-Object agent).agent.version
- Write-Output "*** start download ***"
- iwr -OutFile sealights-dotnet-agent.zip -Uri http://agents.sealights.co/SL.DotNet/SL.DotNet-$($agentversion).zip
- Expand-Archive .\sealights-dotnet-agent.zip -DestinationPath SL.DotNet -Force
- Write-Output "Sealights agent version used is:$(Get-Content .\SL.DotNet\version.txt)"
+# - name: Download Sealights .Net agent
+# run: |
+# Write-Output "Build Reason = ${{github.event_name}}"
+# echo $env:SLDOMAIN
+# echo $env:BUILD_CONFIGURATION
+# [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
+# Write-Output "Download the Sealights DotNet agent version set in settings..."
+# $agentversion = ((iwr -Uri https://amdocs.sealights.co/api/v2/agents/dotnet/recommended -Headers @{'Accept' = 'application/json'; 'Authorization' = "Bearer ${{ secrets.SLT }}"}).Content | ConvertFrom-Json | Select-Object agent).agent.version
+# Write-Output "*** start download ***"
+# iwr -OutFile sealights-dotnet-agent.zip -Uri http://agents.sealights.co/SL.DotNet/SL.DotNet-$($agentversion).zip
+# Expand-Archive .\sealights-dotnet-agent.zip -DestinationPath SL.DotNet -Force
+# Write-Output "Sealights agent version used is:$(Get-Content .\SL.DotNet\version.txt)"
- - name: Sealights - Generating a Pull Request Session ID
- id: SealightsPR
- if: ${{github.event_name == 'pull_request'}}
- run: |
- Write-Output "*** Create PR BSID ***"
- .\SL.DotNet\x64\SL.DotNet prConfig --token ${{ secrets.SLT }} --appName ${{ env.APP_NAME }} --includeNamespace ${{ env.APP_NAMESPACE }} --pullRequestNumber 25 --latestCommit a51d0f337dc7547d20dbf5fbfea1c45831249325 --targetBranch Release/master --repositoryUrl ${{ env.REPO_URL }}
+# - name: Sealights - Generating a Pull Request Session ID
+# id: SealightsPR
+# if: ${{github.event_name == 'pull_request'}}
+# run: |
+# Write-Output "*** Create PR BSID ***"
+# .\SL.DotNet\x64\SL.DotNet prConfig --token ${{ secrets.SLT }} --appName ${{ env.APP_NAME }} --includeNamespace ${{ env.APP_NAMESPACE }} --pullRequestNumber 25 --latestCommit a51d0f337dc7547d20dbf5fbfea1c45831249325 --targetBranch Release/master --repositoryUrl ${{ env.REPO_URL }}
- - name: Sealights - Generating a Standard Session ID
- id: SealightsStandard
- if: ${{github.event_name != 'pull_request'}}
- run: |
- Write-Output "*** Create Standard SID ***"
- .\SL.DotNet\x64\SL.DotNet config --token ${{ secrets.SLT }} --includeNamespace ${{ env.APP_NAMESPACE }} --appName ${{ env.APP_NAME }} --branchName Release/master --buildName "Github.Nadeem.${{ github.run_number }}"
+# - name: Sealights - Generating a Standard Session ID
+# id: SealightsStandard
+# if: ${{github.event_name != 'pull_request'}}
+# run: |
+# Write-Output "*** Create Standard SID ***"
+# .\SL.DotNet\x64\SL.DotNet config --token ${{ secrets.SLT }} --includeNamespace ${{ env.APP_NAMESPACE }} --appName ${{ env.APP_NAME }} --branchName Release/master --buildName "Github.Nadeem.${{ github.run_number }}"
- - name: Sealights - Prepare for MSBuild
- id: SealightsMSBuild
- if: steps.SealightsStandard.outcome == 'success' || steps.SealightsPR.outcome == 'success'
- run: |
- Write-Output "*** Prepare for MSBuild ***"
- .\SL.DotNet\x64\SL.DotNet.exe prepareForMsBuild --buildSessionIdFile buildSessionId --workspacePath .\Ginger --baseDir . --ignoreGeneratedCode true --debugMode true --logEnabled true --logAppendConsole true --ignoreCertificateErrors true --token ${{ secrets.SLT }} --scm git --scmProvider vsts
+# - name: Sealights - Prepare for MSBuild
+# id: SealightsMSBuild
+# if: steps.SealightsStandard.outcome == 'success' || steps.SealightsPR.outcome == 'success'
+# run: |
+# Write-Output "*** Prepare for MSBuild ***"
+# .\SL.DotNet\x64\SL.DotNet.exe prepareForMsBuild --buildSessionIdFile buildSessionId --workspacePath .\Ginger --baseDir . --ignoreGeneratedCode true --debugMode true --logEnabled true --logAppendConsole true --ignoreCertificateErrors true --token ${{ secrets.SLT }} --scm git --scmProvider vsts
-# ------------------------------------------------------------------------------------------------------
-# SeaLights- Starting test stage && Starting Background test listener
-# ------------------------------------------------------------------------------------------------------
- - name: Sealights - Starting test stage
- if: steps.SealightsMSBuild.outcome == 'success'
- run: |
- .\SL.DotNet\x64\SL.DotNet.exe startExecution --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testStage "Unit Tests"
+# # ------------------------------------------------------------------------------------------------------
+# # SeaLights- Starting test stage && Starting Background test listener
+# # ------------------------------------------------------------------------------------------------------
+# - name: Sealights - Starting test stage
+# if: steps.SealightsMSBuild.outcome == 'success'
+# run: |
+# .\SL.DotNet\x64\SL.DotNet.exe startExecution --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testStage "Unit Tests"
- - name: Sealights - Starting Background test listener
- if: steps.SealightsMSBuild.outcome == 'success'
- run: |
- .\SL.DotNet\x64\SL.DotNet.exe startBackgroundTestListener --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testListenerSessionKey ${{ github.run_number }} --testStage "Unit Tests"
+# - name: Sealights - Starting Background test listener
+# if: steps.SealightsMSBuild.outcome == 'success'
+# run: |
+# .\SL.DotNet\x64\SL.DotNet.exe startBackgroundTestListener --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testListenerSessionKey ${{ github.run_number }} --testStage "Unit Tests"
# ------------------------------------------------------------------------------------------------------
# Install msbild && Build Ginger Solution
@@ -165,17 +169,17 @@ jobs:
# ------------------------------------------------------------------------------------------------------
# Sealight - Stop Background test listener && Ending a test stage && Upload report files
# ------------------------------------------------------------------------------------------------------
- - name: Sealights - Stop Background test listener
- if: (success() || failure()) && steps.SealightsMSBuild.outcome == 'success' # run this step even if previous step failed
- run: |
- .\SL.DotNet\x64\SL.DotNet.exe stopBackgroundTestListener --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testListenerSessionKey ${{ github.run_number }}
- - name: Sealights - Ending test stage
- if: (success() || failure()) && steps.SealightsMSBuild.outcome == 'success' # run this step even if previous step failed
- run: |
- .\SL.DotNet\x64\SL.DotNet.exe endExecution --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testStage "Unit Tests"
+ # - name: Sealights - Stop Background test listener
+ # if: (success() || failure()) && steps.SealightsMSBuild.outcome == 'success' # run this step even if previous step failed
+ # run: |
+ # .\SL.DotNet\x64\SL.DotNet.exe stopBackgroundTestListener --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testListenerSessionKey ${{ github.run_number }}
+ # - name: Sealights - Ending test stage
+ # if: (success() || failure()) && steps.SealightsMSBuild.outcome == 'success' # run this step even if previous step failed
+ # run: |
+ # .\SL.DotNet\x64\SL.DotNet.exe endExecution --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testStage "Unit Tests"
- - name: Sealights - Upload test report
- if: (success() || failure()) && steps.SealightsMSBuild.outcome == 'success' # run this step even if previous step failed
- run: |
- .\SL.DotNet\x64\SL.DotNet.exe uploadTestReport --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testStage "Unit Tests" --report "D:\\a\\TestResults"
-
\ No newline at end of file
+ # - name: Sealights - Upload test report
+ # if: (success() || failure()) && steps.SealightsMSBuild.outcome == 'success' # run this step even if previous step failed
+ # run: |
+ # .\SL.DotNet\x64\SL.DotNet.exe uploadTestReport --token ${{ secrets.SLT }} --buildSessionIdFile buildSessionId --logEnabled true --logAppendConsole true --testStage "Unit Tests" --report "D:\\a\\TestResults"
+
diff --git a/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/ActUIElementEditPage.xaml.cs b/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/ActUIElementEditPage.xaml.cs
index b790f94208..775d3944de 100644
--- a/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/ActUIElementEditPage.xaml.cs
+++ b/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/ActUIElementEditPage.xaml.cs
@@ -276,6 +276,9 @@ private Page GetControlSpecificPageContent()
pageContent = new UIElementXYCoordinatePage(mAction);
break;
+ case eElementAction.ScrollToElement:
+ pageContent = new UIElementScrollToElementOptionsPage(mAction);
+ break;
case eElementAction.DoubleClick:
case eElementAction.WinClick:
diff --git a/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/UIElementScrollToOptionsPage.xaml b/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/UIElementScrollToOptionsPage.xaml
new file mode 100644
index 0000000000..269b7d6b44
--- /dev/null
+++ b/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/UIElementScrollToOptionsPage.xaml
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/UIElementScrollToOptionsPage.xaml.cs b/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/UIElementScrollToOptionsPage.xaml.cs
new file mode 100644
index 0000000000..4503166e38
--- /dev/null
+++ b/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/UIElementScrollToOptionsPage.xaml.cs
@@ -0,0 +1,27 @@
+using GingerCore.Actions.Common;
+using System.Collections.Generic;
+using System.Windows.Controls;
+using static GingerCoreNET.GeneralLib.General;
+
+namespace Ginger.Actions._Common.ActUIElementLib
+{
+ ///
+ /// Interaction logic for UIElementScrollToOptionsPage.xaml
+ ///
+ public partial class UIElementScrollToElementOptionsPage : Page
+ {
+ public UIElementScrollToElementOptionsPage(ActUIElement action)
+ {
+ InitializeComponent();
+
+ List verticalAlignments = [
+ eScrollAlignment.Start,
+ eScrollAlignment.Center,
+ eScrollAlignment.End,
+ eScrollAlignment.Nearest,
+ ];
+
+ verticalScrollAlignmentComboBox.Init(action.GetOrCreateInputParam(ActUIElement.Fields.VerticalScrollAlignment, nameof(eScrollAlignment.Start)), verticalAlignments, false);
+ }
+ }
+}
diff --git a/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/UIElementXYCoordinatePage.xaml.cs b/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/UIElementXYCoordinatePage.xaml.cs
index e1c5914702..807c63b418 100644
--- a/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/UIElementXYCoordinatePage.xaml.cs
+++ b/Ginger/Ginger/Actions/ActionEditPages/ActUIElementLib/UIElementXYCoordinatePage.xaml.cs
@@ -41,9 +41,9 @@ public UIElementXYCoordinatePage(ActUIElement Act)
if (mAct.ElementData != null)
{
string[] spliter = new string[] { "," };
- string[] cordinations = Convert.ToString(mAct.ElementData).Split(spliter, StringSplitOptions.RemoveEmptyEntries);
- mAct.AddOrUpdateInputParamValue("XCoordinate", cordinations[0]);
- mAct.AddOrUpdateInputParamValue("YCoordinate", cordinations[1]);
+ string[] coordinates = Convert.ToString(mAct.ElementData).Split(spliter, StringSplitOptions.RemoveEmptyEntries);
+ mAct.AddOrUpdateInputParamValue("XCoordinate", coordinates[0]);
+ mAct.AddOrUpdateInputParamValue("YCoordinate", coordinates[1]);
}
if (mAct.ElementAction == ActUIElement.eElementAction.SendKeysXY)
diff --git a/Ginger/Ginger/App.xaml.cs b/Ginger/Ginger/App.xaml.cs
index 3a6bb77fe2..9fbc2513f7 100644
--- a/Ginger/Ginger/App.xaml.cs
+++ b/Ginger/Ginger/App.xaml.cs
@@ -33,7 +33,10 @@ limitations under the License.
using GingerWPF.WorkSpaceLib;
using System;
using System.Collections.Generic;
+using System.IO;
+using System.Linq;
using System.Runtime.InteropServices;
+using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Threading;
@@ -280,11 +283,12 @@ private async void Application_Startup(object sender, StartupEventArgs e)
await RunNewCLI(parserResult);
}
}
- catch (Exception ex) {
+ catch (Exception ex)
+ {
Reporter.ToLog(eLogLevel.ERROR, "Unhandled exception in Application_Startup", ex);
}
-
}
+
///
/// Initializes the logging mechanism for the application using log4net.
@@ -306,15 +310,37 @@ private bool ShouldStartGrid(string[] args)
}
///
- /// Parses command-line arguments and returns the result.
- /// If no arguments are provided, returns null.
+ /// Parses the command line arguments and returns the parsed result.
///
- /// Command-line arguments.
- /// ParserResult containing parsed arguments or null.
+ /// The command line arguments.
+ /// The parsed result of the command line arguments.
private ParserResult