Speed up your PCF push dev deployment
When you develop controsl with PCF tooling, you can make use of pac pcf push
command which will push the components to your environment, so you can test it.
Upon push, it creates a new temporary solution and uploads it to the target environment. It also publishes all the customizations and so on, which takes quite a long time. In some previous version (currently using v1.2.6) the tooling was able to do incremental push, but for some reason, the functionality seems to be off by default.
The incremental push looks into the target environment, checks if the ControlManifest.*.xml
has changes, and if not, it simply updates the underlying generated web resources only, which saves you a lot of time. It also comapres the respective fiels, so unless you made a modification, it won’t end up being uplaoded, again, saving your time.
Since this feature is not enabled by default and there are not many references, I went ahead and tried to enable it myself (thank you ILSpy). Turns out the incremental push is still i nthe tooling, it’s just not enabled for some reason. So in order to enable it, you have to do the following:
- Go to:
%LOCALAPPDATA%\Microsoft\PowerAppsCLI\
open the CLI folder and the tools folder in it (for me it isMicrosoft.PowerApps.CLI.1.2.6\tools
at the time of writing) - Open
featureflags.json
in your favorite editor (VS Code) - And add the following flag:
"verbPcfPushIncremental": "on",
- And you are done
Just for reference, my featureflags.json
look like this at the time of writing:
{
"verbAuth": "on",
"verbOrg": "on",
"verbOrgEntity": "off",
"verbOrgQuery": "off",
"verbSolutionImport": "off",
"verbSolutionExport": "on",
"verbSolutionClone": "on",
"pcfVirtualControl": "on",
"pcfObjectType": "off",
"pcfPropertyDependencies": "off",
"verbPlugin": "on",
"verbPcfPush": "on",
"verbPcfPushIncremental": "on",
"verbPortal": "on"
}
Hope it saves your time, enjoy!
To submit comments, go to GitHub Discussions.