From 4cc08f3cecb38c90e69c3b26d89caca217b5b042 Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri Benedetti Date: Tue, 22 Jul 2025 17:59:30 +0200 Subject: [PATCH 01/13] First PR --- .github/workflows/updatecli.yml | 46 +++++++ updatecli/updatecli.d/versions.yml | 213 +++++++++++++++++++++++++++++ updatecli/values.d/scm.yml | 5 + 3 files changed, 264 insertions(+) create mode 100644 .github/workflows/updatecli.yml create mode 100644 updatecli/updatecli.d/versions.yml create mode 100644 updatecli/values.d/scm.yml diff --git a/.github/workflows/updatecli.yml b/.github/workflows/updatecli.yml new file mode 100644 index 000000000..cf72e2081 --- /dev/null +++ b/.github/workflows/updatecli.yml @@ -0,0 +1,46 @@ +--- +name: updatecli + +on: + workflow_dispatch: + schedule: + - cron: "0 5 * * 1-5" + +permissions: + contents: read + +env: + JOB_URL: "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" + +jobs: + bump: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Get token + id: get_token + uses: tibdex/github-app-token@3beb63f4bd073e61482598c45c71c1019b59b73a # v2.1.0 + with: + app_id: ${{ secrets.OBS_AUTOMATION_APP_ID }} + private_key: ${{ secrets.OBS_AUTOMATION_APP_PEM }} + permissions: >- + { + "contents": "write", + "pull_requests": "write" + } + repositories: >- + ["docs-builder"] + + - uses: elastic/oblt-actions/updatecli/run@v1 + with: + command: apply --config updatecli/updatecli.d/versions.yml --values updatecli/values.d/scm.yml + env: + GITHUB_TOKEN: ${{ steps.get_token.outputs.token }} + + - if: ${{ failure() }} + uses: elastic/oblt-actions/slack/send@v1 + with: + bot-token: ${{ secrets.SLACK_BOT_TOKEN }} + channel-id: "#obs-docs-automation-alerts" + message: ":traffic_cone: updatecli failed for `${{ github.repository }}@${{ github.ref_name }}`, please look what's going on <${{ env.JOB_URL }}|here>" \ No newline at end of file diff --git a/updatecli/updatecli.d/versions.yml b/updatecli/updatecli.d/versions.yml new file mode 100644 index 000000000..0e52a2204 --- /dev/null +++ b/updatecli/updatecli.d/versions.yml @@ -0,0 +1,213 @@ +--- +name: Bump release versions in the config/versions.yml + +scms: + githubConfig: + kind: github + spec: + user: '{{ requiredEnv "GITHUB_ACTOR" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + owner: '{{ .scm.owner }}' + repository: '{{ .scm.repository }}' + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + commitusingapi: true + branch: '{{ .scm.branch }}' + force: false + +actions: + elastic-agent: + kind: github/pullrequest + scmid: githubConfig + spec: + automerge: false + labels: + - dependencies + title: '[Automation] Bump EDOT versions' + +sources: + latest-edot-android-version: + name: Get latest release version for the apm-agent-android + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: apm-agent-android + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-edot-collector-version: + name: Get latest major release version for the elastic-agent + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: elastic-agent + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionFilter: + kind: regex + pattern: "v9.(\\d*).(\\d*)$" + + latest-edot-dotnet-version: + name: Get latest release version for the elastic-otel-dotnet + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: elastic-otel-dotnet + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-edot-ios-version: + name: Get latest release version for the apm-agent-ios + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: apm-agent-ios + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-edot-java-version: + name: Get latest release version for the elastic-otel-java + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: elastic-otel-java + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-edot-node-version: + name: Get latest release version for the elastic-otel-node + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: elastic-otel-node + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionFilter: + kind: regex + pattern: "^v(\\d*).(\\d*).(\\d*)$" + + latest-edot-php-version: + name: Get latest release version for the elastic-otel-php + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: elastic-otel-php + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-edot-python-version: + name: Get latest release version for the elastic-otel-python + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: elastic-otel-python + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + +targets: + update-docs-docset-android: + name: 'Update config/versions.yml edot-android {{ source "latest-edot-android-version" }}' + scmid: githubConfig + sourceid: latest-edot-android-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(edot_android:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-edot-android-version" }}' + + update-docs-docset-collector: + name: 'Update config/versions.yml edot-collector {{ source "latest-edot-collector-version" }}' + scmid: githubConfig + sourceid: latest-edot-collector-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(edot_collector:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-edot-collector-version" }}' + + update-docs-docset-dotnet: + name: 'Update config/versions.yml edot-dotnet {{ source "latest-edot-dotnet-version" }}' + scmid: githubConfig + sourceid: latest-edot-dotnet-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(edot_dotnet:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-edot-dotnet-version" }}' + + update-docs-docset-ios: + name: 'Update config/versions.yml edot-ios {{ source "latest-edot-ios-version" }}' + scmid: githubConfig + sourceid: latest-edot-ios-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(edot_ios:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-edot-ios-version" }}' + + update-docs-docset-java: + name: 'Update config/versions.yml edot-java {{ source "latest-edot-java-version" }}' + scmid: githubConfig + sourceid: latest-edot-java-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(edot_java:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-edot-java-version" }}' + + update-docs-docset-node: + name: 'Update config/versions.yml edot-node {{ source "latest-edot-node-version" }}' + scmid: githubConfig + sourceid: latest-edot-node-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(edot_node:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-edot-node-version" }}' + + update-docs-docset-php: + name: 'Update config/versions.yml edot-php {{ source "latest-edot-php-version" }}' + scmid: githubConfig + sourceid: latest-edot-php-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(edot_php:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-edot-php-version" }}' + + update-docs-docset-python: + name: 'Update config/versions.yml edot-python {{ source "latest-edot-python-version" }}' + scmid: githubConfig + sourceid: latest-edot-python-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(edot_python:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-edot-python-version" }}' \ No newline at end of file diff --git a/updatecli/values.d/scm.yml b/updatecli/values.d/scm.yml new file mode 100644 index 000000000..f2693d960 --- /dev/null +++ b/updatecli/values.d/scm.yml @@ -0,0 +1,5 @@ +scm: + enabled: true + owner: elastic + repository: docs-builder + branch: main \ No newline at end of file From 05cbc4482c3ccb9f7018ae1800ef755b24c12ed1 Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri Benedetti Date: Tue, 22 Jul 2025 18:10:42 +0200 Subject: [PATCH 02/13] Add sources --- updatecli/updatecli.d/versions.yml | 278 ++++++++++++++++++++++++++++- 1 file changed, 277 insertions(+), 1 deletion(-) diff --git a/updatecli/updatecli.d/versions.yml b/updatecli/updatecli.d/versions.yml index 0e52a2204..0d6f7921d 100644 --- a/updatecli/updatecli.d/versions.yml +++ b/updatecli/updatecli.d/versions.yml @@ -131,6 +131,162 @@ sources: versionfilter: kind: latest + latest-ece-version: + name: Get latest release version for Elastic Cloud Enterprise + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: cloud-enterprise + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-eck-version: + name: Get latest release version for Elastic Cloud on Kubernetes + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: cloud-on-k8s + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-ecctl-version: + name: Get latest release version for ecctl + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: ecctl + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-curator-version: + name: Get latest release version for Elasticsearch Curator + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: curator + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-apm-agent-dotnet-version: + name: Get latest release version for APM .NET agent + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: apm-agent-dotnet + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-apm-agent-go-version: + name: Get latest release version for APM Go agent + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: apm-agent-go + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-apm-agent-java-version: + name: Get latest release version for APM Java agent + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: apm-agent-java + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-apm-agent-node-version: + name: Get latest release version for APM Node.js agent + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: apm-agent-nodejs + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-apm-agent-php-version: + name: Get latest release version for APM PHP agent + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: apm-agent-php + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-apm-agent-python-version: + name: Get latest release version for APM Python agent + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: apm-agent-python + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-apm-agent-ruby-version: + name: Get latest release version for APM Ruby agent + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: apm-agent-ruby + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + + latest-apm-agent-rum-version: + name: Get latest release version for APM RUM agent + kind: githubrelease + transformers: + - trimprefix: v + spec: + owner: elastic + repository: apm-agent-rum-js + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: latest + targets: update-docs-docset-android: name: 'Update config/versions.yml edot-android {{ source "latest-edot-android-version" }}' @@ -210,4 +366,124 @@ targets: spec: file: config/versions.yml matchpattern: '(edot_python:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-edot-python-version" }}' \ No newline at end of file + replacepattern: '$1 {{ source "latest-edot-python-version" }}' + + update-docs-docset-ece: + name: 'Update config/versions.yml ece {{ source "latest-ece-version" }}' + scmid: githubConfig + sourceid: latest-ece-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(ece:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-ece-version" }}' + + update-docs-docset-eck: + name: 'Update config/versions.yml eck {{ source "latest-eck-version" }}' + scmid: githubConfig + sourceid: latest-eck-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(eck:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-eck-version" }}' + + update-docs-docset-ecctl: + name: 'Update config/versions.yml ecctl {{ source "latest-ecctl-version" }}' + scmid: githubConfig + sourceid: latest-ecctl-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(ecctl:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-ecctl-version" }}' + + update-docs-docset-curator: + name: 'Update config/versions.yml curator {{ source "latest-curator-version" }}' + scmid: githubConfig + sourceid: latest-curator-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(curator:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-curator-version" }}' + + update-docs-docset-apm-agent-dotnet: + name: 'Update config/versions.yml apm_agent_dotnet {{ source "latest-apm-agent-dotnet-version" }}' + scmid: githubConfig + sourceid: latest-apm-agent-dotnet-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(apm_agent_dotnet:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-apm-agent-dotnet-version" }}' + + update-docs-docset-apm-agent-go: + name: 'Update config/versions.yml apm_agent_go {{ source "latest-apm-agent-go-version" }}' + scmid: githubConfig + sourceid: latest-apm-agent-go-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(apm_agent_go:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-apm-agent-go-version" }}' + + update-docs-docset-apm-agent-java: + name: 'Update config/versions.yml apm_agent_java {{ source "latest-apm-agent-java-version" }}' + scmid: githubConfig + sourceid: latest-apm-agent-java-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(apm_agent_java:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-apm-agent-java-version" }}' + + update-docs-docset-apm-agent-node: + name: 'Update config/versions.yml apm_agent_node {{ source "latest-apm-agent-node-version" }}' + scmid: githubConfig + sourceid: latest-apm-agent-node-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(apm_agent_node:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-apm-agent-node-version" }}' + + update-docs-docset-apm-agent-php: + name: 'Update config/versions.yml apm_agent_php {{ source "latest-apm-agent-php-version" }}' + scmid: githubConfig + sourceid: latest-apm-agent-php-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(apm_agent_php:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-apm-agent-php-version" }}' + + update-docs-docset-apm-agent-python: + name: 'Update config/versions.yml apm_agent_python {{ source "latest-apm-agent-python-version" }}' + scmid: githubConfig + sourceid: latest-apm-agent-python-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(apm_agent_python:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-apm-agent-python-version" }}' + + update-docs-docset-apm-agent-ruby: + name: 'Update config/versions.yml apm_agent_ruby {{ source "latest-apm-agent-ruby-version" }}' + scmid: githubConfig + sourceid: latest-apm-agent-ruby-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(apm_agent_ruby:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-apm-agent-ruby-version" }}' + + update-docs-docset-apm-agent-rum: + name: 'Update config/versions.yml apm_agent_rum {{ source "latest-apm-agent-rum-version" }}' + scmid: githubConfig + sourceid: latest-apm-agent-rum-version + kind: file + spec: + file: config/versions.yml + matchpattern: '(apm_agent_rum:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-apm-agent-rum-version" }}' \ No newline at end of file From 371bcac615b8efb978983bb192a6f56a1cb1119c Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri Benedetti Date: Wed, 23 Jul 2025 10:56:47 +0200 Subject: [PATCH 03/13] Peer edits --- updatecli/updatecli.d/versions.yml | 111 +++++++++++++---------------- 1 file changed, 49 insertions(+), 62 deletions(-) diff --git a/updatecli/updatecli.d/versions.yml b/updatecli/updatecli.d/versions.yml index 0d6f7921d..de1793d5f 100644 --- a/updatecli/updatecli.d/versions.yml +++ b/updatecli/updatecli.d/versions.yml @@ -25,6 +25,13 @@ actions: title: '[Automation] Bump EDOT versions' sources: + latest-stack-version: + name: Get latest Elastic Stack version + kind: json + spec: + file: https://artifacts.elastic.co/releases/stack.json + key: "releases.version" + latest-edot-android-version: name: Get latest release version for the apm-agent-android kind: githubrelease @@ -48,7 +55,7 @@ sources: repository: elastic-agent token: '{{ requiredEnv "GITHUB_TOKEN" }}' username: '{{ requiredEnv "GITHUB_ACTOR" }}' - versionFilter: + versionfilter: kind: regex pattern: "v9.(\\d*).(\\d*)$" @@ -101,7 +108,7 @@ sources: repository: elastic-otel-node token: '{{ requiredEnv "GITHUB_TOKEN" }}' username: '{{ requiredEnv "GITHUB_ACTOR" }}' - versionFilter: + versionfilter: kind: regex pattern: "^v(\\d*).(\\d*).(\\d*)$" @@ -292,198 +299,178 @@ targets: name: 'Update config/versions.yml edot-android {{ source "latest-edot-android-version" }}' scmid: githubConfig sourceid: latest-edot-android-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(edot_android:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-edot-android-version" }}' + key: versioning_systems.edot_android.current update-docs-docset-collector: name: 'Update config/versions.yml edot-collector {{ source "latest-edot-collector-version" }}' scmid: githubConfig sourceid: latest-edot-collector-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(edot_collector:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-edot-collector-version" }}' + key: versioning_systems.edot_collector.current update-docs-docset-dotnet: name: 'Update config/versions.yml edot-dotnet {{ source "latest-edot-dotnet-version" }}' scmid: githubConfig sourceid: latest-edot-dotnet-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(edot_dotnet:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-edot-dotnet-version" }}' + key: versioning_systems.edot_dotnet.current update-docs-docset-ios: name: 'Update config/versions.yml edot-ios {{ source "latest-edot-ios-version" }}' scmid: githubConfig sourceid: latest-edot-ios-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(edot_ios:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-edot-ios-version" }}' + key: versioning_systems.edot_ios.current update-docs-docset-java: name: 'Update config/versions.yml edot-java {{ source "latest-edot-java-version" }}' scmid: githubConfig sourceid: latest-edot-java-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(edot_java:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-edot-java-version" }}' + key: versioning_systems.edot_java.current update-docs-docset-node: name: 'Update config/versions.yml edot-node {{ source "latest-edot-node-version" }}' scmid: githubConfig sourceid: latest-edot-node-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(edot_node:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-edot-node-version" }}' + key: versioning_systems.edot_node.current update-docs-docset-php: name: 'Update config/versions.yml edot-php {{ source "latest-edot-php-version" }}' scmid: githubConfig sourceid: latest-edot-php-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(edot_php:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-edot-php-version" }}' + key: versioning_systems.edot_php.current update-docs-docset-python: name: 'Update config/versions.yml edot-python {{ source "latest-edot-python-version" }}' scmid: githubConfig sourceid: latest-edot-python-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(edot_python:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-edot-python-version" }}' + key: versioning_systems.edot_python.current update-docs-docset-ece: name: 'Update config/versions.yml ece {{ source "latest-ece-version" }}' scmid: githubConfig sourceid: latest-ece-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(ece:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-ece-version" }}' + key: versioning_systems.ece.current update-docs-docset-eck: name: 'Update config/versions.yml eck {{ source "latest-eck-version" }}' scmid: githubConfig sourceid: latest-eck-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(eck:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-eck-version" }}' + key: versioning_systems.eck.current update-docs-docset-ecctl: name: 'Update config/versions.yml ecctl {{ source "latest-ecctl-version" }}' scmid: githubConfig sourceid: latest-ecctl-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(ecctl:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-ecctl-version" }}' + key: versioning_systems.ecctl.current update-docs-docset-curator: name: 'Update config/versions.yml curator {{ source "latest-curator-version" }}' scmid: githubConfig sourceid: latest-curator-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(curator:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-curator-version" }}' + key: versioning_systems.curator.current update-docs-docset-apm-agent-dotnet: name: 'Update config/versions.yml apm_agent_dotnet {{ source "latest-apm-agent-dotnet-version" }}' scmid: githubConfig sourceid: latest-apm-agent-dotnet-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(apm_agent_dotnet:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-apm-agent-dotnet-version" }}' + key: versioning_systems.apm_agent_dotnet.current update-docs-docset-apm-agent-go: name: 'Update config/versions.yml apm_agent_go {{ source "latest-apm-agent-go-version" }}' scmid: githubConfig sourceid: latest-apm-agent-go-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(apm_agent_go:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-apm-agent-go-version" }}' + key: versioning_systems.apm_agent_go.current update-docs-docset-apm-agent-java: name: 'Update config/versions.yml apm_agent_java {{ source "latest-apm-agent-java-version" }}' scmid: githubConfig sourceid: latest-apm-agent-java-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(apm_agent_java:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-apm-agent-java-version" }}' + key: versioning_systems.apm_agent_java.current update-docs-docset-apm-agent-node: name: 'Update config/versions.yml apm_agent_node {{ source "latest-apm-agent-node-version" }}' scmid: githubConfig sourceid: latest-apm-agent-node-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(apm_agent_node:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-apm-agent-node-version" }}' + key: versioning_systems.apm_agent_node.current update-docs-docset-apm-agent-php: name: 'Update config/versions.yml apm_agent_php {{ source "latest-apm-agent-php-version" }}' scmid: githubConfig sourceid: latest-apm-agent-php-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(apm_agent_php:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-apm-agent-php-version" }}' + key: versioning_systems.apm_agent_php.current update-docs-docset-apm-agent-python: name: 'Update config/versions.yml apm_agent_python {{ source "latest-apm-agent-python-version" }}' scmid: githubConfig sourceid: latest-apm-agent-python-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(apm_agent_python:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-apm-agent-python-version" }}' + key: versioning_systems.apm_agent_python.current update-docs-docset-apm-agent-ruby: name: 'Update config/versions.yml apm_agent_ruby {{ source "latest-apm-agent-ruby-version" }}' scmid: githubConfig sourceid: latest-apm-agent-ruby-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(apm_agent_ruby:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-apm-agent-ruby-version" }}' + key: versioning_systems.apm_agent_ruby.current update-docs-docset-apm-agent-rum: name: 'Update config/versions.yml apm_agent_rum {{ source "latest-apm-agent-rum-version" }}' scmid: githubConfig sourceid: latest-apm-agent-rum-version - kind: file + kind: yaml spec: file: config/versions.yml - matchpattern: '(apm_agent_rum:\s+base:\s+[\d\.]+\s+current:)\s+(.+)' - replacepattern: '$1 {{ source "latest-apm-agent-rum-version" }}' \ No newline at end of file + key: versioning_systems.apm_agent_rum.current \ No newline at end of file From e9389e006ee2fdea14dddc59ef24b30bc2b24d45 Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri Benedetti Date: Wed, 23 Jul 2025 10:59:12 +0200 Subject: [PATCH 04/13] Add stack target --- updatecli/updatecli.d/versions.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/updatecli/updatecli.d/versions.yml b/updatecli/updatecli.d/versions.yml index de1793d5f..b68f1c4b6 100644 --- a/updatecli/updatecli.d/versions.yml +++ b/updatecli/updatecli.d/versions.yml @@ -295,6 +295,15 @@ sources: kind: latest targets: + update-docs-docset-stack: + name: 'Update config/versions.yml stack {{ source "latest-stack-version" }}' + scmid: githubConfig + sourceid: latest-stack-version + kind: yaml + spec: + file: config/versions.yml + key: versioning_systems.stack.current + update-docs-docset-android: name: 'Update config/versions.yml edot-android {{ source "latest-edot-android-version" }}' scmid: githubConfig From 5b65ccfe3e6242d5fb5ca7b9044d41b144a7a3ed Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri Benedetti Date: Wed, 23 Jul 2025 11:02:12 +0200 Subject: [PATCH 05/13] Add negative --- updatecli/updatecli.d/versions.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/updatecli/updatecli.d/versions.yml b/updatecli/updatecli.d/versions.yml index b68f1c4b6..bdd16e0a0 100644 --- a/updatecli/updatecli.d/versions.yml +++ b/updatecli/updatecli.d/versions.yml @@ -30,7 +30,7 @@ sources: kind: json spec: file: https://artifacts.elastic.co/releases/stack.json - key: "releases.version" + key: "releases[-1].version" latest-edot-android-version: name: Get latest release version for the apm-agent-android From a99f524eb374757d75715b44cfa863deb35c14a5 Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri-Benedetti Date: Wed, 23 Jul 2025 13:34:27 +0200 Subject: [PATCH 06/13] Update versions.yml --- updatecli/updatecli.d/versions.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/updatecli/updatecli.d/versions.yml b/updatecli/updatecli.d/versions.yml index bdd16e0a0..d47ad732d 100644 --- a/updatecli/updatecli.d/versions.yml +++ b/updatecli/updatecli.d/versions.yml @@ -15,7 +15,7 @@ scms: force: false actions: - elastic-agent: + docs-builder: kind: github/pullrequest scmid: githubConfig spec: @@ -482,4 +482,4 @@ targets: kind: yaml spec: file: config/versions.yml - key: versioning_systems.apm_agent_rum.current \ No newline at end of file + key: versioning_systems.apm_agent_rum.current From 7cf562152eb85cdcfa711f01d8291d3d004e96ce Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri-Benedetti Date: Wed, 23 Jul 2025 17:14:29 +0200 Subject: [PATCH 07/13] Remove ECE --- updatecli/updatecli.d/versions.yml | 22 ---------------------- 1 file changed, 22 deletions(-) diff --git a/updatecli/updatecli.d/versions.yml b/updatecli/updatecli.d/versions.yml index d47ad732d..611dde042 100644 --- a/updatecli/updatecli.d/versions.yml +++ b/updatecli/updatecli.d/versions.yml @@ -138,19 +138,6 @@ sources: versionfilter: kind: latest - latest-ece-version: - name: Get latest release version for Elastic Cloud Enterprise - kind: githubrelease - transformers: - - trimprefix: v - spec: - owner: elastic - repository: cloud-enterprise - token: '{{ requiredEnv "GITHUB_TOKEN" }}' - username: '{{ requiredEnv "GITHUB_ACTOR" }}' - versionfilter: - kind: latest - latest-eck-version: name: Get latest release version for Elastic Cloud on Kubernetes kind: githubrelease @@ -376,15 +363,6 @@ targets: file: config/versions.yml key: versioning_systems.edot_python.current - update-docs-docset-ece: - name: 'Update config/versions.yml ece {{ source "latest-ece-version" }}' - scmid: githubConfig - sourceid: latest-ece-version - kind: yaml - spec: - file: config/versions.yml - key: versioning_systems.ece.current - update-docs-docset-eck: name: 'Update config/versions.yml eck {{ source "latest-eck-version" }}' scmid: githubConfig From 4a1f3456cba28adfde8106a12093c1036d1b0104 Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri Benedetti Date: Wed, 23 Jul 2025 18:26:59 +0200 Subject: [PATCH 08/13] Replace stack version detection --- updatecli/updatecli.d/versions.yml | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/updatecli/updatecli.d/versions.yml b/updatecli/updatecli.d/versions.yml index 611dde042..cb23ade9d 100644 --- a/updatecli/updatecli.d/versions.yml +++ b/updatecli/updatecli.d/versions.yml @@ -26,11 +26,18 @@ actions: sources: latest-stack-version: - name: Get latest Elastic Stack version - kind: json + name: Get latest stack version + kind: githubrelease + transformers: + - trimprefix: v spec: - file: https://artifacts.elastic.co/releases/stack.json - key: "releases[-1].version" + owner: elastic + repository: elasticsearch + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GITHUB_ACTOR" }}' + versionfilter: + kind: regex + pattern: "v9.(\\d*).(\\d*)$" latest-edot-android-version: name: Get latest release version for the apm-agent-android From d77d2e640d23342b86f6fc79bdd6b845d78eb324 Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri Benedetti Date: Wed, 23 Jul 2025 18:34:42 +0200 Subject: [PATCH 09/13] Avoid anchor problem with stack --- updatecli/updatecli.d/versions.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/updatecli/updatecli.d/versions.yml b/updatecli/updatecli.d/versions.yml index cb23ade9d..f620235b4 100644 --- a/updatecli/updatecli.d/versions.yml +++ b/updatecli/updatecli.d/versions.yml @@ -293,10 +293,11 @@ targets: name: 'Update config/versions.yml stack {{ source "latest-stack-version" }}' scmid: githubConfig sourceid: latest-stack-version - kind: yaml + kind: file spec: file: config/versions.yml - key: versioning_systems.stack.current + matchpattern: '(stack: &stack\s+base: [\d\.]+\s+current:)\s+(.+)' + replacepattern: '$1 {{ source "latest-stack-version" }}' update-docs-docset-android: name: 'Update config/versions.yml edot-android {{ source "latest-edot-android-version" }}' From 5efd252cc4913b8eae271e92c23c085a0ba52173 Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri-Benedetti Date: Wed, 23 Jul 2025 20:00:00 +0200 Subject: [PATCH 10/13] Update versions.yml --- updatecli/updatecli.d/versions.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/updatecli/updatecli.d/versions.yml b/updatecli/updatecli.d/versions.yml index f620235b4..b0153f4ac 100644 --- a/updatecli/updatecli.d/versions.yml +++ b/updatecli/updatecli.d/versions.yml @@ -22,7 +22,7 @@ actions: automerge: false labels: - dependencies - title: '[Automation] Bump EDOT versions' + title: '[Automation] Bump Elastic Docs versions' sources: latest-stack-version: From 315325fa902ba016b6cef8f00e5ab5de449e6f15 Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri-Benedetti Date: Wed, 23 Jul 2025 21:49:10 +0200 Subject: [PATCH 11/13] Update updatecli/updatecli.d/versions.yml Co-authored-by: shainaraskas <58563081+shainaraskas@users.noreply.github.com> --- updatecli/updatecli.d/versions.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/updatecli/updatecli.d/versions.yml b/updatecli/updatecli.d/versions.yml index b0153f4ac..f0ffa7de4 100644 --- a/updatecli/updatecli.d/versions.yml +++ b/updatecli/updatecli.d/versions.yml @@ -22,7 +22,7 @@ actions: automerge: false labels: - dependencies - title: '[Automation] Bump Elastic Docs versions' + title: '[Automation] Bump product version numbers' sources: latest-stack-version: From fd8078b442c2597b9d39ce8d97078a6970f1d11a Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri-Benedetti Date: Thu, 24 Jul 2025 11:27:27 +0200 Subject: [PATCH 12/13] Update updatecli.yml --- .github/workflows/updatecli.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/updatecli.yml b/.github/workflows/updatecli.yml index cf72e2081..96f8bc617 100644 --- a/.github/workflows/updatecli.yml +++ b/.github/workflows/updatecli.yml @@ -42,5 +42,5 @@ jobs: uses: elastic/oblt-actions/slack/send@v1 with: bot-token: ${{ secrets.SLACK_BOT_TOKEN }} - channel-id: "#obs-docs-automation-alerts" - message: ":traffic_cone: updatecli failed for `${{ github.repository }}@${{ github.ref_name }}`, please look what's going on <${{ env.JOB_URL }}|here>" \ No newline at end of file + channel-id: "#docs-team" + message: ":traffic_cone: updatecli failed for `${{ github.repository }}@${{ github.ref_name }}`, please look what's going on <${{ env.JOB_URL }}|here>" From 13e416a3c0b543741677a91aeed16f5bcd46e664 Mon Sep 17 00:00:00 2001 From: Fabrizio Ferri-Benedetti Date: Mon, 28 Jul 2025 22:51:13 +0200 Subject: [PATCH 13/13] Update updatecli/updatecli.d/versions.yml Co-authored-by: Victor Martinez --- updatecli/updatecli.d/versions.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/updatecli/updatecli.d/versions.yml b/updatecli/updatecli.d/versions.yml index f0ffa7de4..9f3b84369 100644 --- a/updatecli/updatecli.d/versions.yml +++ b/updatecli/updatecli.d/versions.yml @@ -29,7 +29,7 @@ sources: name: Get latest stack version kind: githubrelease transformers: - - trimprefix: v + - trimprefix: v spec: owner: elastic repository: elasticsearch