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

Adding Makefile #278

Draft
wants to merge 1 commit into
base: master
from
Draft

Adding Makefile #278

wants to merge 1 commit into from

Conversation

@daviddavis
Copy link
Member

@daviddavis daviddavis commented Oct 17, 2020

Adding a Makefile for plugin writers to define common build related tasks such as linting, running tests, etc. Inspiration comes from other python projects such as dynaconf, celery, and rq.

One of the main goals is to allow developers to run the same checks locally as Travis does by using make.

These commands also create a virtual env that isolates the plugin's dev/test dependencies from other plugins as sharing these deps has led to problems. As one example, flake8 plugins automatically run if they are installed but they can differ from plugin to plugin (for example, some plugins are using flake8-docstrings while others don't).

I'm hoping this will also serve as a place where plugin writers will be able to define more build type tasks related to releasing, etc.

Feedback welcome.

TODO

  • Get the binding target working
  • Add conditional checks based on template_config.yml vars
  • Add help info
  • Update travis code use make commands

fixes #6938
fixes #6203
fixes #5107

@daviddavis daviddavis force-pushed the daviddavis:issue6938 branch 3 times, most recently from e6e9b96 to ba0b6e0 Oct 17, 2020
@pulpbot
Copy link
Member

@pulpbot pulpbot commented Oct 17, 2020

@daviddavis daviddavis force-pushed the daviddavis:issue6938 branch 3 times, most recently from 655999e to 9be38c6 Oct 17, 2020
@mdellweg
Copy link
Member

@mdellweg mdellweg commented Oct 19, 2020

I like the idea.
I would (eventually) use this Makefile to run the commands in CI, too. (This should help to get consistent behaviour.)

CHANGES/5107.misc Outdated Show resolved Hide resolved
@daviddavis daviddavis force-pushed the daviddavis:issue6938 branch 5 times, most recently from 4039f47 to 0cc2479 Nov 4, 2020
$(VENV)/bin/pip install -qr dev_requirements.txt
$(VENV)/bin/pip install -qr test_requirements.txt
$(VENV)/bin/pip install -qe .
echo "Set up venv environment at $(VNV)"

This comment has been minimized.

@mdellweg

mdellweg Nov 4, 2020
Member

Suggested change
echo "Set up venv environment at $(VNV)"
echo "Set up venv environment at $(VENV)"
Adding a Makefile for plugin writers to define common tasks such as
linting, running tests, etc.

fixes #6938
fixes #6203
fixes #5107
@daviddavis daviddavis force-pushed the daviddavis:issue6938 branch from 0cc2479 to 73e0e00 Nov 4, 2020
@dralley
Copy link
Contributor

@dralley dralley commented Jan 4, 2021

@daviddavis Should this be closed out, or is it simple enough to get it finished soon?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

5 participants
You can’t perform that action at this time.