Requirement: A scratch org with skuid installed for CI with sfdx.

So everytime we run test in a scratch org via a CI server, i need the scratch org to have skuid (managed package) to be pre-installed so that i can push my dx code to run test.

Currently, in my CI Script i have to put a step to install the skuid package.

$ sfdx force:package:install -i 04t4A00000042DGQAY

But this step doesn't do an acknowledgement/wait for the installation completion. The only way, i think is to define a wait period and parse the status of the installation.

$ sfdx force:package:install:get -i <installation_Id>

Defining a wait time, will create unnecessary delays. Is there a better way to do this (i.e to check if the installation is complete & proceed with the following steps like source:push etc..)?

2 Answers 2


I had the same question but it turns out the solution is straightforward

sfdx force:package:install -i 04txxxxxxxx --wait 10

The wait command does not wait 10 minutes in all cases. It waits maximally 10 minutes meanwhile polling the status of the package installation.

I still believe dx should support --wait -1 (wait until done) everywhere. This works for mdapi:deploy for example


I have not used DX yet. However, one can use the "installedpackages" metadata to specify the managed package(s) to install or uninstall using the Metadata API. Installing Managed Package Via API Documentation

When the "installedpackages" metadata is included with other metadata, the packages are installed first and then the other metadata. As long as all the metadata is deployed simultaneously, there's no need to have separate deployment steps.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .