2
0
mirror of https://github.com/frappe/bench.git synced 2025-01-10 09:02:10 +00:00
Commit Graph

2456 Commits

Author SHA1 Message Date
semantic-release-bot
5f8e6fb064 chore(release): Bumped to Version 5.20.0
# [5.20.0](https://github.com/frappe/bench/compare/v5.19.0...v5.20.0) (2024-01-10)

### Bug Fixes

* more reliable gunicorn restart ([2ec0c0a](2ec0c0a95a))

### Features

* pass verbose to npm install ([00391bf](00391bfeb9))
* pass verbose to yarn install ([346d08d](346d08d30f))
* **supervisor:** restart each group separately ([839bd7c](839bd7c630))
2024-01-10 17:42:13 +00:00
Ankush Menat
ce6ebb2592 Merge branch 'staging' into v5.x 2024-01-10 23:11:18 +05:30
Ankush Menat
93fc1cc0de Merge branch 'develop' into staging 2024-01-10 23:10:14 +05:30
Ankush Menat
0056cdf310
Merge pull request #1507 from akhilnarang/optimize-restart
feat(supervisor): restart each group separately
2024-01-10 23:05:57 +05:30
Akhil Narang
839bd7c630
feat(supervisor): restart each group separately
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2023-12-07 16:12:10 +05:30
Ankush Menat
a834d864bb
Merge pull request #1486 from revant/fix-verbose
fix: pass verbose to yarn or npm install
2023-11-29 11:19:45 +05:30
Ankush Menat
2ec0c0a95a fix: more reliable gunicorn restart
killasgroup will ensure that all child processes die even if gunicorn
fails to do it. This isn't truly required because stopwaitsecs and
gunicorn graceful timeout work fine. In any case, if supervisor has to
send SIGKILL, it better send it to entire process group.
2023-11-03 21:38:47 +05:30
semantic-release-bot
dc4bb21057 chore(release): Bumped to Version 5.19.0
# [5.19.0](https://github.com/frappe/bench/compare/v5.18.0...v5.19.0) (2023-11-02)

### Bug Fixes

* Prevent Gunicorn child workers hangup ([36f2194](36f2194865))

### Features

* flag to setup bench with developer mode enabled ([f29e25a](f29e25a5d2))
2023-11-02 14:20:17 +00:00
Ankush Menat
f7fec3012f Merge branch 'staging' into v5.x 2023-11-02 19:49:16 +05:30
Ankush Menat
b253e35302 Merge branch 'develop' into staging 2023-11-02 19:45:55 +05:30
Ankush Menat
255c9301e9
Merge pull request #1494 from frappe/dev_bench
feat: flag to setup bench with developer mode enabled
2023-11-02 19:45:27 +05:30
Ankush Menat
f29e25a5d2 feat: flag to setup bench with developer mode enabled
Dev dependencies are not installed if developer_mode is not enabled.
When creating a new bench it's not possible to modify this config
upfront, so offer a flag to do it instead.

Note:
- Disabled by default.
- Very few people need this, those who write and run tests locally primarily.
- You mostly should not do this in CI, do `bench setup requirements --dev` explicitly instead.
2023-11-02 14:28:21 +05:30
Ankush Menat
52f704777b
Merge pull request #1493 from frappe/timeout
fix: Prevent Gunicorn child workers hangup
2023-11-02 12:11:09 +05:30
Ankush Menat
36f2194865 fix: Prevent Gunicorn child workers hangup
Problem:

- Prerequisite: long running reqeust is going on.
- `bench restart` is requested.
- supervisord sends sigterm to gunicorn master process.
- gunicorn passes it to all child table and waits for graceful shutdown (30 seconds)
- supervisord has no chill, and sends sigkill to master process in 10 seconds
- gunicorn master proesss is dead, so now child workers will keep running until they complete request which can take a really long time.
- This entire time the sites will be down.

Fix:
- Explicitly encode default graceful_timeout in config - 30 seconds.
- Make supervisor wait 10 more seconds for gunicorn to do its thing, then only send sigkill.
2023-11-02 11:40:07 +05:30
semantic-release-bot
786c9faaf9 chore(release): Bumped to Version 5.18.0
# [5.18.0](https://github.com/frappe/bench/compare/v5.17.2...v5.18.0) (2023-10-21)

### Bug Fixes

