Commit Graph

11 Commits

Author SHA1 Message Date
Shrikant Sharat Kandula
e2343f5917
chore: Update MongoDB client in appsmithctl (#25959)
Should fix the following:

1. https://github.com/appsmithorg/appsmith/security/dependabot/234
2. https://github.com/appsmithorg/appsmith/security/dependabot/232
3. https://github.com/appsmithorg/appsmith/security/dependabot/249

Also removed the `estimate_billing.js` command, and the `luxon` and
`minimist` dependencies that are only used in that command.
2023-08-03 16:36:53 +05:30
Shrikant Sharat Kandula
87cffb6a05
fix: Fix replicaset check to not require ClusterMonitor role (#19997)
In the `entrypoint.sh` script, we check if the MongoDB in use, has
replicaSet initiated or not. This is usually done with a `rs.initiate()`
on the cluster.

We need the replicaSet to be enabled on MongoDB, since the backend
server relies on MongoDB `changeStream`s, which is a feature, only
available if replicaSet is enabled.

However, to use the `changeStream` APIs, having the `read` or
`readWrite` role on MongoDB is enough. But the check we do in
`entrypoint.sh`, runs `rs.status()` to see if `replicaSet` is initiated.
This `rs.status()` call, unfortunately, requires the `ClusterMonitor`
role, unlike the `changeStream` API.

To tackle this, we created the `appsmithctl check_replica_set` command.
This command would attempt to use the `changeStream` API, and report
success or failure. But this failed on certain configurations, where
MongoDB was running as a single-node-cluster, on localhost, or a
local/internal network. This was an edge case.

That edge case is solved by this PR. With this, we can use `appsmithctl
check-replica-set` in the `entrypoint.sh` again.
2023-02-07 05:38:37 +05:30
Sumesh Pradhan
a1be1bf941
feat: appsmithctl version and mongo-eval utils (#19075)
`appsmithctl version` - Util to display current Appsmith version
`appsmithctl mongo-eval '<mongo query>' [--pretty]` - Util to run mongo
queries

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2023-01-03 12:14:21 +05:30
Sumesh Pradhan
edbfef7d51
Auto-backup and cleanup with appsmithctl (#15203)
- Auto-cleanup of backup files using env variable APPSMITH_BACKUP_ARCHIVE_LIMIT (default value is 4) after every backup.
- Updated docker file to include watchtower hook scripts.
- Error mail interval to 6hrs.
2022-07-28 17:45:28 +05:30
Arpit Mohan
1af9e2042f
chore: Adding the appsmithctl command to estimate the bill for an existing Appsmith user (#15311)
## Description

This PR adds to the `estimate_billing` option to the `appsmithctl` command. This will help existing users estimate their bill when they consider upgrading to the paid edition.

Usage: 
```
appsmithctl estimate_billing 

Options:
  --sessionPrice    The price per active session. Defaults to 0.3 
  --priceCap        The price cap for a user in a given month. Defaults to 15
```

A user can also run the command for various scenarios to determine the optimum capacity tier.

## Type of change

- New feature (non-breaking change which adds functionality)
- This change requires a documentation update

## How Has This Been Tested?

Manually

## Checklist:

- [ ] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] New and existing unit tests pass locally with my changes
2022-07-20 10:33:47 +05:30
Sumesh Pradhan
85151b845e
appsmithctl backup error logging and mailer (#14797) 2022-07-07 11:19:25 +05:30
Sumesh Pradhan
b9c5d91968
Backup & Restore commands for appsmithctl (#14270) 2022-06-09 09:14:18 +05:30
Arpit Mohan
f9b28aedbf
Upgrade boxen, remove yargs and chalk (#12043) 2022-03-24 12:57:46 +05:30
Khoa Huỳnh
e59c69f915
Fix MongoDB permission issue in checking replica set (#11613) 2022-03-10 10:16:16 +05:30
geekup-legodevops
daf60fab72
Add appsmithctl command to migrate instance to new server (#9508) 2021-12-17 10:39:20 +05:30
Shrikant Sharat Kandula
f0a61285a6
docs: Fat container documentation fixes (#7207)
Added additional details about how to use the fat container, and how to manage / maintain it.

Also includes some refactorings that shouldn't affect the functionality significantly.
2021-09-14 19:01:06 +05:30