From 32049bf7ee2c03d436a291cc91847b7c2640461e Mon Sep 17 00:00:00 2001 From: Victor Martinez Date: Wed, 8 Feb 2023 16:49:14 +0100 Subject: [PATCH 1/5] action: ecs logging schema --- .ci/update-specs.yml | 57 +++++++++++++++++++++++++++++ .github/workflows/opentelemetry.yml | 20 ++++++++++ .github/workflows/update-specs.yml | 30 +++++++++++++++ 3 files changed, 107 insertions(+) create mode 100644 .ci/update-specs.yml create mode 100644 .github/workflows/opentelemetry.yml create mode 100644 .github/workflows/update-specs.yml diff --git a/.ci/update-specs.yml b/.ci/update-specs.yml new file mode 100644 index 0000000..b1fe43f --- /dev/null +++ b/.ci/update-specs.yml @@ -0,0 +1,57 @@ +--- +name: update specs + +scms: + githubConfig: + kind: github + spec: + user: '{{ requiredEnv "GIT_USER" }}' + email: '{{ requiredEnv "GIT_EMAIL" }}' + owner: elastic + repository: ecs-logging-go-logrus + token: '{{ requiredEnv "GITHUB_TOKEN" }}' + username: '{{ requiredEnv "GIT_USER" }}' + branch: main + +actions: + ecs-logging-go-logrus: + kind: github/pullrequest + scmid: githubConfig + sourceid: sha + spec: + automerge: false + labels: + - dependencies + title: 'synchronize ecs-logging spec' + description: |- + ### What + + ECS logging specs automatic sync + + ### Why + + *Changeset* + * https://github.com/elastic/ecs-logging/commit/{{ source "sha" }} + +sources: + spec.json: + name: Get specs from json + kind: file + spec: + file: https://raw.githubusercontent.com/elastic/ecs-logging/main/spec/spec.json + + sha: + name: Get commit + kind: json + spec: + file: 'https://api.github.com/repos/elastic/ecs-logging/commits?path=spec%2Fspec.json&page=1&per_page=1' + key: ".[0].sha" + +targets: + spec.json-update: + name: 'synchronize ecs-logging spec' + kind: file + sourceid: spec.json + scmid: githubConfig + spec: + file: tests/shared/spec/spec.json diff --git a/.github/workflows/opentelemetry.yml b/.github/workflows/opentelemetry.yml new file mode 100644 index 0000000..6a4dd89 --- /dev/null +++ b/.github/workflows/opentelemetry.yml @@ -0,0 +1,20 @@ +--- +name: OpenTelemetry Export Trace + +on: + workflow_run: + workflows: + - test + - test-reporter + - release + types: [completed] + +jobs: + otel-export-trace: + runs-on: ubuntu-latest + steps: + - uses: elastic/apm-pipeline-library/.github/actions/opentelemetry@current + with: + vaultUrl: ${{ secrets.VAULT_ADDR }} + vaultRoleId: ${{ secrets.VAULT_ROLE_ID }} + vaultSecretId: ${{ secrets.VAULT_SECRET_ID }} diff --git a/.github/workflows/update-specs.yml b/.github/workflows/update-specs.yml new file mode 100644 index 0000000..a8bbb17 --- /dev/null +++ b/.github/workflows/update-specs.yml @@ -0,0 +1,30 @@ +--- +# Send PRs to the subscribed ECS Agents if the spec files (JSON) are modified +name: update-specs + +on: + workflow_dispatch: + schedule: + - cron: '0 6 * * *' + +permissions: + pull-requests: write + contents: write + +jobs: + bump: + runs-on: ubuntu-latest + steps: + + - uses: actions/checkout@v3 + + - name: Setup Git + uses: elastic/apm-pipeline-library/.github/actions/setup-git@current + + - name: Install Updatecli in the runner + uses: updatecli/updatecli-action@453502948b442d7b9a923de7b40cc7ce8628505c + + - name: Run Updatecli + env: + GITHUB_TOKEN: ${{ github.token }} + run: updatecli apply --config ./.github/update-specs.yml From c9293a4a6ae8a99300ff5a44497d845c142588ea Mon Sep 17 00:00:00 2001 From: Victor Martinez Date: Wed, 8 Feb 2023 16:51:03 +0100 Subject: [PATCH 2/5] force recreate --- .ci/update-specs.yml | 1 + .github/workflows/update-specs.yml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.ci/update-specs.yml b/.ci/update-specs.yml index b1fe43f..b917a28 100644 --- a/.ci/update-specs.yml +++ b/.ci/update-specs.yml @@ -55,3 +55,4 @@ targets: scmid: githubConfig spec: file: tests/shared/spec/spec.json + forcecreate: true diff --git a/.github/workflows/update-specs.yml b/.github/workflows/update-specs.yml index a8bbb17..13ded15 100644 --- a/.github/workflows/update-specs.yml +++ b/.github/workflows/update-specs.yml @@ -27,4 +27,4 @@ jobs: - name: Run Updatecli env: GITHUB_TOKEN: ${{ github.token }} - run: updatecli apply --config ./.github/update-specs.yml + run: updatecli apply --config ./.ci/update-specs.yml From 208585bb770223445090ef65c4fcfb8581731e8d Mon Sep 17 00:00:00 2001 From: Victor Martinez Date: Wed, 8 Feb 2023 16:51:24 +0100 Subject: [PATCH 3/5] create empty file --- .ci/update-specs.yml | 1 - tests/shared/spec/spec.json | 0 2 files changed, 1 deletion(-) create mode 100644 tests/shared/spec/spec.json diff --git a/.ci/update-specs.yml b/.ci/update-specs.yml index b917a28..b1fe43f 100644 --- a/.ci/update-specs.yml +++ b/.ci/update-specs.yml @@ -55,4 +55,3 @@ targets: scmid: githubConfig spec: file: tests/shared/spec/spec.json - forcecreate: true diff --git a/tests/shared/spec/spec.json b/tests/shared/spec/spec.json new file mode 100644 index 0000000..e69de29 From 567400c4cdca684e9300150b053f572e587501bc Mon Sep 17 00:00:00 2001 From: Victor Martinez Date: Wed, 8 Feb 2023 16:52:57 +0100 Subject: [PATCH 4/5] udpate opentelemetry --- .github/workflows/opentelemetry.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/opentelemetry.yml b/.github/workflows/opentelemetry.yml index 6a4dd89..e91fc5b 100644 --- a/.github/workflows/opentelemetry.yml +++ b/.github/workflows/opentelemetry.yml @@ -5,8 +5,7 @@ on: workflow_run: workflows: - test - - test-reporter - - release + - update-specs types: [completed] jobs: From b810d48a6e67758e140458e3e8d99069feac0c33 Mon Sep 17 00:00:00 2001 From: Victor Martinez Date: Wed, 8 Feb 2023 17:27:42 +0000 Subject: [PATCH 5/5] Apply suggestions from code review Co-authored-by: Sergey Kleyman --- .ci/update-specs.yml | 4 ++-- .github/workflows/update-specs.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.ci/update-specs.yml b/.ci/update-specs.yml index b1fe43f..f9bbf02 100644 --- a/.ci/update-specs.yml +++ b/.ci/update-specs.yml @@ -8,13 +8,13 @@ scms: user: '{{ requiredEnv "GIT_USER" }}' email: '{{ requiredEnv "GIT_EMAIL" }}' owner: elastic - repository: ecs-logging-go-logrus + repository: ecs-logging-php token: '{{ requiredEnv "GITHUB_TOKEN" }}' username: '{{ requiredEnv "GIT_USER" }}' branch: main actions: - ecs-logging-go-logrus: + ecs-logging-php: kind: github/pullrequest scmid: githubConfig sourceid: sha diff --git a/.github/workflows/update-specs.yml b/.github/workflows/update-specs.yml index 13ded15..e7f9d78 100644 --- a/.github/workflows/update-specs.yml +++ b/.github/workflows/update-specs.yml @@ -1,5 +1,5 @@ --- -# Send PRs to the subscribed ECS Agents if the spec files (JSON) are modified +# Open a PR if the shared spec files are modified name: update-specs on: