github.com/cloudbase/juju-core@v0.0.0-20140504232958-a7271ac7912f/upgrades/deprecatedattributes.go (about)

     1  // Copyright 2014 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package upgrades
     5  
     6  import (
     7  	"fmt"
     8  
     9  	"launchpad.net/juju-core/environs/config"
    10  )
    11  
    12  func processDeprecatedAttributes(context Context) error {
    13  	st := context.State()
    14  	cfg, err := st.EnvironConfig()
    15  	if err != nil {
    16  		return fmt.Errorf("failed to read current config: %v", err)
    17  	}
    18  	newAttrs := cfg.AllAttrs()
    19  	delete(newAttrs, "public-bucket")
    20  	delete(newAttrs, "public-bucket-region")
    21  	delete(newAttrs, "public-bucket-url")
    22  	delete(newAttrs, "default-image-id")
    23  	delete(newAttrs, "default-instance-type")
    24  	delete(newAttrs, "shared-storage-port")
    25  	// TODO (wallyworld) - delete tools-url in 1.20
    26  	newCfg, err := config.New(config.NoDefaults, newAttrs)
    27  	if err != nil {
    28  		return fmt.Errorf("failed to create new config: %v", err)
    29  	}
    30  	return st.SetEnvironConfig(newCfg, cfg)
    31  }