* fix: use ref param instead of branch
* fix: use ref param instead of branch
* chore: unintentional changes from web editor
Co-authored-by: Ankush Menat <ankush@frappe.io>
Changes
* Added sugared option class that allows setting options only if another
is set
* setup nginx command allows to set logging level & log_format options
Only migrate-env requires virtualenv wrapper. However, it can be
installed and run manually too. Virtualenv wrapper is patched in debian
to change the path of bins - which venv is free from.
The implementations so far were hacks that worked for the most used
commands but broken down when challenged or expected to maintain
documented usages [eg: custom app commands].
The current implementation consists of a two step approach:
1. figure out command name that user is trying to execute
2. pass the directive to the app (bench, frappe or other) that consists of the cmd
---
For tackling #1, get_cmd_from_sysargv contains exhaustive rules that
cover all (that i know and ive come across) combinations of valid
frappe commands.
For problem #2, a simple check in click's Group object does the trick.
Tested with possible known commands with combinations of context flags
and params, with bench, frappe & external app's commands
Since support for pyproject.toml exists, Frappe has gotten rid of
requirements.txt file. However, dev-requirements.txt file still existed
in Frappe & other apps. With this, we can get rid of the separate
dev-reqs file as well and replace it by defining the deps in pyproject
under [tool.bench.dev-dependencies]
Example:
For Frappe, this transition will look like moving the contents of
dev-requirements.txt as follows:
```
\# dev-requirements.txt
coverage==5.5
Faker~=13.12.1
pyngrok~=5.0.5
unittest-xml-reporting~=3.0.4
```
```
\# pyproject.toml
[tool.bench.dev-dependencies]
coverage = "==5.5"
Faker = "~=13.12.1"
pyngrok = "~=5.0.5"
unittest-xml-reporting = "~=3.0.4"
```
Note: If dev-dependencies are defined in pyproject.toml, and a
dev-dependencies.txt file exists - the txt file will be ignored.
Use virtualenv cli only if found in PATH. Else use
venv package of the invoker's Python installation.
venv was added in the std lib since PY33.
ref: https://docs.python.org/3/library/venv.html
* fix: replace certbot-auto references with certbot and add in prerequesites ansile tasks
* fix: config file flag fix
* fix: certbot path using find_executable instead of hardcoded
* fix: remove easy install entry for certbot
* fix: replace find_executable with which
* fix: no need to check and raise.
* fix: provide user with cerbot install instructions"
* fix: return certbot path
* fix: Use get_certbot_path instead of harcoded path
Co-authored-by: Abhishek Balam <abhishekbalam96@gmail.com>
Co-authored-by: gavin <gavin18d@gmail.com>
* fix: use better api endpoint for is_valid_frappe_branch
* fix: dont allow appnames starting with number and/or dot in them
* fix: dont convert response to json
* fix: using ls-remote to check for valid branches
* refactor: changed the message displayed on invalid branch and invalid frappe path
Co-authored-by: Aradhya <aradhyatripathi51@gmail.com>
Co-authored-by: Aradhya Tripathi <67282231+Aradhya-Tripathi@users.noreply.github.com>
* fix: fixed org, branch for apps mounted on disk
* fix: DRY-er code
* fix: fixed loading apps when use_ssh is true
* fix: removed flaky tests to test dependencies
* fix: removed exception if app not found in frappe or erpnext org
* fix: remote server
* test: Updated tests
fix: tests
* fix: raise when org is not found
* fix: setup requirements
* fix: falling back to original method of mounted app initialization if git repo isn't found