* **easy-install:** set default site to site1.localhost ([fde7a82](fde7a8209d))
* image replace and site creation ([f93f065](f93f065ba3))
* nodejs redis v4 interprets localhost as ipv6 address ([697939e](697939e205))
* override X-Forwarded-For address in bench manager ([53a8fed](53a8fedadc))

### Features

* allow custom image in easy install ([8ba685c](8ba685cc50))
2023-10-21 06:03:35 +00:00
Ankush Menat
0122ef17bf Merge branch 'staging' into v5.x 2023-10-21 11:32:41 +05:30
Ankush Menat
ce1ec43f73 Merge branch 'develop' into staging 2023-10-21 11:31:50 +05:30
Ankush Menat
53a8fedadc fix: override X-Forwarded-For address in bench manager 2023-10-19 17:06:21 +05:30
Ankush Menat
96f1229648
Merge pull request #1489 from akhilnarang/mysql-to-mariadb
refactor(treewide): use `mariadb` commands and service instead of `mysql`
2023-10-10 15:09:31 +05:30
Akhil Narang
8f3f1a48a6
refactor(treewide): use mariadb commands and service instead of mysql
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2023-10-10 13:49:03 +05:30
Ankush Menat
57937a3811
Merge pull request #1484 from revant/custom-image-easy-install
feat: allow custom image in easy install
2023-09-24 10:07:31 +05:30
Revant Nandgaonkar
fde7a8209d fix(easy-install): set default site to site1.localhost 2023-09-22 13:27:15 +05:30
Revant Nandgaonkar
f93f065ba3 fix: image replace and site creation 2023-09-22 13:20:30 +05:30
Revant Nandgaonkar
00391bfeb9 feat: pass verbose to npm install 2023-09-14 04:35:30 +05:30
Revant Nandgaonkar
346d08d30f feat: pass verbose to yarn install 2023-09-14 04:29:58 +05:30
Ankush Menat
dcae3e35cf
Merge pull request #1485 from ankush/localhost
refactor: use 127.0.0.1 instead of localhost
2023-09-13 15:58:45 +05:30
Ankush Menat
672eca10a7 test: fix expected failing tests 2023-09-13 15:44:17 +05:30
David Arnold
697939e205 fix: nodejs redis v4 interprets localhost as ipv6 address
But the redis only binds to 127.0.0.1, not ::1.

Avoid this problem by being explicit.
2023-09-13 15:43:06 +05:30
Revant Nandgaonkar
8ba685cc50 feat: allow custom image in easy install 2023-09-12 14:27:24 +05:30
semantic-release-bot
acbceb8f96 chore(release): Bumped to Version 5.17.2
## [5.17.2](https://github.com/frappe/bench/compare/v5.17.1...v5.17.2) (2023-09-06)

### Bug Fixes

