77 - ' *'
88 branches :
99 - develop
10+ - release/4.28.1.0
1011
1112jobs :
12- build_and_test :
13- strategy :
14- fail-fast : false
15- matrix :
16- os : [ 'ubuntu-latest', 'macos-latest', 'windows-latest' ]
17- java-version : [ 17 ]
18- browser : ['googlechromeheadless', 'firefoxheadless', 'edgeheadless']
19- include :
20- - os : ubuntu-latest
21- set_display : export DISPLAY=:99; Xvfb :99 -screen 0 1024x768x24 -ac -noreset & sleep 3
22- install_dependencies : |
23- curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
24- sudo install -o root -g root -m 644 microsoft.gpg /etc/apt/trusted.gpg.d/
25- sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/edge stable main" > /etc/apt/sources.list.d/microsoft-edge-dev.list'
26- sudo rm microsoft.gpg
27- sudo apt update
28- sudo apt-get -y -q install xvfb zip curl microsoft-edge-beta
29- - os : windows-latest
30- install_dependencies : choco install firefox googlechrome curl zip -y --no-progress
31- - os : macos-latest
32- install_dependencies : |
33- brew install --cask firefox
34- brew install --cask google-chrome
35- brew install --cask microsoft-edge
36- brew install zip
37- brew install curl
38- exclude :
39- - os : macos-latest
40- browser : firefoxheadless # Webdriver download if not working with Firefox at GHA
41- java-version : 8
13+ # build_and_test:
14+ # strategy:
15+ # fail-fast: false
16+ # matrix:
17+ # os: [ 'ubuntu-latest', 'macos-latest', 'windows-latest' ]
18+ # java-version: [ 17 ]
19+ # browser: ['googlechromeheadless', 'firefoxheadless', 'edgeheadless']
20+ # include:
21+ # - os: ubuntu-latest
22+ # set_display: export DISPLAY=:99; Xvfb :99 -screen 0 1024x768x24 -ac -noreset & sleep 3
23+ # install_dependencies: |
24+ # curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
25+ # sudo install -o root -g root -m 644 microsoft.gpg /etc/apt/trusted.gpg.d/
26+ # sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/edge stable main" > /etc/apt/sources.list.d/microsoft-edge-dev.list'
27+ # sudo rm microsoft.gpg
28+ # sudo apt update
29+ # sudo apt-get -y -q install xvfb zip curl microsoft-edge-beta
30+ # - os: windows-latest
31+ # install_dependencies: choco install firefox googlechrome curl zip -y --no-progress
32+ # - os: macos-latest
33+ # install_dependencies: |
34+ # brew install --cask firefox
35+ # brew install --cask google-chrome
36+ # brew install --cask microsoft-edge
37+ # brew install zip
38+ # brew install curl
39+ # exclude:
40+ # - os: macos-latest
41+ # browser: firefoxheadless # Webdriver download if not working with Firefox at GHA
42+ # java-version: 8
4243
43- runs-on : ${{ matrix.os }}
44- name : Test on ${{ matrix.os }} with Java ${{ matrix.java-version }} using browser ${{ matrix.browser }}
45- steps :
46- - uses : actions/checkout@v4
47- - name : Set up JDK ${{ matrix.java-version }}
48- uses : actions/setup-java@v4
49- with :
50- distribution : zulu
51- java-version : ${{ matrix.java-version }}
52- java-package : jdk+fx # needed for jbrowser
53- - name : Set up other dependencies
54- run : |
55- ${{ matrix.install_dependencies }}
56- ${{ matrix.set_display }}
57- - name : Build with Maven
58- run : |
59- mvn -B -ntp -q verify --file pom.xml -P 'build,${{ matrix.browser }}'
60- - name : Delete output.xml (on Win)
61- run : |
62- Get-ChildItem target/robotframework-reports -Include *output.xml -Recurse | Remove-Item
63- echo "REPORT_FILE=$(Get-ChildItem target/robotframework-reports -Include *report.html -Recurse -Name)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
64- echo "SHA=$(("${{ github.event_name }}" -eq "push") ? '${{ github.sha }}' : '${{ github.event.pull_request.head.sha }}')" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
65- if : always() && runner.os == 'Windows'
44+ # runs-on: ${{ matrix.os }}
45+ # name: Test on ${{ matrix.os }} with Java ${{ matrix.java-version }} using browser ${{ matrix.browser }}
46+ # steps:
47+ # - uses: actions/checkout@v4
48+ # - name: Set up JDK ${{ matrix.java-version }}
49+ # uses: actions/setup-java@v4
50+ # with:
51+ # distribution: zulu
52+ # java-version: ${{ matrix.java-version }}
53+ # java-package: jdk+fx # needed for jbrowser
54+ # - name: Set up other dependencies
55+ # run: |
56+ # ${{ matrix.install_dependencies }}
57+ # ${{ matrix.set_display }}
58+ # - name: Build with Maven
59+ # run: |
60+ # mvn -B -ntp -q verify --file pom.xml -P 'build,${{ matrix.browser }}'
61+ # - name: Delete output.xml (on Win)
62+ # run: |
63+ # Get-ChildItem target/robotframework-reports -Include *output.xml -Recurse | Remove-Item
64+ # echo "REPORT_FILE=$(Get-ChildItem target/robotframework-reports -Include *report.html -Recurse -Name)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
65+ # echo "SHA=$(("${{ github.event_name }}" -eq "push") ? '${{ github.sha }}' : '${{ github.event.pull_request.head.sha }}')" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
66+ # if: always() && runner.os == 'Windows'
6667
67- - name : Delete output.xml (on Unix-like)
68- run : |
69- find target/robotframework-reports -type f -name '*output.xml' -exec rm {} +
70- echo "REPORT_FILE=$(find target/robotframework-reports -type f -name '*report.html' | sed 's#.*/##')" >> $GITHUB_ENV
71- echo "SHA=$([ "${{ github.event_name }}" == "push" ] && echo "${{ github.sha }}" || echo "${{ github.event.pull_request.head.sha }}")" >> $GITHUB_ENV
72- if : always() && runner.os != 'Windows'
68+ # - name: Delete output.xml (on Unix-like)
69+ # run: |
70+ # find target/robotframework-reports -type f -name '*output.xml' -exec rm {} +
71+ # echo "REPORT_FILE=$(find target/robotframework-reports -type f -name '*report.html' | sed 's#.*/##')" >> $GITHUB_ENV
72+ # echo "SHA=$([ "${{ github.event_name }}" == "push" ] && echo "${{ github.sha }}" || echo "${{ github.event.pull_request.head.sha }}")" >> $GITHUB_ENV
73+ # if: always() && runner.os != 'Windows'
7374
74- - name : Print actual triggering commit
75- run : echo "${{ env.SHA }}"
75+ # - name: Print actual triggering commit
76+ # run: echo "${{ env.SHA }}"
7677
77- - name : Archive acceptances test results
78- uses : actions/upload-artifact@v4
79- with :
80- name : at-results-${{ matrix.browser }}-${{ matrix.os }}-${{ matrix.java-version }}
81- path : target/robotframework-reports
82- if : always() && job.status == 'failure'
78+ # - name: Archive acceptances test results
79+ # uses: actions/upload-artifact@v4
80+ # with:
81+ # name: at-results-${{ matrix.browser }}-${{ matrix.os }}-${{ matrix.java-version }}
82+ # path: target/robotframework-reports
83+ # if: always() && job.status == 'failure'
8384
84- - name : Upload results on failure
85- id : upload_results
86- run : |
87- echo '<html><head><meta http-equiv = "refresh" content =" 0 ; url = /${{ env.REPORT_FILE }}"></head></html>' > target/robotframework-reports/index.html
88- zip -r -j site.zip target/robotframework-reports > no_output 2>&1
89- curl -s -H "Content-Type: application/zip" -H "Authorization: Bearer ${{ secrets.NETLIFY_TOKEN }}" --data-binary "@site.zip" https://api.netlify.com/api/v1/sites > response.json
90- echo "::set-output name=REPORT_URL::$(cat response.json|python -c "import sys, json; print('https://' + json.load(sys.stdin)['subdomain'] + '.netlify.com')")"
91- echo "::set-output name=JOB_STATUS::$(python -c "print('${{ job.status }}'.lower())")"
92- if : always() && job.status == 'failure'
85+ # - name: Upload results on failure
86+ # id: upload_results
87+ # run: |
88+ # echo '<html><head><meta http-equiv = "refresh" content =" 0 ; url = /${{ env.REPORT_FILE }}"></head></html>' > target/robotframework-reports/index.html
89+ # zip -r -j site.zip target/robotframework-reports > no_output 2>&1
90+ # curl -s -H "Content-Type: application/zip" -H "Authorization: Bearer ${{ secrets.NETLIFY_TOKEN }}" --data-binary "@site.zip" https://api.netlify.com/api/v1/sites > response.json
91+ # echo "::set-output name=REPORT_URL::$(cat response.json|python -c "import sys, json; print('https://' + json.load(sys.stdin)['subdomain'] + '.netlify.com')")"
92+ # echo "::set-output name=JOB_STATUS::$(python -c "print('${{ job.status }}'.lower())")"
93+ # if: always() && job.status == 'failure'
9394
94- - uses : octokit/request-action@dad4362715b7fb2ddedf9772c8670824af564f0d # v2.4.0
95- name : Update status with Github Status API
96- id : update_status_pr
97- with :
98- route : POST /repos/{repository}/statuses/{sha}
99- repository : ${{ github.repository }}
100- sha : " ${{env.SHA}}"
101- state : " ${{steps.upload_results.outputs.JOB_STATUS}}"
102- target_url : " ${{steps.upload_results.outputs.REPORT_URL}}"
103- description : " Link to test report."
104- context : at-results-${{ matrix.browser }}-${{ matrix.os }}-${{ matrix.java-version }}
105- env :
106- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
107- if : always() && job.status == 'failure'
95+ # - uses: octokit/request-action@dad4362715b7fb2ddedf9772c8670824af564f0d #v2.4.0
96+ # name: Update status with Github Status API
97+ # id: update_status_pr
98+ # with:
99+ # route: POST /repos/{repository}/statuses/{sha}
100+ # repository: ${{ github.repository }}
101+ # sha: "${{env.SHA}}"
102+ # state: "${{steps.upload_results.outputs.JOB_STATUS}}"
103+ # target_url: "${{steps.upload_results.outputs.REPORT_URL}}"
104+ # description: "Link to test report."
105+ # context: at-results-${{ matrix.browser }}-${{ matrix.os }}-${{ matrix.java-version }}
106+ # env:
107+ # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
108+ # if: always() && job.status == 'failure'
108109
109110 release :
110- needs : [build_and_test]
111+ # needs: [build_and_test]
111112 if : github.event_name == 'push'
112113 runs-on : ubuntu-latest
113114 name : Release package
@@ -119,10 +120,9 @@ jobs:
119120 distribution : zulu
120121 java-version : 17
121122 - name : Release Maven package
122- run :
123- echo $GPG_PRIVATE_KEY > .m2/private-key.txt
124- gpg --import --batch .m2/private-key.txt
125- rm .m2/private-key.txt
123+ run : |
124+ export GPG_TTY=$(tty)
125+ echo -n "$GPG_PRIVATE_KEY" | gpg --allow-secret-key-import --batch --import
126126 mvn clean deploy --batch-mode --activate-profiles deploy --settings ${{ github.workspace }}/.m2/settings.xml -DskipTests -B -ntp
127127 env :
128128 GPG_PRIVATE_KEY : ${{ secrets.gpg_private_key }}
0 commit comments