Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

transparent downstream vendoring #69850

Merged
merged 4 commits into from Jun 15, 2020

Conversation

nitzmahone
Copy link
Member

@nitzmahone nitzmahone commented Jun 3, 2020

SUMMARY

Upstream supported transparent conditional vendoring for downstream packagers. Allows arbitrary packages to be installed beneath ansible._vendor at packaging time, which will be added to the head of sys.path. The content beneath the _vendor package is masked from the loader (by setting the package's path to []), preventing any dual-loading issues from occurring.

ISSUE TYPE
  • Feature Pull Request
COMPONENT NAME
ADDITIONAL INFORMATION

@ansibot ansibot added WIP This issue/PR is a work in progress. Nevertheless it was shared for getting input from peers. affects_2.10 This issue/PR affects Ansible v2.10 feature This issue/PR relates to a feature request. needs_triage Needs a first human triage before being processed. support:core This issue/PR relates to code supported by the Ansible Engineering Team. labels Jun 3, 2020
@ansibot

This comment has been minimized.

@nitzmahone nitzmahone removed the needs_triage Needs a first human triage before being processed. label Jun 3, 2020
@ansibot

This comment has been minimized.

lib/ansible/_vendor/__init__.py Outdated Show resolved Hide resolved
lib/ansible/_vendor/__init__.py Outdated Show resolved Hide resolved
lib/ansible/_vendor/__init__.py Outdated Show resolved Hide resolved
lib/ansible/_vendor/__init__.py Outdated Show resolved Hide resolved
lib/ansible/_vendor/__init__.py Outdated Show resolved Hide resolved
lib/ansible/_vendor/__init__.py Outdated Show resolved Hide resolved
@ansibot ansibot added the stale_ci This PR has been tested by CI more than one week ago. Close and re-open this PR to get it retested. label Jun 15, 2020
* allows downstream packagers to install packages to `ansible/_vendor` that will automatically be added to head of sys.path during `ansible` package load
* tests
@nitzmahone nitzmahone changed the title [WIP] hacky transparent vendoring transparent downstream vendoring Jun 15, 2020
@nitzmahone nitzmahone marked this pull request as ready for review June 15, 2020 18:31
@ansibot ansibot added core_review In order to be merged, this PR must follow the core review workflow. support:community This issue/PR relates to code supported by the Ansible community. and removed WIP This issue/PR is a work in progress. Nevertheless it was shared for getting input from peers. stale_ci This PR has been tested by CI more than one week ago. Close and re-open this PR to get it retested. labels Jun 15, 2020
lib/ansible/_vendor/__init__.py Outdated Show resolved Hide resolved
lib/ansible/_vendor/__init__.py Outdated Show resolved Hide resolved
@ansibot ansibot removed the core_review In order to be merged, this PR must follow the core review workflow. label Jun 15, 2020
@ansibot ansibot added needs_revision This PR fails CI tests or a maintainer has requested a review/revision of the PR. core_review In order to be merged, this PR must follow the core review workflow. and removed needs_revision This PR fails CI tests or a maintainer has requested a review/revision of the PR. labels Jun 15, 2020
@nitzmahone nitzmahone merged commit de63cba into ansible:devel Jun 15, 2020
1 check passed
@ansible ansible locked and limited conversation to collaborators Jul 13, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
affects_2.10 This issue/PR affects Ansible v2.10 core_review In order to be merged, this PR must follow the core review workflow. feature This issue/PR relates to a feature request. support:community This issue/PR relates to code supported by the Ansible community. support:core This issue/PR relates to code supported by the Ansible Engineering Team.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants