3737 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
3838
3939jobs :
40- determine-languages :
41- runs-on : ubuntu-latest
42- outputs :
43- matrix : ${{ steps.set-matrix.outputs.matrix }}
44- steps :
45- - id : set-matrix
46- run : |
47- if [ "${{ inputs.language }}" == "all" ]; then
48- echo 'matrix={"language":["java","rb","py","dotnet","node"]}' >> $GITHUB_OUTPUT
49- else
50- echo 'matrix={"language":["${{ inputs.language }}"]}' >> $GITHUB_OUTPUT
51- fi
5240 build-docs :
53- needs : determine-languages
5441 runs-on : ubuntu-latest
55- strategy :
56- matrix : ${{ fromJson(needs.determine-languages.outputs.matrix) }}
57- fail-fast : false
5842 steps :
5943 - name : Checkout repository
6044 uses : actions/checkout@v4
@@ -69,43 +53,49 @@ jobs:
6953 - name : Setup curl for Ubuntu
7054 run : sudo apt-get update && sudo apt-get install -y libcurl4-openssl-dev
7155 - name : Setup Java
56+ if : ${{ inputs.language == 'java' || inputs.language == 'all' }}
7257 uses : actions/setup-java@v4
7358 with :
7459 java-version : 17
7560 distribution : ' temurin'
7661 - name : Set up Python 3.9
77- if : ${{ matrix .language == 'py' }}
62+ if : ${{ inputs .language == 'py' || inputs.language == 'all ' }}
7863 uses : actions/setup-python@v5
7964 with :
8065 python-version : 3.9
8166 - name : Install dependencies
82- if : ${{ matrix .language == 'py' }}
67+ if : ${{ inputs .language == 'py' || inputs.language == 'all ' }}
8368 run : |
8469 python -m pip install --upgrade pip
8570 pip install tox
8671 - name : Install npm dependencies
87- if : ${{ matrix .language == 'node' }}
72+ if : ${{ inputs .language == 'node' || inputs.language == 'all ' }}
8873 run : |
8974 npm install
9075 npm install --prefix javascript/selenium-webdriver
91- - name : Update Documentation
92- run : ./go ${{ matrix .language }}:docs
76+ - name : Generate Documentation for selected langauges
77+ run : ./go ${{ inputs .language }}:docs
9378 - name : Documentation Pull Request
79+ id : cpr
9480 uses : peter-evans/create-pull-request@v6
9581 with :
9682 token : ${{ secrets.SELENIUM_CI_TOKEN }}
9783 author :
Selenium CI Bot <[email protected] > 9884 delete-branch : true
99- branch : api-docs-${{ inputs.version }}-${{ matrix.language }}
85+ branch : api-docs-${{ inputs.version }}
10086 base : gh-pages
101- add-paths : |
102- ${{ matrix.language == 'node' && 'docs/api/javascript/**' || format('docs/api/{0}/**', matrix.language) }}
103- title : Update documentation for Selenium ${{ inputs.version }} (${{ matrix.language }})
87+ add-paths : docs/api/**
88+ title : Update documentation for Selenium ${{ inputs.version }}-${{ inputs.language }}
10489 body : |
105- This PR updates the API documentation for **${{ matrix.language }}** language bindings to version ** ${{ inputs.version }}**.
90+ This PR updates the API documentation for version **${{ inputs.version }}- ${{ inputs.language }}**.
10691
107- - Auto-generated by [create-pull-request][1]
108-
109- [1]: https://github.com/peter-evans/create-pull-request
92+ - Auto-generated by [workflow run #${{ github.run_id }}](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }})
11093 labels : B-docs
11194 draft : false
95+ - name : Enable Pull Request Auto-merge
96+ if : steps.cpr.outputs.pull-request-operation == 'created'
97+ uses : peter-evans/enable-pull-request-automerge@v3
98+ with :
99+ token : ${{ secrets.SELENIUM_CI_TOKEN }}
100+ pull-request-number : ${{ steps.cpr.outputs.pull-request-number }}
101+ merge-method : squash
0 commit comments