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

Document running tox within a Docker container #2923

Merged
merged 2 commits into from Mar 30, 2023

Conversation

31z4
Copy link
Contributor

@31z4 31z4 commented Feb 10, 2023

Created this PR to continue work on #1035. The idea is to mention 31z4/tox Docker image in the docs to gather more feedback from users. What do you guys think? Is it OK to refer to the current version of the image? Or moving the image under the tox-dev organisation or making it official would be a blocker?

Thanks for contribution

Please, make sure you address all the checklists (for details on how see
development documentation)!

  • ran the linter to address style issues (tox -e fix)
  • wrote descriptive pull request text
  • ensured there are test(s) validating the fix
  • added news fragment in docs/changelog folder
  • updated/extended the documentation


.. code-block:: Dockerfile

FROM 31z4/tox
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we create a tox-dev or tox org instead to host under? You can be one of it's owner's 😊

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes I think it makes sense. Although, if we aim to make the image "official" maybe it's better to work towards this right now. This way we can save some maintenance efforts. Because we don't have to deprecate tox-dev/tox in favour of official tox. And also users don't have to migrate from the deprecated image to the official one.

Some benefits of an official image that I'd like to highlight:

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah let's make it so. What do you need from me to get there?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess nothing at this point. I'll make some usability changes to the image to conform with https://github.com/docker-library/official-images#consistency. And then will work on PRs to https://github.com/docker-library/official-images and https://github.com/docker-library/docs.


.. code-block:: shell

docker run -v `pwd`:/home/tox/tests -it --rm 31z4/tox run-parallel -e black,py311
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would prefer to mount the project under the /w folder, personal preference 😅

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's possible too ☺️ But you have to specify the workdir in that case (-w /w):

docker run -v `pwd`:/w -w /w -it --rm 31z4/tox run-parallel -e black,py311

I can change image workdir from /home/tox/tests to something more concise, like /tests maybe. I agree that /home/tox/tests might be too long to type 😅

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd make/w the default, concise better 😅

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@31z4 ping on this?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've been pretty busy recently. Hopefully will get a chance to work on the official image later this month. In the meantime https://github.com/31z4/tox-docker should be good enough for production already.

@31z4 31z4 marked this pull request as draft February 14, 2023 05:45
@gaborbernat gaborbernat marked this pull request as ready for review March 30, 2023 14:02
@gaborbernat gaborbernat merged commit affd839 into tox-dev:main Mar 30, 2023
descope bot added a commit to descope/django-descope that referenced this pull request Jun 11, 2023
This PR contains the following updates:

| Package | Type | Update | Change | Pending |
|---|---|---|---|---|
| [tox](https://togithub.com/tox-dev/tox)
([changelog](https://tox.wiki/en/latest/changelog.html)) | dev | minor |
`4.4.8` -> `4.5.1` | `4.6.0` (+1) |

---

### Release Notes

<details>
<summary>tox-dev/tox</summary>

### [`v4.5.1`](https://togithub.com/tox-dev/tox/releases/tag/4.5.1):
Test Trusted Publisher

[Compare Source](https://togithub.com/tox-dev/tox/compare/4.5.0...4.5.1)

### [`v4.5.0`](https://togithub.com/tox-dev/tox/releases/tag/4.5.0)

[Compare
Source](https://togithub.com/tox-dev/tox/compare/4.4.12...4.5.0)

#### What's Changed

- Bump deps and tools by
[@&#8203;gaborbernat](https://togithub.com/gaborbernat) in
[tox-dev/tox#2987
- git: Ignore the .lock file for demo_pkg_inline by
[@&#8203;hroncok](https://togithub.com/hroncok) in
[tox-dev/tox#2988
- Add FAQ entry on how to test against EOL Python versions by
[@&#8203;jugmac00](https://togithub.com/jugmac00) in
[tox-dev/tox#2991
- Feature: suppress step timings for verbosity=1
[#&#8203;2891](https://togithub.com/tox-dev/tox/issues/2891) by
[@&#8203;nedbat](https://togithub.com/nedbat) in
[tox-dev/tox#2992

**Full Changelog**:
tox-dev/tox@4.4.12...4.5.0

### [`v4.4.12`](https://togithub.com/tox-dev/tox/releases/tag/4.4.12)

[Compare
Source](https://togithub.com/tox-dev/tox/compare/4.4.11...4.4.12)

#### What's Changed

- Avoid race conditions in tests using the demo_pkg_inline fixture by
[@&#8203;hroncok](https://togithub.com/hroncok) in
[tox-dev/tox#2986
- Bump deps and tools by
[@&#8203;gaborbernat](https://togithub.com/gaborbernat) in
[tox-dev/tox#2981

**Full Changelog**:
tox-dev/tox@4.4.11...4.4.12

### [`v4.4.11`](https://togithub.com/tox-dev/tox/releases/tag/4.4.11)

[Compare
Source](https://togithub.com/tox-dev/tox/compare/4.4.10...4.4.11)

#### What's Changed

- Allow plugins to set `tox_root` by
[@&#8203;kdestin](https://togithub.com/kdestin) in
[tox-dev/tox#2978

#### New Contributors

- [@&#8203;kdestin](https://togithub.com/kdestin) made their first
contribution in
[tox-dev/tox#2978

**Full Changelog**:
tox-dev/tox@4.4.10...4.4.11

### [`v4.4.10`](https://togithub.com/tox-dev/tox/releases/tag/4.4.10)

[Compare
Source](https://togithub.com/tox-dev/tox/compare/4.4.9...4.4.10)

#### What's Changed

- Bump deps and tools by
[@&#8203;gaborbernat](https://togithub.com/gaborbernat) in
[tox-dev/tox#2976
- Fix `tox_root` propagation to `work_dir` by
[@&#8203;Tbruno25](https://togithub.com/Tbruno25) in
[tox-dev/tox#2962

#### New Contributors

- [@&#8203;Tbruno25](https://togithub.com/Tbruno25) made their first
contribution in
[tox-dev/tox#2962

**Full Changelog**:
tox-dev/tox@4.4.9...4.4.10

### [`v4.4.9`](https://togithub.com/tox-dev/tox/releases/tag/4.4.9)

[Compare Source](https://togithub.com/tox-dev/tox/compare/4.4.8...4.4.9)

#### What's Changed

- Added python 3.11 by
[@&#8203;ElBe-Plaq](https://togithub.com/ElBe-Plaq) in
[tox-dev/tox#2964
- Document running tox within a Docker container by
[@&#8203;31z4](https://togithub.com/31z4) in
[tox-dev/tox#2923
- Correct Docker image working dir by
[@&#8203;31z4](https://togithub.com/31z4) in
[tox-dev/tox#2965
- Avoid UnicodeDecodeError from command output by
[@&#8203;masenf](https://togithub.com/masenf) in
[tox-dev/tox#2970
- Bump pypa/gh-action-pypi-publish from 1.8.3 to 1.8.5 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[tox-dev/tox#2971

#### New Contributors

- [@&#8203;ElBe-Plaq](https://togithub.com/ElBe-Plaq) made their first
contribution in
[tox-dev/tox#2964
- [@&#8203;31z4](https://togithub.com/31z4) made their first
contribution in
[tox-dev/tox#2923

**Full Changelog**: tox-dev/tox@4.4.8...4.4.9

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMC4yIiwidXBkYXRlZEluVmVyIjoiMzUuMTAuMiJ9-->

Co-authored-by: descope[bot] <descope[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants