Commit Graph

647 Commits (e11b251c75b89e643cab764fd271007e739cf6ce)

Author SHA1 Message Date
David Wilson 863e1aedd6 docs: fix Changelog bug link 6 years ago
David Wilson 300cb41e2e core: detect stream corruption. Closes #438. 6 years ago
David Wilson 9868e4ea3a issue #439: update changelog. 6 years ago
David Wilson 94512f4ef8 issue #399, #437: update Changelog. 6 years ago
David Wilson 9074ddf69f docs: fix username 6 years ago
David Wilson b944a5485e docs: remove whitespace 6 years ago
David Wilson eb28a94a87 docs: avoid Sphinx weirdness by removing paragraph in list 6 years ago
David Wilson 73c7b5daeb docs: modernize 2 examples 6 years ago
David Wilson d5cb98fa87 issue #435, #362: update Changelog. 6 years ago
David Wilson fd5698c191 docs: 4kify images.
These commits were squashed to avoid repo size exploding.
6 years ago
David Wilson 4553039ed2 docs: update Changelog; closes #391. 6 years ago
David Wilson 1756cea65b issue #109: update Changelog. 6 years ago
David Wilson 578c2c3b46 issue #364: update ChangeLog. 6 years ago
David Wilson b60a6d0f3b Split dev_requirements.txt up according to test mode. 6 years ago
David Wilson 43306fff81 docs: drop sphinx-autobuild, avoids 10 deps (-16%)
sphinx-autobuild==0.6.0 (from -r docs/docs-requirements.txt (line 2))
livereload>=2.3.0 (from sphinx-autobuild==0.6.0->-r docs/docs-requirements.txt (line 2))
pathtools>=0.1.2 (from sphinx-autobuild==0.6.0->-r docs/docs-requirements.txt (line 2))
tornado>=3.2 (from sphinx-autobuild==0.6.0->-r docs/docs-requirements.txt (line 2))
argh>=0.24.1 (from sphinx-autobuild==0.6.0->-r docs/docs-requirements.txt (line 2))
watchdog>=0.7.1 (from sphinx-autobuild==0.6.0->-r docs/docs-requirements.txt (line 2))
port-for==0.3.1 (from sphinx-autobuild==0.6.0->-r docs/docs-requirements.txt (line 2))
backports.ssl_match_hostname (from tornado>=3.2->sphinx-autobuild==0.6.0->-r docs/docs-requirements.txt (line 2))
singledispatch (from tornado>=3.2->sphinx-autobuild==0.6.0->-r docs/docs-requirements.txt (line 2))
backports_abc>=0.4 (from tornado>=3.2->sphinx-autobuild==0.6.0->-r docs/docs-requirements.txt (line 2))
6 years ago
David Wilson 5233c47eba docs: Changelog typo 6 years ago
David Wilson 01c4f3fee1 core: rearrange stdio setup to cope with buffering; closes #422 6 years ago
David Wilson 905fbe7cbb issue #420: update Changelog. 6 years ago
David Wilson a7eca5b55e docs: update Changelog. 6 years ago
David Wilson 7a1dfa388a docs: update Changelog; closes #413. 6 years ago
David Wilson fea0fb41fc docs: update Changelog; closes #288 6 years ago
David Wilson 33011af9a5 issue #387: update Changelog. 6 years ago
David Wilson 176fe55bbd issue #416: update Changelog 6 years ago
David Wilson 4ac9cdce7c docs: update Changelog; closes #417. 6 years ago
David Wilson 01e65d7865 docs: update Changelog; closes #406. 6 years ago
David Wilson 14b389cb46 issue #406: don't leak FDs on failed child start. 6 years ago
David Wilson 4230a93557 issue #406: update Changelog. 6 years ago
David Wilson 6fdc45da1a docs: Changelog concision 6 years ago
David Wilson 5bdb745f07 docs: howitworks tweaks 6 years ago
David Wilson 8e4c164d93 issue #388: fix Sphinx markup 6 years ago
David Wilson 804bacdadb docs: move most remaining docstrings back into *.py; closes #388
The remaining ones are decorators which don't seem to have an autodoc
equivlent.
6 years ago
David Wilson 1f8c09e43f issue #333: update Changelog. 6 years ago
David Wilson f8f2f9d718 docs: update Changelog; closes #352. 6 years ago
David Wilson 677dbdb0e7 docs: update Changelog; closes #351. 6 years ago
David Wilson a098943e3c docs: update install steps to point directly at Known Issues. 6 years ago
David Wilson 1af2d9aef1 docs: move Known Issues to the top. 6 years ago
David Wilson 59d0f0df65 docs: split Known Issues out into a separate heading and update it 6 years ago
David Wilson 7fd4549ad1 issue #370: update Changelog. 6 years ago
David Wilson f3f36d6244 docs: add connection: "smart" to known issues. 6 years ago
David Wilson d9b2686259 docs: update Changelog 6 years ago
David Wilson 40d11b32b0 issue #400: update Changelog. 6 years ago
David Wilson a7ee23719a issue #388: move a ton of documentation back into the source 6 years ago
David Wilson c89675112b issue #410: update changelog 6 years ago
David Wilson fadb9181bc issue #410: support sudo --user and SELinux options, add stub test. 6 years ago
David Wilson 0d410aef51 docs: fix internals.rst headings. 6 years ago
David Wilson 0394dac2c7 docs: document RouteMonitor class. 6 years ago
David Wilson 7314b54afd issue #409: update Changelog. 6 years ago
David Wilson 54445470e2 issue #409: add missing path config variables to severa plugins
So every method can be redirected to a stub implementation.
6 years ago
David Wilson 48942a8a30 issue #409: updat Changelog. 6 years ago
David Wilson 026710cb28 issue #373: update Changelog. 6 years ago
David Wilson 1198164ce6 docs: Changelog typos. 6 years ago
David Wilson 766dce9a59 docs: update Changelog 6 years ago
David Wilson d81698c43a docs: update Changelog. 6 years ago
David Wilson 1eae594e32 ssh: fix check_host_keys="accept" and test; closes #411
Add real accept/enforce tests.
6 years ago
David Wilson cf50b572f6 docs: update ChangeLog. 6 years ago
David Wilson b527ff0b66 docs: update Changelog; closes #369. 6 years ago
David Wilson efed9da474 docs: update Changelog. 6 years ago
David Wilson 9ec360c26d core: split out & extend Broker.sync_call() 6 years ago
David Wilson 8891fda48a docs: getting_started typo 6 years ago
David Wilson f3e19d81da docs: reorder sections 6 years ago
David Wilson 96b88cc70f issue #76: docs: update Changelog. 6 years ago
David Wilson bd71a2760e docs: describe disconnect propagation; closes #76. 6 years ago
David Wilson 72da291b24 docs: fix up incomplete Temporary Files section. 6 years ago
David Wilson 48bc91550b docs: update changelog. 6 years ago
David Wilson 40d2cf7e25 docs: update changelog. 6 years ago
David Wilson a7b1831ddf core: move IS_DEAD doc into core.py. 6 years ago
David Wilson 48f9fc8930 docs: tweak thanks text 6 years ago
David Wilson f5e933e8a2 docs: add Alex's fix to changelog 6 years ago
dw f3ee4011cc
Merge pull request #386 from moreati/doc-cleanups
Documentation cleanups
6 years ago
Alex Willmer 90823231f9 docs: Add services page to a hidden table of contents
This fixes an error reported by tox -edocs

