Document for plugin writers the usefullness of mitmproxy
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 598
- Forks
- 168
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 86
Description
Author: @bmbouter (bmbouter)
Redmine Issue: 6870, https://pulp.plan.io/issues/6870
Background
The mitmproxy are extremely useful for debugging how services work which normally talk using TLS. Say you want to debug a CLI talking to it's server so that you can reverse engineer how Pulp needs to behave as either the client or server. For example debugging between the ansible-galaxy CLI and galaxy.ansible.com (the server side). You could use mitmproxy in the middle like:
ansible-galaxy CLI <--> mitmproxy <--> ansible.galaxy.com.
You can enable this easily if the CLI has any sort of "proxy config".
Example
Setup mitmproxy and run it
pip install mitmproxy
mitmweb -v -v -v --listen-port 8088 --web-port 8089 -k
Configure the CLI to talk "through" mitmproxy and to ignore that it doesn't have a trusted cert
export ANSIBLE_GALAXY_IGNORE=true
export ANSIBLE_CONFIG=/home/vagrant/devel/automation_hub.cfg
export HTTPS_PROXY=localhost:8088
Usage
Make CLI requests and read all requests and responses from the mitmproxy UI.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No target documentation file is named. Start with the mitmproxy setup and the ansible-galaxy example in the issue, then locate the plugin-writer or CLI documentation area where this guidance belongs. Done means plugin writers can install mitmproxy, configure the CLI proxy and certificate settings, and inspect requests and responses through the mitmproxy UI.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ansible, python
- Domain
- cli, developer-experience, documentation
- Issue type
- Documentation
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100