* sync socketio port for old benches ([#1481](https://github.com/frappe/bench/issues/1481)) ([c2af169](c2af169dd6))
2023-09-06 06:33:45 +00:00
Ankush Menat
56d78415e2 Merge branch 'staging' into v5.x 2023-09-06 12:02:44 +05:30
Ankush Menat
cf253fff84 Merge branch 'develop' into staging 2023-09-06 12:02:27 +05:30
Ankush Menat
c2af169dd6
fix: sync socketio port for old benches (#1481) 2023-09-06 09:46:01 +05:30
semantic-release-bot
8ad9d19a56 chore(release): Bumped to Version 5.17.1
## [5.17.1](https://github.com/frappe/bench/compare/v5.17.0...v5.17.1) (2023-08-29)

### Bug Fixes

* port number mismatch when having multiple benches ([#1480](https://github.com/frappe/bench/issues/1480)) ([3c8cbbc](3c8cbbc023))
2023-08-29 09:11:04 +00:00
Ankush Menat
9c41260ba1 Merge branch 'staging' into v5.x 2023-08-29 14:40:06 +05:30
Ankush Menat
9dad3024f5 Merge branch 'develop' into staging 2023-08-29 14:39:25 +05:30
Ankush Menat
3c8cbbc023
fix: port number mismatch when having multiple benches (#1480) 2023-08-29 14:38:29 +05:30
semantic-release-bot
62d040a9f6 chore(release): Bumped to Version 5.17.0
# [5.17.0](https://github.com/frappe/bench/compare/v5.16.4...v5.17.0) (2023-08-08)

### Features

* Multi queue consumption ([#1475](https://github.com/frappe/bench/issues/1475)) ([5a2c052](5a2c052b9b))
2023-08-08 16:40:07 +00:00
Ankush Menat
ffabe3a6e1 Merge branch 'staging' into v5.x 2023-08-08 22:08:50 +05:30
Ankush Menat
ffe969bdc3 Merge branch 'develop' into staging 2023-08-08 22:08:01 +05:30
Ankush Menat
5a2c052b9b
feat: Multi queue consumption (#1475)
Ref: https://frappe.io/blog/engineering/reducing-memory-footprint-of-frappe-framework
2023-08-07 14:28:02 +05:30
Ankush Menat
87efb75a08
refactor!: Reuse redis_cache instace for socketio (#1382)
WARNING: Just a POC. You're free to modify your setup to test this out.

Summary:
- After this change bench wont generate config for redis_socketio
  instance.
- Instead we set the same port as redis_cache service for use in
  socketio. i.e. both will share same instance.

Code changes:

- Config will have this difference:

```diff
- "redis_socketio": "redis://localhost:12000",
- "redis_cache": "redis://localhost:13000",
+ "redis_socketio": "redis://localhost:13000",
+ "redis_cache": "redis://localhost:13000",
```

- supervisord/systemd wont start redis_socketio service
- for development setups: redis_socketio service is removed from procfile.

Why?

- Currently this redis instance is used only to ship messages from python
to nodejs server... which is largely stateless (only pub/sub channels)
- This change reduces 1 running process. Less resources for this ~= more
  resources for other running things.

TODO:
- [ ] decicisions - should we even do this? this should be optinal?
- [ ] refactor progressbar in frappe
- [ ] Tests - manual, FC, docker, automated
- [ ] "migration" plan

All dependent deployment projects will likely have to refactor their code to drop this service, shouldn't be too much work.
Example: Frappe cloud, Frappe Docker.
2023-08-07 12:55:19 +05:30
Ankush Menat
77ebdbe6f9
ci: fix test versions (#1474) 2023-08-07 12:27:02 +05:30
semantic-release-bot
b09a96d13d chore(release): Bumped to Version 5.16.4
## [5.16.4](https://github.com/frappe/bench/compare/v5.16.3...v5.16.4) (2023-07-12)

### Bug Fixes

* don't compile python files manually. ([#1469](https://github.com/frappe/bench/issues/1469)) ([036cb62](036cb6291e))
2023-07-12 15:53:27 +00:00
Ankush Menat
12ebc2e300 Merge branch 'staging' into v5.x 2023-07-12 21:22:20 +05:30
Ankush Menat
0e8e5ba18c Merge branch 'develop' into staging 2023-07-12 21:22:06 +05:30
Ankush Menat
036cb6291e
fix: don't compile python files manually. (#1469) 2023-07-04 19:52:05 +05:30
semantic-release-bot
ed4b51b896 chore(release): Bumped to Version 5.16.3
## [5.16.3](https://github.com/frappe/bench/compare/v5.16.2...v5.16.3) (2023-06-09)

### Bug Fixes

* add customer background workers in group ([#1439](https://github.com/frappe/bench/issues/1439)) ([4ec73c3](4ec73c3b92))
* Archive app for different repo/app names ([3af6058](3af6058d1b))
* easy-install for letsencrypt tls ([#1424](https://github.com/frappe/bench/issues/1424)) ([eba0f7a](eba0f7a54f))
* Hide irrelevant stacks during exc raise ([8175239](8175239434))
* Print failing command with CommandFailedError ([a1d2c52](a1d2c5226b))
* Remove except-pass ValueError ([d9c8335](d9c8335fbf))
* resolve filesystem app dependencies ([#1450](https://github.com/frappe/bench/issues/1450)) ([f3b55f7](f3b55f7785))
* Revert usage of app_name for repo name ([f7fbee9](f7fbee99d6))
* Setup exception handler for CommandFailedError only ([94a1b8c](94a1b8c3fb))
* Use == for dict comparison ([e80daf8](e80daf8c3e))
* Use App.app_name over repo attr ([4f42392](4f423923b4))

### Reverts

* Revert "fix: resolve filesystem app dependencies (#1450)" (#1452) ([082692c](082692cae2)), closes [#1450](https://github.com/frappe/bench/issues/1450) [#1452](https://github.com/frappe/bench/issues/1452)
2023-06-09 11:55:59 +00:00
Gavin D'souza
93eedbd876
Merge branch 'staging' into v5.x 2023-06-09 17:24:52 +05:30
Gavin D'souza
0e7a94d411
Merge branch 'develop' into staging 2023-06-09 17:22:23 +05:30