Previously we used the word "Environment" as the term for a deployment target, but since then we've started to use the term Stack. Adopt this across the CLI. From a user's point of view, there are a few changes: 1. The `env` verb has been renamed to `stack` 2. The `-e` and `--env` options to commands which operate on an environment now take `-s` or `--stack` instead. 3. Becase of (2), the commands that used `-s` to display a summary now only support passing the full option name (`--summary`). On the local file system, we still store checkpoint data in the `env` sub-folder under `.pulumi` (so we can reuse existing checkpoint files that were written to the old folder)
39 lines
1.1 KiB
Go
39 lines
1.1 KiB
Go
// Copyright 2017, Pulumi Corporation. All rights reserved.
|
|
|
|
package engine
|
|
|
|
import (
|
|
"github.com/pkg/errors"
|
|
"github.com/pulumi/pulumi/pkg/resource/deploy"
|
|
"github.com/pulumi/pulumi/pkg/tokens"
|
|
"github.com/pulumi/pulumi/pkg/util/contract"
|
|
)
|
|
|
|
func (eng *Engine) planContextFromStack(name tokens.QName, pkgarg string) (*planContext, error) {
|
|
contract.Require(name != tokens.QName(""), "name")
|
|
|
|
// Read in the deployment information, bailing if an IO error occurs.
|
|
target, err := eng.Targets.GetTarget(name)
|
|
if err != nil {
|
|
return nil, errors.Wrap(err, "could not read target information")
|
|
}
|
|
|
|
snapshot, err := eng.Snapshots.GetSnapshot(name)
|
|
if err != nil {
|
|
return nil, errors.Wrap(err, "could not read snapshot information")
|
|
}
|
|
|
|
contract.Assert(target != nil)
|
|
|
|
return &planContext{
|
|
Target: target,
|
|
Snapshot: snapshot,
|
|
PackageArg: pkgarg,
|
|
}, nil
|
|
}
|
|
|
|
type planContext struct {
|
|
Target *deploy.Target // the target stack.
|
|
Snapshot *deploy.Snapshot // the stack's latest deployment snapshot
|
|
PackageArg string // an optional path to a package to pass to the compiler
|
|
}
|