-
-
Notifications
You must be signed in to change notification settings - Fork 146
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
fix(api): Project hard sync existing entities deleted #660
Conversation
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
@@ -1117,7 +1146,12 @@ export class ProjectService { | |||
) | |||
} | |||
|
|||
return [...createEnvironmentOps, ...createSecretOps, ...createVariableOps] | |||
return [ | |||
...deleteOps, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I feel that this wont work. This is because, we are not actually deleting the variables, secrets or environments. So the subsequent block wont work.
We need to refactor the missingEnvironments
section aswell to make sure that we don't do that comparison when we are doing a hard sync. Hope it makes sense
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I`ve tested it and it does delete all existing items from forked project then copies everything from the parent.
To my understanding this is what hard sync is about.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes your understanding is correct. I was talking about the next block where in we are checking for existing environments. In case we are hard syncing a project, we would be deleting the environments. So there shouldn't be any environments left to check for. So, it would be the best to use that block optionally.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess i pinned this in the wrong place. It's line 974 that im talking about.
6ba3a34
to
c81558c
Compare
c81558c
to
0c917d5
Compare
## [2.11.0-stage.11](v2.11.0-stage.10...v2.11.0-stage.11) (2025-02-04) ### 🐛 Bug Fixes * **api:** Project hard sync existing entities deleted ([#660](#660)) ([3632217](3632217))
🎉 This PR is included in version 2.11.0-stage.11 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
## [2.11.0](v2.10.0...v2.11.0) (2025-02-10) ### 🚀 Features * **api, schema:** Add preview field in API Key ([#680](#680)) ([06d8c44](06d8c44)) * **api:** Workspace-membership invitationAccepted included ([#665](#665)) ([3877249](3877249)) * **platform:** Add CopySVG icon to the Slug component and update imports ([#677](#677)) ([2ad93ba](2ad93ba)) * **platform:** Add Google OAuth ([#689](#689)) ([ad3a3d2](ad3a3d2)) * **platform:** Add new access level SVGs and integrate into ProjectCard component ([#678](#678)) ([cc3ef77](cc3ef77)) * **platform:** Add new design for slug ([#675](#675)) ([2b8985c](2b8985c)) * **platform:** Add SVGs to projectTabs ([#673](#673)) ([37bfddf](37bfddf)) * **platform:** Added the feature for deleting a [secure] ([#674](#674)) ([37e7960](37e7960)) * **platform:** Edit [secure] in project ([#684](#684)) ([1e34030](1e34030)) * **platform:** Restructure workspace settings and user settings ([#682](#682)) ([cd0013a](cd0013a)) * **platform:** Update table ui and change variable to accordion ([#676](#676)) ([71e9ae9](71e9ae9)) * **project:** Edit project feature ([#685](#685)) ([a906920](a906920)) * Update details in listing [secure]s ([#686](#686)) ([84aa5f4](84aa5f4)) * Variables listing revamp ([#735](#735)) ([38b42fa](38b42fa)) ### 🐛 Bug Fixes * **api:** Convert email to lowercase ([#694](#694)) ([b41db33](b41db33)) * **api:** Github OAuth redirect not working ([#692](#692)) ([3495f8a](3495f8a)) * **api:** Project hard sync existing entities deleted ([#660](#660)) ([3632217](3632217)) * **cli:** Version flag causing errors ([#679](#679)) ([65bb70b](65bb70b)) * **platform:** ContextMenu not working on variable card ([#688](#688)) ([fbb147a](fbb147a)) * **platform:** Fixed the typo in query params ([#723](#723)) ([6c6bb7f](6c6bb7f)) ### 📚 Documentation * Added section for building packages ([#720](#720)) ([ecfde92](ecfde92)) ### 🔧 Miscellaneous Chores * **api:** Remove failing environment tests ([d1b9767](d1b9767)) * **cli:** Bumped CLI to v2.5.1 ([2d39815](2d39815)) * **platform:** Fixed formatting ([81f86de](81f86de)) * **release:** 2.11.0-stage.1 [skip ci] ([b442fe0](b442fe0)), closes [#675](#675) * **release:** 2.11.0-stage.10 [skip ci] ([cf34066](cf34066)), closes [#665](#665) * **release:** 2.11.0-stage.11 [skip ci] ([1344cf1](1344cf1)), closes [#660](#660) * **release:** 2.11.0-stage.12 [skip ci] ([92cecfc](92cecfc)), closes [#686](#686) * **release:** 2.11.0-stage.13 [skip ci] ([c91d48a](c91d48a)), closes [#684](#684) * **release:** 2.11.0-stage.14 [skip ci] ([5d20407](5d20407)), closes [#688](#688) * **release:** 2.11.0-stage.15 [skip ci] ([110e265](110e265)), closes [#685](#685) * **release:** 2.11.0-stage.16 [skip ci] ([2a7cba6](2a7cba6)), closes [#689](#689) * **release:** 2.11.0-stage.17 [skip ci] ([e071a74](e071a74)), closes [#692](#692) [#690](#690) * **release:** 2.11.0-stage.18 [skip ci] ([94f3938](94f3938)), closes [#694](#694) * **release:** 2.11.0-stage.19 [skip ci] ([f9b095c](f9b095c)), closes [#723](#723) [#720](#720) * **release:** 2.11.0-stage.2 [skip ci] ([f9d05de](f9d05de)), closes [#673](#673) * **release:** 2.11.0-stage.20 [skip ci] ([02972f2](02972f2)), closes [#735](#735) * **release:** 2.11.0-stage.3 [skip ci] ([c2398a6](c2398a6)), closes [#677](#677) * **release:** 2.11.0-stage.4 [skip ci] ([6c7e41a](6c7e41a)), closes [#676](#676) * **release:** 2.11.0-stage.5 [skip ci] ([defdbcd](defdbcd)), closes [#678](#678) * **release:** 2.11.0-stage.6 [skip ci] ([5060fe7](5060fe7)), closes [#679](#679) * **release:** 2.11.0-stage.7 [skip ci] ([b2be010](b2be010)), closes [#674](#674) * **release:** 2.11.0-stage.8 [skip ci] ([972e55b](972e55b)), closes [#680](#680) * **release:** 2.11.0-stage.9 [skip ci] ([fd92c3b](fd92c3b)), closes [#682](#682) ### 🔨 Code Refactoring * **platform:** Updated the [secure] table and changed edit variable dialog to a sheet ([#690](#690)) ([f51ad34](f51ad34))
🎉 This PR is included in version 2.11.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
User description
Description
When hard syncing all the existing items are deleted in the fork
Fixes #454
Screenshots of relevant screens
Developer's checklist
If changes are made in the code:
Documentation Update
PR Type
Bug fix, Documentation
Description
Fixed unique constraint error during project hard sync.
Added deletion of existing entities in target project for hard sync.
Updated CLI documentation for
--hard-sync
option.Changes walkthrough 📝
project.service.ts
Add deletion logic for hard sync in projects
apps/api/src/project/service/project.service.ts
deleteOps
array to handle deletion operations.project.md
Update CLI documentation for hard sync
docs/cli/project.md
--hard-sync
option.