PromucFlow_constructor/app/server
Abhijeet 32e8224120
feat: Update existing app via JSON import (#22684)
## Description

When a user wants to develop in an instance and deploy in another, the
only way to update an app is via Git. In scenarios where this is not
possible (either in Airgapped scenarios or due to the user's choice),
the user cannot update the deployed app. This PR allows a user to update
an existing app via JSON import. The original references will be
maintained where applicable

> TL;DR: Provide a way to update the existing application via JSON
import in situations where Git sync is not an option.

Fixes #22075 

### How to test?
1. Create a new workspace `WS1`
2. Create new app
3. Generate CRUD page
4. Export the application
5. Create new workspace lets's call this as `WS2` and import the
exported app from step 4
6. Create another page `pageCreatedInWS2` in imported application in
`WS2`
7. Export the updated application from `WS2`
8. Update existing application created in step 2 in `WS1` by importing
the application which is exported from `WS2` in step 7
9. Updated application should have `pageCreatedInWS2` page

```
Curl for ref:
 curl --location '{{base_url}}/api/v1/applications/import/{{workspaceId}}?applicationId={{applicationId}}' \
--header 'Cookie: SESSION={{cookieSessionId}}' \
--header 'X-Requested-By: Appsmith' \
--form 'file=@{{JSON_FILE_TO_IMPORT}}'
```

## Type of change

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


## How Has This Been Tested?
- Manual
- JUnit

## Checklist:
### Dev activity
- [x] 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
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-04-27 22:55:07 +05:30
..
.run chore: Upgrade to Spring Boot 3.0.1 (#19044) 2023-01-02 19:40:59 +07:00
appsmith-git fix: Git connected apps are showing a status error (#22046) 2023-04-04 06:09:43 +05:30
appsmith-interfaces feat: remove bloat from large files during upload (WIP) (#21757) 2023-04-27 10:33:32 +07:00
appsmith-plugins feat: Feat/add google sheets metdata (#22577) 2023-04-27 14:52:41 +01:00
appsmith-server feat: Update existing app via JSON import (#22684) 2023-04-27 22:55:07 +05:30
envs feat: Support mongodb transactions for import application flow (#14939) 2023-02-09 14:50:04 +05:30
mongo-seed Code formatting corrected. 2020-04-20 18:17:25 +05:30
reactive-caching fix for caching library autoconfiguration (#19849) 2023-01-17 22:18:42 +05:30
scripts feat: migrate from org to workspace under phase 3 (#14158) 2022-07-20 17:24:16 +05:30
.gitignore Improve server setup experience documentation (#4441) 2021-05-19 19:29:08 +05:30
build.sh chore: Check Java version in build script (#19531) 2023-01-06 22:20:58 +05:30
buildpack-run.sh Merge branch 'release' into feature/acl-spring-object 2020-04-28 18:13:06 +05:30
docker-compose.yml feat: Git version control functionality with connect to remote, commit, push flows (#8403) 2021-10-20 09:47:34 +00:00
Dockerfile chore: Upgrade to Spring Boot 3.0.1 (#19044) 2023-01-02 19:40:59 +07:00
entrypoint.sh fix: Added JVM arg to opens java.time module to project (#20326) 2023-02-02 17:19:53 +05:30
pom.xml chore: Upgrade to Spring Boot 3.0.1 (#19044) 2023-01-02 19:40:59 +07:00
Procfile Adding the JVM parameter to ensure that java stays within the memory limits set by the container 2019-10-21 12:23:00 +05:30
README.md ci: Modularizing the Github actions workflow for maintainability (#16505) 2022-09-09 01:08:55 +05:30
system.properties chore: Upgrade to Spring Boot 3.0.1 (#19044) 2023-01-02 19:40:59 +07:00

Appsmith Server

This is the server-side repository for the Appsmith framework.

For details on setting up your development machine, please refer to this Setup Guide.