Closed jyecusch closed 2 years ago
https://github.com/nitrictech/cli/pull/403 removes docker as a dependency for nitric start
For moving pulumi as a dependency to a container we'll need to do some trickery with the automation API, where we augment path with our own pulumi replacement that executes a pulumi container and runs commands against it in a non-interactive mode.
We'll also need to make sure that configuration/login info is mounted appropriately to that container.
You can see here where this is hardcoded into the automation API assuming that pulumi
is on PATH:
https://github.com/pulumi/pulumi/blob/f636769318b26c6ccc05d6085e4c68c5090b446b/sdk/go/auto/cmd.go
Draft PR for shimming pulumi https://github.com/nitrictech/cli/pull/406
We might also need to publish our own version of the docker image as the uncompressed size of the pulumi container is greater the 4GB, this was the only version that came with docker installed.
Dependency on docker has been removed for running locally, we'll create another issue to provide self-installer functionality for Pulumi to reduce effort.
Feature Request
Suggestion
The initial DX for our CLI could be improved by reducing or removing dependencies. The only dependency to run locally should be the Nitric CLI (remove Git, Docker & Pulumi). For the
up
command we still need to build containers, so the only dependency should be Docker (with any other dependencies like Pulumi used in containers).Value
Allows new developers to get started with Nitric with a single install of the Nitric CLI.
Other info
This comes from feedback about the initial experience being a bit of a pain today.