diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index 42d37e2d..365e5635 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -55,7 +55,7 @@ jobs: run: ./gradlew test - name: Process junit reports - uses: mikepenz/action-junit-report@v5.4.0 + uses: mikepenz/action-junit-report@v5.5.0 if: always() with: report_paths: 'build/test-results/test/TEST-*.xml' diff --git a/.github/workflows/search.yml b/.github/workflows/search.yml index acf17125..ac104d9e 100644 --- a/.github/workflows/search.yml +++ b/.github/workflows/search.yml @@ -69,7 +69,7 @@ jobs: - name: Run search tests run: ./gradlew testSearch - - uses: mikepenz/action-junit-report@v5.4.0 + - uses: mikepenz/action-junit-report@v5.5.0 if: always() with: report_paths: 'build/test-results/testSearch/TEST-*.xml' diff --git a/.github/workflows/update-elasticsearch.yml b/.github/workflows/update-elasticsearch.yml new file mode 100644 index 00000000..aa6a5368 --- /dev/null +++ b/.github/workflows/update-elasticsearch.yml @@ -0,0 +1,65 @@ +... + +name: update elasticsearch service + +'on': + pull_request: + branches: + - 'dependabot/*elasticsearch*' + push: + branches: + - 'dependabot/*elasticsearch*' + paths-ignore: + - docker-compose.yml + workflow_call: + +jobs: + update-elasticsearch-service: + runs-on: ubuntu-latest + permissions: + contents: write + + steps: + - uses: actions/checkout@v4.2.2 + + - name: install jq/yq + run: | + sudo apt-get update + sudo apt-get install -y --no-install-recommends jq yq + + - name: get newest elasticsearch version from github + id: latest + run: >- + latest=$( + curl -s https://api.github.com/repos/elastic/elasticsearch/releases + | jq -r '[.[] | select(.prerelease==false) | .tag_name] | max' + ); echo "latest=${latest#v}" >> "${GITHUB_OUTPUT}" + + - name: get version of our elasticsearch service + id: current + run: | + cur=$(yq -r .services.es.image docker-compose.yml) + echo "current=${cur#*:}" >> "${GITHUB_OUTPUT}" + + - name: bump docker compose elasticsearch version + run: >- + sed -i 's/\(elasticsearch:\)'${OLD}'/\1'${NEW}'/' docker-compose.yml + env: + OLD: ${{ steps.current.outputs.current }} + NEW: ${{ steps.latest.outputs.latest }} + + - name: push change + run: | + git config user.email "${GIT_MAIL}" + git config user.name "github-actions[bot]" + git add docker-compose.yml + git commit -m "bump elasticsearch from ${OLD} to ${NEW}" + git push + env: + OLD: ${{ steps.current.outputs.current }} + NEW: ${{ steps.latest.outputs.latest }} + GIT_MAIL: >- + 41898282+github-actions[bot]@users.noreply.github.com + continue-on-error: true + +--- diff --git a/.github/workflows/update-gradle-wrapper.yml b/.github/workflows/update-gradle-wrapper.yml index 6f589ffd..fa7ce344 100644 --- a/.github/workflows/update-gradle-wrapper.yml +++ b/.github/workflows/update-gradle-wrapper.yml @@ -7,8 +7,11 @@ on: - cron: "0 0 * * *" jobs: + update-gradle-wrapper: runs-on: ubuntu-latest + outputs: + changed: ${{ steps.changed.outputs.changed }} steps: - uses: actions/checkout@v4.2.2 @@ -25,8 +28,16 @@ jobs: labels: dependencies, gradle reviewers: jkatzwinkel - - run: git branch --show-current + - name: determine change status + id: changed + run: | + chg=$(git diff --shortstat HEAD..main | wc -l) + echo "changed=${chg}" >> ${GITHUB_OUTPUT} - - uses: ./.github/workflows/gradle.yml + post-update-tests: + runs-on: ubuntu-latest + needs: [update-gradle-wrapper] + uses: ./.github/workflows/gradle.yml + if: needs.update-gradle-wrapper.outputs.changed != '0' ...