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

Allow running tool as package or script #7

Open
wants to merge 11 commits into
base: master
Choose a base branch
from

Conversation

patcon
Copy link

@patcon patcon commented May 11, 2021

Hi! Thank for this!

Previously, this tool was intended to run as a script, but not a python package.

I wanted to use it in another repo that has a suite of Python CLI tools, so it made most sense to install it as a package. This adds enough to get that working :)

Here's what I did:

  • migrated src/ to src/zoom2youtube, aligning with Python packaging recommendations
    • fixed crontab path to match
  • Fixed bug where ZOOM_PAGE_SIZE was missing from settings.py
  • Moved the main chunk of code in main.py into a function main(), so that it could be run as a console_script
  • added minimal setup.py for packaging
  • added pipenv-setup to help manage setup.py deps (incl adding pipenv)
  • added new makefile targets for packaging tasks
  • updated README to mention this method

Main things to note:

The one opinionated thing I did was add pipenv support, since I prefer to use it for package isolation instead of virtualenv directly. It just generated its pipfile from requirements.txt (requirements.txt could be removed if y'all wanted to go officially all-in with pipenv on this. (I also use poetry sometimes as pkg manager, but opted not to use this as per reason below)

I also added pipenv-setup, to autogenerate the setup.py installed packages based on the pipenv.lock, so there's no need to keep the package spec in sync with requirements/pipfile. (this was the main reason i added pipenv, to make maintenance burden of package+script less)

Curious if you'd be willing to merge this...! Thanks for considering!

1. Use an virtualenv or isolation tactic you prefer
2. Install as a package
```
$ pip install git+https://github.com/patcon/Zoom2YouTube.git@packaged#egg=zoom2youtube
Copy link
Author

Choose a reason for hiding this comment

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

Merge this before accepting PR :)

Suggested change
$ pip install git+https://github.com/patcon/Zoom2YouTube.git@packaged#egg=zoom2youtube
$ pip install git+https://github.com/Welltory/Zoom2YouTube.git@master#egg=zoom2youtube

@patcon patcon mentioned this pull request May 19, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant