CKAN extension to enable PyCharm remote debugging
Project description
ckanext-pycharm-debugger
CKAN extension that provides PyCharm remote debugger session attachment
Based off the good work of https://github.com/NaturalHistoryMuseum/ckanext-dev/ which is now archived 6 years ago.
Not affiliated with JetBrains.
Pycharm is a trademark of JetBrains s.r.o.
This project is not affiliated with, endorsed by, or sponsored by JetBrains.
The trademark is used here only to describe the tool this extension integrates with, in accordance with fair use.
This project is licensed under the terms of the
Setup
To enable the remote debugger session, you need:
- Install the pydevd-pycharm.egg package on the remote machine (this file is part of the PyCharm distribution, see https://www.jetbrains.com/help/pycharm/remote-debugging-with-product.html)
or
bash pip install ckanext-python-debugger['PyCharm2025.1.1']'
or
bash pip install ckanext-python-debugger['PyCharm2024.1.4']'
or
bash pip install pydevd-pycharm ~= ##What your pycharm pro ide suggests##'
-
Add the line 'debug.remote = True' to your configuration file (this is independent of Ckan's debug setting ; both can be enabled or disabled separately) ;
-
Add the plugin
ckan.plugins = ... pycharm_debuggerto your configuration file. -
Setup a Remote Debugger within PyCharm, using port 5678 (or as defined by debug.host.port).
You may optionally define:
debug.remote.host.ipfor the host IP (defaults to host.docker.internal which is the default host when using Docker) ;debug.remote.host.portfor the host port (defaults to 5678; it needs to match the setting in PyCharm) ;debug.remote.stdout_to_serverto send stdout to the debugging host (defaults to True) ;debug.remote.stderr_to_serverto send stderr to the debugging host (defaults to True) ;debug.remote.suspenddefines whether the debugger should break as soon as it is started (defaults to True).
-
Ensure that pycharm remote debugging server is running on port
5678(default) ' -
Start CKAN
cd test-infrasturcture
docker compose exec ckan ckan -c ckan.ini run -H 0.0.0.0
- If you wish to use in pytest, place the following above your test class
@pytest.mark.ckan_config(u'ckan.plugins', u'pycharm_debugger')
@pytest.mark.ckan_config(u'debug.remote', u'True')
Requirements
Compatibility with core CKAN versions:
| CKAN version | Compatibility |
|---|---|
| 2.7 | untested |
| 2.8 | untested |
| 2.9 | untested |
| 2.10 | yes |
| 2.11 | yes |
| master | yes as of 2025/05 (check test results) |
License
Not affiliated with JetBrains.
Pycharm is a trademark of JetBrains s.r.o.
This project is not affiliated with, endorsed by, or sponsored by JetBrains.
The trademark is used here only to describe the tool this extension integrates with, in accordance with fair use.
This project is licensed under the terms of the
GNU Affero General Public License v3.0 (AGPL-3.0)
See the LICENSE file for full details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ckanext_pycharm_debugger-0.0.1.tar.gz.
File metadata
- Download URL: ckanext_pycharm_debugger-0.0.1.tar.gz
- Upload date:
- Size: 19.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f57312db639e877b00e4707b47ba65cf2d09d52b133e83a5705fe2183498742e
|
|
| MD5 |
d9697e9ee618e5fe9407525ae214b05c
|
|
| BLAKE2b-256 |
9d3fc3015a2c51aeeb06510349054f1c72d00c321225fb852bde72c5b1eaece8
|
Provenance
The following attestation bundles were made for ckanext_pycharm_debugger-0.0.1.tar.gz:
Publisher:
publish.yml on duttonw/ckanext-pycharm-debugger
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ckanext_pycharm_debugger-0.0.1.tar.gz -
Subject digest:
f57312db639e877b00e4707b47ba65cf2d09d52b133e83a5705fe2183498742e - Sigstore transparency entry: 211926554
- Sigstore integration time:
-
Permalink:
duttonw/ckanext-pycharm-debugger@63d830b9b04cfea4ffb6b5c8aab85cb59a30bbff -
Branch / Tag:
refs/tags/0.0.1 - Owner: https://github.com/duttonw
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@63d830b9b04cfea4ffb6b5c8aab85cb59a30bbff -
Trigger Event:
push
-
Statement type:
File details
Details for the file ckanext_pycharm_debugger-0.0.1-py3-none-any.whl.
File metadata
- Download URL: ckanext_pycharm_debugger-0.0.1-py3-none-any.whl
- Upload date:
- Size: 18.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
04ae307568a65b5c8912772c89903086adcb1b6fbf5e71e777237d533ea81e28
|
|
| MD5 |
cf27a68a439c5206d6f98f436753a50c
|
|
| BLAKE2b-256 |
8ae3952f8de1309f810b5d87caf01441c6110887b3fcf1581732002943d550fd
|
Provenance
The following attestation bundles were made for ckanext_pycharm_debugger-0.0.1-py3-none-any.whl:
Publisher:
publish.yml on duttonw/ckanext-pycharm-debugger
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ckanext_pycharm_debugger-0.0.1-py3-none-any.whl -
Subject digest:
04ae307568a65b5c8912772c89903086adcb1b6fbf5e71e777237d533ea81e28 - Sigstore transparency entry: 211926556
- Sigstore integration time:
-
Permalink:
duttonw/ckanext-pycharm-debugger@63d830b9b04cfea4ffb6b5c8aab85cb59a30bbff -
Branch / Tag:
refs/tags/0.0.1 - Owner: https://github.com/duttonw
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@63d830b9b04cfea4ffb6b5c8aab85cb59a30bbff -
Trigger Event:
push
-
Statement type: