| 113 | } |
| 114 | |
| 115 | func (cmd CreateBuildpack) createBuildpack(buildpackName string, c flags.FlagContext) (buildpack models.Buildpack, apiErr error) { |
| 116 | position, err := strconv.Atoi(c.Args()[2]) |
| 117 | if err != nil { |
| 118 | apiErr = errors.New(T("Error {{.ErrorDescription}} is being passed in as the argument for 'Position' but 'Position' requires an integer. For more syntax help, see `cf create-buildpack -h`.", map[string]interface{}{"ErrorDescription": c.Args()[2]})) |
| 119 | return |
| 120 | } |
| 121 | |
| 122 | enabled := c.Bool("enable") |
| 123 | disabled := c.Bool("disable") |
| 124 | if enabled && disabled { |
| 125 | apiErr = errors.New(T("Cannot specify both {{.Enabled}} and {{.Disabled}}.", map[string]interface{}{ |
| 126 | "Enabled": "enabled", |
| 127 | "Disabled": "disabled", |
| 128 | })) |
| 129 | return |
| 130 | } |
| 131 | |
| 132 | var enableOption *bool |
| 133 | if enabled { |
| 134 | enableOption = &enabled |
| 135 | } |
| 136 | if disabled { |
| 137 | disabled = false |
| 138 | enableOption = &disabled |
| 139 | } |
| 140 | |
| 141 | buildpack, apiErr = cmd.buildpackRepo.Create(buildpackName, &position, enableOption, nil) |
| 142 | |
| 143 | return |
| 144 | } |