Skip to content
Open
Show file tree
Hide file tree
Changes from 31 commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
cf61c57
Add a basic http OpAMP client
xrmx Jul 11, 2025
acd8b64
Add some docs and hook it into the system
xrmx Jul 30, 2025
efe8811
Add default value of 30 seconds to heartbeat message interval
xrmx Jul 30, 2025
5db6d7a
Fix docs build
xrmx Jul 30, 2025
1e3b43f
More docs improvements
xrmx Jul 30, 2025
c5d11c0
Fix spellcheck
xrmx Jul 30, 2025
52ec0dc
Remove local workaround
xrmx Jul 30, 2025
9a1ac49
Generate workflows and add to release script
xrmx Jul 30, 2025
72f4bad
Fix typos in opamp lint commands
xrmx Aug 1, 2025
454da0b
Fix requirements for pylint
xrmx Aug 1, 2025
f089d41
Update opamp/opentelemetry-opamp-client/pyproject.toml
emdneto Aug 1, 2025
71896fb
Recreate requirements
xrmx Aug 1, 2025
0ca2209
Add missing opentelemetry-api dependency
xrmx Aug 1, 2025
9fa39bb
Fix tox test commands
xrmx Aug 1, 2025
404931c
Fix tox
xrmx Aug 25, 2025
40e671c
Add baseline of vcrpy 7.0.0
xrmx Aug 25, 2025
acf5ad7
Ignore pb2 module in pylintrc
xrmx Aug 25, 2025
700088d
Bump pylint to match the version in core
xrmx Aug 25, 2025
793c58a
Silence pylint warnings
xrmx Aug 25, 2025
534e317
Don't trace opamp client own http requests
xrmx Sep 11, 2025
4c08bc3
Permit to pass a custom transport to client
xrmx Sep 11, 2025
71a6801
Don't bump pylint after all
xrmx Sep 11, 2025
99f20ce
Fix pylint
xrmx Sep 11, 2025
945b7b9
Try to typecheck opamp client
xrmx Sep 12, 2025
b010f9c
Bump version after rebase
xrmx Sep 12, 2025
b91c5d0
Fix typecheck in client
xrmx Sep 12, 2025
c55531c
Please pyright in strict mode
xrmx Sep 12, 2025
683d0cf
No need for functions and methods to be private since _opamp module i…
xrmx Sep 12, 2025
26c68e8
Add missing protobuf package installation for typecheck
xrmx Sep 12, 2025
3eb1769
Fix docs generation
xrmx Sep 12, 2025
eef2a44
Fix pyright exclusion rule for proto
xrmx Sep 30, 2025
14c5aaa
Feedback
xrmx Oct 1, 2025
be4ab84
Don't flush the queue at exit
xrmx Oct 1, 2025
beb0462
Log transport send exceptions
xrmx Oct 1, 2025
3c1be91
Update example to not assume that the config is in json format
xrmx Oct 1, 2025
5fd86b9
Fix typo in exception
xrmx Oct 2, 2025
7cab3a0
Looks like it's implementers
xrmx Oct 2, 2025
e8d6b59
Add timeout to stop to forward to threads join
xrmx Oct 6, 2025
9613bde
Clarify doc
xrmx Oct 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 60 additions & 0 deletions .github/workflows/core_contrib_test_0.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2992,3 +2992,63 @@ jobs:

- name: Run tests
run: tox -e py39-test-processor-baggage -- -ra

py39-test-opamp-client-latest:
name: opamp-client-latest
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout contrib repo @ SHA - ${{ env.CONTRIB_REPO_SHA }}
uses: actions/checkout@v4
with:
repository: open-telemetry/opentelemetry-python-contrib
ref: ${{ env.CONTRIB_REPO_SHA }}

- name: Checkout core repo @ SHA - ${{ env.CORE_REPO_SHA }}
uses: actions/checkout@v4
with:
repository: open-telemetry/opentelemetry-python
ref: ${{ env.CORE_REPO_SHA }}
path: opentelemetry-python

- name: Set up Python 3.9
uses: actions/setup-python@v5
with:
python-version: "3.9"
architecture: "x64"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py39-test-opamp-client-latest -- -ra

py39-test-opamp-client-lowest:
name: opamp-client-lowest
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout contrib repo @ SHA - ${{ env.CONTRIB_REPO_SHA }}
uses: actions/checkout@v4
with:
repository: open-telemetry/opentelemetry-python-contrib
ref: ${{ env.CONTRIB_REPO_SHA }}

