Merge pull request #5288 from hashicorp/fix3114

add token variable to upload bundle command template
This commit is contained in:
Matthew Hooker 2017-09-25 18:36:28 -05:00 committed by GitHub
commit 02cd6bc7f0
2 changed files with 7 additions and 0 deletions

View File

@ -15,6 +15,7 @@ type uploadCmdData struct {
ManifestPath string
Region string
SecretKey string
Token string
}
type StepUploadBundle struct {
@ -40,11 +41,13 @@ func (s *StepUploadBundle) Run(state multistep.StateBag) multistep.StepAction {
secretKey := config.SecretKey
session, err := config.AccessConfig.Session()
accessConfig := session.Config
var token string
if err == nil && accessKey == "" && secretKey == "" {
credentials, err := accessConfig.Credentials.Get()
if err == nil {
accessKey = credentials.AccessKeyID
secretKey = credentials.SecretAccessKey
token = credentials.SessionToken
}
}
@ -55,6 +58,7 @@ func (s *StepUploadBundle) Run(state multistep.StateBag) multistep.StepAction {
ManifestPath: manifestPath,
Region: region,
SecretKey: secretKey,
Token: token,
}
config.BundleUploadCommand, err = interpolate.Render(config.BundleUploadCommand, &config.ctx)
if err != nil {

View File

@ -462,3 +462,6 @@ sudo -i -n ec2-upload-bundle \
The available template variables should be self-explanatory based on the
parameters they're used to satisfy the `ec2-upload-bundle` command.
Additionally, `{{.Token}}` is available when overriding this command. You must
create your own bundle command with the addition of `-t {{.Token}} ` if you are
assuming a role.