For those who have an existing MDAPI Managed Package and are migrating to SFDX.
I know we need to have a permanent MDAPI Org for the packaging (duh) but my question stems around SFDX and VCS.
Is my understanding correct? For this question assume I am willing to start a brand new repo using SFDX format but I do not think that affects the question..
I believe we need (i am probably wrong)
- MDAPI Permanent Org where the managed package is packaged
- (#1) Project in IDE for the MDAPI Org
- (#2) Project in IDE connected to VCS as the master branch
- (#3+) Project in IDE for each scratch org where development is done on the codebase
I am assuming for the scratch orgs where development is done that they will checkout a branch of the master. Once development is complete the PR and/or merge is performed.
Code is merged into master (#2) Project and committed to VCS. Yet another scratch org is created to deploy source, run all test, etc to confirm everything is working
Then a force:source:convert
is performed and a force:mdapi:deploy
is performed to push code into (#1) org which is the permanent packaging org.
The VCS is no longer associated with the (#1) Org/Project rather it is associated with the (#2) VCS org/Project
I must be missing something here and showing how deft I am but trying to wrap my head around this and seems like a lot can go wrong vs a single org development....And no, I do not have development with vcs experience outside of salesforce and I know it is showing lol.