I’m unsure what I’m doing wrong here.
I am able to deploy fine using --no-wallet
as that is how I’ve setup the canister with the deploying principal set as the controller. Why is the --no-wallet
being flagged as invalid syntax in this case?
I am able to deploy fine using --no-wallet
as that is how I’ve setup the canister with the deploying principal set as the controller. Why is the --no-wallet
being flagged as invalid syntax in this case?
First off, as a rule of thumb you can just drop --no-wallet
since a few versions of dfx ago. The --no-wallet
flag has been made the default and therefore it has no effect anymore in most cases. Commands that require a wallet will tell you that you should use --wallet
.
Because dfx deploy
does not accept the same arguments as dfx canister
(anymore? I don’t remember the exact history). By default it uses your own principal to make the requests. Only when using --wallet <wallet id>
it makes the wallet do the request.
My best guess is that either you’d want to run dfx canister --wallet <your wallet id here> --network ic status --all
. (You can find your wallet id with dfx identity get-wallet
). Alternatively, you may be using the wrong identity, which is not a controller.