Warning, treated as error:
/home/alex/src/mitogen/docs/services.rst:document isn't included in any
toctree

without promoting the page to a top level TOC entry, since the page
appears to be work in progress.
6 years ago
Alex Willmer bf34b383eb docs: Disambiguate references to Context
This addresses an error found while running tox -edocs

Warning, treated as error:
mitogen/docs/api.rst:469:more than one target found for cross-reference
u'Context': mitogen.core.Context, mitogen.parent.Context
6 years ago
Alex Willmer 191a327d9d docs: Don't redefine links to scp and sftp
This addresses an error found while running tox -edocs

Warning, treated as error:
./docs/ansible.rst:6:Duplicate explicit target name: "scp(1)".
6 years ago
David Wilson 0fa5fe5559 parent: handle masters with blank sys.executable; closes #356. 6 years ago
David Wilson 4c81eba599 Merge commit 'refs/pull/377/head' of github.com:dw/mitogen into dmw
(Pull #377)

Changes:
- additional_parameters -> extra_args
- Merge with kubectl changes from dmw branch
- Update docs
- Remove unused username class member
- Avoid mutable kubectl_args class member
- Use six.iteritems
6 years ago
David Wilson 0abb6b0880 issue 366: update changelog. 6 years ago
David Wilson f6b201bdfc docs: updates for #376 and #371 6 years ago
David Wilson 9fadd22396 docs: update Changelog; closes #362. 6 years ago
David Wilson 5521945bd2 ansible: temporary files take 5. 6 years ago
David Wilson 43ad23946e docs: tidy up wording. 6 years ago
David Wilson 3660febeb2 docs: add inline subscribe form to installation instructions 6 years ago
David Wilson 638b196a45 ansible: fix put_file() for large temporary files.
Reverts 49736b3a, large file copies can't avoid the RTT.

The parent stack must be blocked while FileService progresses, as unlike
the small file path, it does not make a snapshot of the (possibly
temporary) file passed by the action plug-in. So we need to keep that
file alive while the service runs.

Add a new integration test and a new soak test to cover both.
6 years ago
David Wilson dfc67b89fd docs: some more cleanups
- add faulthandler/thread stacks to changelog.
- various api.rst cleanups.
- docs: explain chain_id in howitworks.
6 years ago
David Wilson 6cb0e422e9 docs: changelog typo. 6 years ago
David Wilson 65f03e03f5 tests: remote_tmp test fixes. 6 years ago
David Wilson cc4835ce99 docs: update changelog. 6 years ago
David Wilson f0f828033f docs: update changelog. 6 years ago
David Wilson ae446ad7c8 docs: fix changelog 6 years ago
David Wilson c9596568be docs: update changelog. 6 years ago
David Wilson 2c0244eea7 docs: more tweaks 6 years ago
David Wilson c8081e7ca1 docs: typo 6 years ago
David Wilson e241081cae ansible: stop sharing target temp_dir in runner.
This cannot work with delegate_to, since delegate_to permits multiple
concurrent tasks to be executing on the same target.
6 years ago
David Wilson 020482e554 dosc: update changelog 6 years ago
David Wilson 4d3873c784 core: call chains v3: abstract it into a new CallChain class. 6 years ago
David Wilson 1bf9b2c1a3 docs: update changelog. 6 years ago
David Wilson aa9400a3b9 docs: fix changelog 6 years ago
David Wilson a3957d6aaf parent: add Context.forget_chain(). 6 years ago
David Wilson 1247d1fce6 docs: update changelog. 6 years ago
David Wilson 42b1b3d286 core: support mitogen_chain dispatcher option. 6 years ago
David Wilson 07845d2f59 docs: update changelog. 6 years ago
David Wilson 57fb00cf6b docs: update changelog. 6 years ago
David Wilson 1b6dea24ba docs: update changelog. 6 years ago
David Wilson 6c8a667691 docs: update Changelog. 6 years ago
David Wilson 7d62a53264 issue #337: ssh: disabling PTYs round 2: make it automatic. 6 years ago
David Wilson 5004207705 issue #337: ssh: support disabling PTY allocation
`.ssh(batch_mode=True)`
6 years ago
David Wilson 8ab11f415f ansible: better support for diagnosing hangs
* Always enable the faulthandler module in the top-level process if it
  is available.
* Make MITOGEN_DUMP_THREAD_STACKS interval configurable, to better
  handle larger runs.
* Add docs subsection on diagnosing hangs.

Conflicts:
	ansible_mitogen/process.py
6 years ago
David Wilson 897bc07ea0 docs: update changelog. 6 years ago
David Wilson 42f07466d2 setns: always assume a user identity, default to root.
Without this, an invocation like:

    sudo ansible-playbook foo.yml

Where foo.yml uses setns, could inherit the HOME environment variable
from the external non-root user, which broke /usr/bin/mysql_upgrade and
plenty more.
6 years ago
David Wilson c32b8d9728 docs: fix up doas documentation. 6 years ago
David Wilson 4134218ef4 docs: update changelog. 6 years ago
David Wilson d36a320e7f docs: update contributors. 6 years ago
David Wilson fcc7429111 docs: changelog: split out enhancements 6 years ago
David Wilson 52cd7fddc1 docs: update changelog. 6 years ago
David Wilson 7458dfae85 ansible: avoid roundtrip for small file transfers.
Calls to connect.put_file() where the file is sufficiently small enough
to fit in a single RPC proceed without waiting for an RPC response. If
the write fails the target context will log an exception, and any
subsequent step depending on the written file will fail.

I verified every built-in action plugin for file transfer calls, and
they all depend on the transferred file in the following step, so this
should be safe.

Reduces template/copy actions to 2-RTT, loop-20-templates.yml runtime
reduced from 30 seconds to 10 seconds over a 250ms link compared to
v0.2.2, and from 123 seconds compared to vanilla with pipelining
enabled.
6 years ago
David Wilson 84521b714f docs: update changelog. 6 years ago
David Wilson 76c4cf57bd docs: update changelog 6 years ago
David Wilson bce4f59138 issue #345: disable IdentitiesOnly by default. 6 years ago
David Wilson e84de489eb issue #336: update changelog.
Closes #336.
6 years ago
David Wilson 06cae11e52 Add freze alabaster version to try fix layout issue. 6 years ago
David Wilson 2e3d04bbb8 issue #342: forward _create_control_path() to SSH plugin.
network_cli connection type loads the "ssh" (mitogen_ssh) plugin and
expects a private method to exist.
6 years ago
David Wilson bc682ce5a0 docs: update supported versions. 6 years ago
David Wilson 77b68f9b9d issue #321: docs fixes 6 years ago
David Wilson ac9b84d237 issue #321: 2.4+ compatibility fixes, disable test on Vanilla. 6 years ago
David Wilson f24f02ba06 issue #321: take remote_tmp and system_tmpdirs into account.
Can't simply ignore these settings as some users may have weird noexec
filesystems.
6 years ago
David Wilson a2686b1a2c issue #321: simplify temp directory handling. 6 years ago
David Wilson 27b64a484b docs: document mitogen.core.CHUNK_SIZE. 6 years ago
David Wilson ec8d759d46 docs: document one more. 6 years ago
David Wilson 442d88e3d7 docs: many more fixes/merges. 6 years ago
David Wilson a561fb79e5 docs: merge more docs back into mitogen/core.py. 6 years ago
David Wilson 06e2e846c5 parent: don't generate illegal default remote names.
getpass.getuser() output may contain slashes, which must be avoided as
they break virtualenv when present in argv[0].

Closes #344.
6 years ago
David Wilson 30ca569716 docs: Update Changelog. 6 years ago
David Wilson a6995a5288 issue #338: refactor env handling into class and fix tests. 6 years ago
David Wilson ad365dad56 issue #340: one more test, update Changelog. 6 years ago
David Wilson 8e35103185 docs: Update Changelog. 6 years ago
David Wilson 9365f254d2 Update ChangeLog. 6 years ago
David Wilson 053c594d65 ansible: prevent logs spamming user console on exit.
Closes #331.
6 years ago
David Wilson 81c8156965 Support LXD; closes #339. 6 years ago
David Wilson 898c06f1b9 docs: host demo on Vimeo. 6 years ago
David Wilson 232aaf5c95 Merge branch 'dmw' 6 years ago
David Wilson f4a66194e4 ansible: Py3.x fixes for Ansible PR #41749 workaround. 6 years ago
David Wilson 3b10920157 docs: delete compared.rst because somehow it's in search results. 6 years ago
David Wilson 196f76ff22 Remove staticmethod from docs.
Can re-add this later for 3.x, but it's pretty impossible in general for
2.x.

Closes #313.
6 years ago
David Wilson 9b2417e62d docs: add funny testimonial 6 years ago
David Wilson 45c2b04456 docs: add missing changelog entry. 6 years ago
David Wilson d64729e041 Bump version for release. 6 years ago
David Wilson 6813443d09 docs: minor tweaks. 6 years ago
David Wilson ebf721411c docs: add known issue 6 years ago
David Wilson 21eda90a67 docs: reorder changelog 6 years ago
David Wilson 998762ab4f docs: update changelog. 6 years ago
David Wilson 5d67ce7746 service: service pool threads should respect _profile_hook. 6 years ago
David Wilson 3c55571fe2 docs: update changelog 6 years ago
David Wilson 22bab87821 issue #319: avoid TCSAFLUSH flag on WSL.
Closes #319.
6 years ago
David Wilson 17c5bd26e1 Update changelog. 6 years ago
David Wilson 3138982ef4 docs: link mitogen-announce mailing list. 6 years ago
David Wilson a29a883dfc issue #311: docs: comment out Ansible 2.6 for now. 6 years ago
David Wilson 662b2d0668 docs: whups, add missing contributors entry 6 years ago
David Wilson 50670430ec docs: add thanks to release notes 6 years ago
David Wilson c5ea7c45a1 comments/docs: correct mitogen.master.Context -> mitogen.parent.Context. 6 years ago
David Wilson 2c74eac19a issue #291: more Ansible-compatible script invocation
When running any kind of script, rewrite the hashbang like Ansible does,
but subsequently ignore it and explicitly use a fragment of shell from
the ansible_*_interpreter variable to call the interpreter, just like
Ansible does.

This fixes hashbangs containing '/usr/bin/env A=1 bash' on Linux, where
putting that into a hashbang line results in an infinite loop.
6 years ago
David Wilson 11c73baa9c docs: update Changelog. 6 years ago
David Wilson 6b79db2ecd docs: document local connection process model difference. 6 years ago
David Wilson b5e7e97c62 issue #291: update changelog. 6 years ago
David Wilson f977be2868 issue #291: permit supplying a full Python argv. 6 years ago
Daniel Quackenbush 3297552f65 Updated readme with build status, updated docs 6 years ago
David Wilson 15d68b3c32 issue #309: fix environment cleanup regression.
Closes #309.
6 years ago
David Wilson 09d077ebd7 docs: update release notes 6 years ago
David Wilson a5fae0d084 docs: add jgadling to Contributors 6 years ago
David Wilson 70d732d35b docs: add "no route" to known issues. 6 years ago
David Wilson 8609fa5f44 docs: link to PyPI release, not GitHub archive URL.
Now download counts are visible via PSF BigQuery.
6 years ago
David Wilson 184104ce92 issue #303: add doas to the docs 6 years ago
David Wilson f20274ea18 docs: fix lock icon. 6 years ago
David Wilson e609d1b1fb docs: glaring ancient typo. 6 years ago
David Wilson f2ee5ade7e Update Changelog. 6 years ago
David Wilson 9a453d4753 Bump version for release. 6 years ago
David Wilson a61212ffb7 docs: one more known issue. 6 years ago
David Wilson 63c7a3013d docs: ansible: add workaround for 'raw' support. 6 years ago
David Wilson 68cf84762f docs: mention synchronize/delegation issue. 6 years ago
David Wilson ab0107440a docs: typo 6 years ago
David Wilson 7cd89f0290 docs: add 'will it work' intuition. 6 years ago
David Wilson 2b507c7b15 docs: fix text. 6 years ago
David Wilson f5b9f5ff59 docs: add 'raw' to 0.2 in-scope 6 years ago
David Wilson 8c2231cefb docs: link changelog into Ansible install procedure 6 years ago
David Wilson 3ea1b74dad docs: promote contributors & changelog links at least for 2018 6 years ago
David Wilson 9e3d9752cb docs: add warning label to services.rst. 6 years ago
David Wilson 43b55bd8fd docs: remove another warning label. 6 years ago
David Wilson b7001f6e0b docs: remove prerelease caution. 6 years ago
David Wilson 894926cf61 docs: add initial release notes. 6 years ago
David Wilson d493a3d7ca Merge branch 'python3'
Hooray \o/

Remaining issues:

- Two unit test races that appear related to our broken zombie process
  reaping, doesn't impact Ansible.

Closes #16.
6 years ago
David Wilson 0461738ca6 docs: small reference fixes. 6 years ago
David Wilson a74903d59a docs: update compatibility notice on main page. 6 years ago
David Wilson 18c9cd2365 docs: update supported Python version list. 6 years ago
David Wilson e24eddb1ce core: move Latch docs back inline. 6 years ago
David Wilson 0422a8c263 parent: python_path setting depends on local or remote
For local, we want to default to the same Python version as the current
process. For remote, we want whatever is on offer.
6 years ago
David Wilson 0eb77b5f7c utils: always enable microsecond logging.
It's too useful, and the logs are fairly out of control already, may as
well just capture everything in the first pass.
6 years ago
David Wilson 410016ff47 Initial Python 3.x port work.
* ansible: use unicode_literals everywhere since it only needs to be
  compatible back to 2.6.
* compat/collections.py: delete this entirely and rip out the parts of
  functools that require it.
* Introduce serializable Kwargs dict subclass that translates keys to
  Unicode on instantiation.
* enable_debug_logging() must set _v/_vv globals.
* cStringIO does not exist in 3.x.
* Treat IOLogger and LogForwarder input as latin-1.
* Avoid ResourceWarnings in first stage by explicitly closing fps.
* Fix preamble_size.py syntax errors.
6 years ago
David Wilson 0aba88dd8b docs: promote contributors.rst 6 years ago
David Wilson e26f3d7907 docs: update & link in contributors page. 6 years ago
David Wilson 6632f682da docs: change install docs to point at stable branch. 6 years ago
David Wilson d6126a9516 issue #275: parent/ssh: centralize EC0_MARKER and change it for ssh.py.
Must maintain a minimum buffer length prior to deciding whether we have
an interesting token, and 'EC0' is too short for that.
7 years ago
David Wilson 04b65020ac issue #278: ansible: support mitogen_ssh_debug_level variable. 7 years ago
David Wilson b58603c7a4 issue #278: ssh: support ssh_debug_level option and log TTY output.
Now debug logs may be captured all the way through the connection.
7 years ago