CHARMS-RAS-REGRESSION #27
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
name: CHARMS-RAS-REGRESSION | |
on: | |
schedule: | |
# This corresponds to 6:00 AM EDT (10:00 AM UTC) | |
- cron: '0 10 * * *' | |
workflow_dispatch: | |
inputs: | |
testBrowser: | |
description: 'Browser' | |
required: true | |
default: 'chrome' | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
env: | |
DISPLAY: ".99" | |
SCREEN_RESOLUTION: "1280x1024x24" | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
ref: ${{ github.ref }} | |
fetch-depth: 0 | |
- name: Set up JDK 1.11 | |
uses: actions/setup-java@v1 | |
with: | |
java-version: 1.11 | |
- name: Install Google Chrome | |
run: | | |
sudo apt-get install -y wget | |
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb | |
sudo apt-get install -y ./google-chrome-stable_current_amd64.deb | |
- name: Replace variables in cloudEnv.properties | |
run: | | |
sed -i "s/SIDE_DOOR_USERNAME/${{ secrets.SIDEDOORUSERNAME }}/g" src/main/resources/conf/cloudEnv.properties | |
sed -i "s/SIDE_DOOR_PASSWORD/${{ secrets.SIDEDOORPASSWORD }}/g" src/main/resources/conf/cloudEnv.properties | |
if [ "${{ github.event_name }}" = "schedule" ]; then | |
sed -i "s/BROWSER_VAR/chrome/g" src/main/resources/conf/cloudEnv.properties | |
else | |
sed -i "s/BROWSER_VAR/${{ github.event.inputs.testBrowser }}/g" src/main/resources/conf/cloudEnv.properties | |
fi | |
sed -i "s/ENV_VAR/test/g" src/main/resources/conf/cloudEnv.properties | |
- name: Run specific runner class | |
run: mvn -B -q -Dtest=ServiceNow.CHARMS.Runners.Run_CHARMS_RAS_Regression_Test -DisCloud=true test | |
continue-on-error: true | |
- name: Generate timestamp | |
id: timestamp | |
run: echo "::set-output name=timestamp::$(TZ='America/New_York' date +'%Y-%m-%d_%I-%M-%S_%p')" | |
- name: Determine report path | |
id: reportpath | |
run: echo "::set-output name=path::html-charms-rasopathy-regression-reports" | |
- name: Upload Cucumber Report | |
uses: actions/upload-artifact@v2 | |
if: always() | |
with: | |
name: cucumber-report-${{ github.run_number }} | |
path: target/html-charms-rasopathy-regression-reports/* | |
- name: Remove Google Chrome installation file | |
run: rm google-chrome-stable_current_amd64.deb | |
- name: Push HTML Report | |
env: | |
GH_TOKEN: ${{ secrets.GH_TOKEN }} | |
run: | | |
git config --global user.email "[email protected]" | |
git config --global user.name "iamdez99" | |
git stash | |
git fetch | |
git checkout gh-pages | |
git stash pop | |
mkdir -p ${{ steps.reportpath.outputs.path }} | |
mv target/html-charms-rasopathy-regression-reports/*.html ${{ steps.reportpath.outputs.path }}/report-${{ steps.timestamp.outputs.timestamp }}.html | |
git add . | |
git commit -m "Publishing cucumber report ${{ github.run_number }}" | |
git push -f https://${GH_TOKEN}@github.com/${GITHUB_REPOSITORY}.git HEAD:gh-pages | |
- name: Update Test Results and Append to Index File | |
env: | |
GH_TOKEN: ${{ secrets.GH_TOKEN }} | |
run: | | |
if [[ -f "charms-ras-test-results.html" ]]; then | |
sed -i '1s/.*/<h1>CHARMS RAS Test Results<\/h1>/' charms-ras-test-results.html | |
echo "<h3><a href='${{ steps.reportpath.outputs.path }}/report-${{ steps.timestamp.outputs.timestamp }}.html'>Test Report ${{ steps.reportpath.outputs.path }}/report-${{ steps.timestamp.outputs.timestamp }}.html</a></h3>" >> charms-ras-test-results.html | |
git add charms-ras-test-results.html | |
git commit -m "Update charms-ras-test-results.html" | |
else | |
echo "<h1>CHARMS RAS Test Results</h1>" > charms-ras-test-results.html | |
echo "<h3><a href='${{ steps.reportpath.outputs.path }}/report-${{ steps.timestamp.outputs.timestamp }}.html'>Test Report ${{ steps.reportpath.outputs.path }}/report-${{ steps.timestamp.outputs.timestamp }}.html</a></h3>" >> charms-ras-test-results.html | |
git add charms-ras-test-results.html | |
git commit -m "Create and update charms-ras-test-results.html" | |
fi | |
git push https://${GH_TOKEN}@github.com/${GITHUB_REPOSITORY}.git HEAD:gh-pages |