- name: Checkout core repo @ SHA - ${{ env.CORE_REPO_SHA }}
uses: actions/checkout@v4
with:
repository: open-telemetry/opentelemetry-python
ref: ${{ env.CORE_REPO_SHA }}
path: opentelemetry-python

- name: Set up Python 3.9
uses: actions/setup-python@v5
with:
python-version: "3.9"
architecture: "x64"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py39-test-opamp-client-lowest -- -ra
19 changes: 19 additions & 0 deletions .github/workflows/lint_0.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1304,3 +1304,22 @@ jobs:

- name: Run tests
run: tox -e lint-processor-baggage

lint-opamp-client:
name: opamp-client
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.13"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e lint-opamp-client
190 changes: 190 additions & 0 deletions .github/workflows/test_2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1171,3 +1171,193 @@ jobs:

- name: Run tests
run: tox -e pypy3-test-processor-baggage -- -ra

py39-test-opamp-client-latest_ubuntu-latest:
name: opamp-client-latest 3.9 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.9
uses: actions/setup-python@v5
with:
python-version: "3.9"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py39-test-opamp-client-latest -- -ra

py39-test-opamp-client-lowest_ubuntu-latest:
name: opamp-client-lowest 3.9 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.9
uses: actions/setup-python@v5
with:
python-version: "3.9"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py39-test-opamp-client-lowest -- -ra

py310-test-opamp-client-latest_ubuntu-latest:
name: opamp-client-latest 3.10 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: "3.10"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py310-test-opamp-client-latest -- -ra

py310-test-opamp-client-lowest_ubuntu-latest:
name: opamp-client-lowest 3.10 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: "3.10"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py310-test-opamp-client-lowest -- -ra

py311-test-opamp-client-latest_ubuntu-latest:
name: opamp-client-latest 3.11 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.11
uses: actions/setup-python@v5
with:
python-version: "3.11"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py311-test-opamp-client-latest -- -ra

py311-test-opamp-client-lowest_ubuntu-latest:
name: opamp-client-lowest 3.11 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.11
uses: actions/setup-python@v5
with:
python-version: "3.11"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py311-test-opamp-client-lowest -- -ra

py312-test-opamp-client-latest_ubuntu-latest:
name: opamp-client-latest 3.12 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: "3.12"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py312-test-opamp-client-latest -- -ra

py312-test-opamp-client-lowest_ubuntu-latest:
name: opamp-client-lowest 3.12 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: "3.12"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py312-test-opamp-client-lowest -- -ra

py313-test-opamp-client-latest_ubuntu-latest:
name: opamp-client-latest 3.13 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.13"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py313-test-opamp-client-latest -- -ra

py313-test-opamp-client-lowest_ubuntu-latest:
name: opamp-client-lowest 3.13 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.13"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py313-test-opamp-client-lowest -- -ra
4 changes: 2 additions & 2 deletions .pylintrc
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ extension-pkg-whitelist=cassandra

# Add list of files or directories to be excluded. They should be base names, not
# paths.
ignore=CVS,gen,Dockerfile,docker-compose.yml,README.md,requirements.txt,docs,.venv,site-packages,.tox
ignore=CVS,gen,Dockerfile,docker-compose.yml,README.md,requirements.txt,docs,.venv,site-packages,.tox,proto

# Add files or directories matching the regex patterns to be excluded. The
# regex matches against base names, not paths.
Expand Down Expand Up @@ -179,7 +179,7 @@ contextmanager-decorators=contextlib.contextmanager
# List of members which are set dynamically and missed by pylint inference
# system, and so shouldn't trigger E1101 when accessed. Python regular
# expressions are accepted.
generated-members=types_pb2.*
generated-members=types_pb2.*,anyvalue_pb2.*,opamp_pb2.*

# Tells whether missing members accessed in mixin class should be ignored. A
# mixin class is detected if its name ends with "mixin" (case insensitive).
Expand Down
5 changes: 5 additions & 0 deletions docs-requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,11 @@ sqlalchemy>=1.0
tornado>=5.1.1
tortoise-orm>=0.17.0

# required by opamp
uuid_utils
protobuf>=5.0,< 7.0

# indirect dependency pins
markupsafe==2.0.1
itsdangerous==2.0.1

Loading
Loading