Skip to content

Commit

Permalink
Rename StackName to StackIdentifier (#358)
Browse files Browse the repository at this point in the history
Refactor to clarify the namespace, needed for
#357
  • Loading branch information
komalali authored Jul 22, 2024
1 parent c61b563 commit cbcaf4d
Show file tree
Hide file tree
Showing 17 changed files with 79 additions and 79 deletions.
6 changes: 3 additions & 3 deletions provider/pkg/internal/pulumiapi/deployment_setting_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ func TestGetDeploymentSettings(t *testing.T) {
})
defer cleanup()

ds, err := c.GetDeploymentSettings(ctx, StackName{
ds, err := c.GetDeploymentSettings(ctx, StackIdentifier{
OrgName: orgName,
ProjectName: projectName,
StackName: stackName,
Expand All @@ -53,7 +53,7 @@ func TestGetDeploymentSettings(t *testing.T) {
})
defer cleanup()

ds, err := c.GetDeploymentSettings(ctx, StackName{
ds, err := c.GetDeploymentSettings(ctx, StackIdentifier{
OrgName: orgName,
ProjectName: projectName,
StackName: stackName,
Expand Down Expand Up @@ -87,7 +87,7 @@ func TestCreateDeploymentSettings(t *testing.T) {
})
defer cleanup()

response, err := c.CreateDeploymentSettings(ctx, StackName{
response, err := c.CreateDeploymentSettings(ctx, StackIdentifier{
OrgName: orgName,
ProjectName: projectName,
StackName: stackName,
Expand Down
16 changes: 8 additions & 8 deletions provider/pkg/internal/pulumiapi/deployment_settings.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@ import (
)

type DeploymentSettingsClient interface {
CreateDeploymentSettings(ctx context.Context, stack StackName, ds DeploymentSettings) (*DeploymentSettings, error)
UpdateDeploymentSettings(ctx context.Context, stack StackName, ds DeploymentSettings) (*DeploymentSettings, error)
GetDeploymentSettings(ctx context.Context, stack StackName) (*DeploymentSettings, error)
DeleteDeploymentSettings(ctx context.Context, stack StackName) error
CreateDeploymentSettings(ctx context.Context, stack StackIdentifier, ds DeploymentSettings) (*DeploymentSettings, error)
UpdateDeploymentSettings(ctx context.Context, stack StackIdentifier, ds DeploymentSettings) (*DeploymentSettings, error)
GetDeploymentSettings(ctx context.Context, stack StackIdentifier) (*DeploymentSettings, error)
DeleteDeploymentSettings(ctx context.Context, stack StackIdentifier) error
}

type DeploymentSettings struct {
Expand Down Expand Up @@ -139,7 +139,7 @@ func (v *SecretValue) UnmarshalJSON(bytes []byte) error {
return nil
}

func (c *Client) CreateDeploymentSettings(ctx context.Context, stack StackName, ds DeploymentSettings) (*DeploymentSettings, error) {
func (c *Client) CreateDeploymentSettings(ctx context.Context, stack StackIdentifier, ds DeploymentSettings) (*DeploymentSettings, error) {
apiPath := path.Join("stacks", stack.OrgName, stack.ProjectName, stack.StackName, "deployments", "settings")
var resultDS = &DeploymentSettings{}
_, err := c.do(ctx, http.MethodPut, apiPath, ds, resultDS)
Expand All @@ -149,7 +149,7 @@ func (c *Client) CreateDeploymentSettings(ctx context.Context, stack StackName,
return resultDS, nil
}

func (c *Client) UpdateDeploymentSettings(ctx context.Context, stack StackName, ds DeploymentSettings) (*DeploymentSettings, error) {
func (c *Client) UpdateDeploymentSettings(ctx context.Context, stack StackIdentifier, ds DeploymentSettings) (*DeploymentSettings, error) {
apiPath := path.Join("stacks", stack.OrgName, stack.ProjectName, stack.StackName, "deployments", "settings")
var resultDS = &DeploymentSettings{}
_, err := c.do(ctx, http.MethodPut, apiPath, ds, resultDS)
Expand All @@ -159,7 +159,7 @@ func (c *Client) UpdateDeploymentSettings(ctx context.Context, stack StackName,
return resultDS, nil
}

func (c *Client) GetDeploymentSettings(ctx context.Context, stack StackName) (*DeploymentSettings, error) {
func (c *Client) GetDeploymentSettings(ctx context.Context, stack StackIdentifier) (*DeploymentSettings, error) {
apiPath := path.Join(
"stacks", stack.OrgName, stack.ProjectName, stack.StackName, "deployments", "settings",
)
Expand All @@ -176,7 +176,7 @@ func (c *Client) GetDeploymentSettings(ctx context.Context, stack StackName) (*D
return &ds, nil
}

func (c *Client) DeleteDeploymentSettings(ctx context.Context, stack StackName) error {
func (c *Client) DeleteDeploymentSettings(ctx context.Context, stack StackIdentifier) error {
apiPath := path.Join(
"stacks", stack.OrgName, stack.ProjectName, stack.StackName, "deployments", "settings",
)
Expand Down
32 changes: 16 additions & 16 deletions provider/pkg/internal/pulumiapi/schedules.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,14 @@ import (
)

type ScheduleClient interface {
CreateDeploymentSchedule(ctx context.Context, stack StackName, req CreateDeploymentScheduleRequest) (*string, error)
CreateDriftSchedule(ctx context.Context, stack StackName, req CreateDriftScheduleRequest) (*string, error)
CreateTtlSchedule(ctx context.Context, stack StackName, req CreateTtlScheduleRequest) (*string, error)
GetSchedule(ctx context.Context, stack StackName, scheduleID string) (*ScheduleResponse, error)
UpdateDeploymentSchedule(ctx context.Context, stack StackName, req CreateDeploymentScheduleRequest, scheduleID string) (*string, error)
UpdateDriftSchedule(ctx context.Context, stack StackName, req CreateDriftScheduleRequest, scheduleID string) (*string, error)
UpdateTtlSchedule(ctx context.Context, stack StackName, req CreateTtlScheduleRequest, scheduleID string) (*string, error)
DeleteSchedule(ctx context.Context, stack StackName, scheduleID string) error
CreateDeploymentSchedule(ctx context.Context, stack StackIdentifier, req CreateDeploymentScheduleRequest) (*string, error)
CreateDriftSchedule(ctx context.Context, stack StackIdentifier, req CreateDriftScheduleRequest) (*string, error)
CreateTtlSchedule(ctx context.Context, stack StackIdentifier, req CreateTtlScheduleRequest) (*string, error)
GetSchedule(ctx context.Context, stack StackIdentifier, scheduleID string) (*ScheduleResponse, error)
UpdateDeploymentSchedule(ctx context.Context, stack StackIdentifier, req CreateDeploymentScheduleRequest, scheduleID string) (*string, error)
UpdateDriftSchedule(ctx context.Context, stack StackIdentifier, req CreateDriftScheduleRequest, scheduleID string) (*string, error)
UpdateTtlSchedule(ctx context.Context, stack StackIdentifier, req CreateTtlScheduleRequest, scheduleID string) (*string, error)
DeleteSchedule(ctx context.Context, stack StackIdentifier, scheduleID string) error
}

type CreateDeploymentRequest struct {
Expand Down Expand Up @@ -60,7 +60,7 @@ type ScheduleResponse struct {
Definition ScheduleDefinition `json:"definition,omitempty"`
}

func (c *Client) CreateDeploymentSchedule(ctx context.Context, stack StackName, scheduleReq CreateDeploymentScheduleRequest) (*string, error) {
func (c *Client) CreateDeploymentSchedule(ctx context.Context, stack StackIdentifier, scheduleReq CreateDeploymentScheduleRequest) (*string, error) {
apiPath := path.Join("stacks", stack.OrgName, stack.ProjectName, stack.StackName, "deployments", "schedules")
var scheduleResponse ScheduleResponse
_, err := c.do(ctx, http.MethodPost, apiPath, scheduleReq, &scheduleResponse)
Expand All @@ -77,7 +77,7 @@ func (c *Client) CreateDeploymentSchedule(ctx context.Context, stack StackName,
return &scheduleResponse.ID, nil
}

func (c *Client) CreateDriftSchedule(ctx context.Context, stack StackName, scheduleReq CreateDriftScheduleRequest) (*string, error) {
func (c *Client) CreateDriftSchedule(ctx context.Context, stack StackIdentifier, scheduleReq CreateDriftScheduleRequest) (*string, error) {
apiPath := path.Join("stacks", stack.OrgName, stack.ProjectName, stack.StackName, "deployments", "drift", "schedules")
var scheduleResponse ScheduleResponse
_, err := c.do(ctx, http.MethodPost, apiPath, scheduleReq, &scheduleResponse)
Expand All @@ -88,7 +88,7 @@ func (c *Client) CreateDriftSchedule(ctx context.Context, stack StackName, sched
return &scheduleResponse.ID, nil
}

func (c *Client) CreateTtlSchedule(ctx context.Context, stack StackName, scheduleReq CreateTtlScheduleRequest) (*string, error) {
func (c *Client) CreateTtlSchedule(ctx context.Context, stack StackIdentifier, scheduleReq CreateTtlScheduleRequest) (*string, error) {
apiPath := path.Join("stacks", stack.OrgName, stack.ProjectName, stack.StackName, "deployments", "ttl", "schedules")
var scheduleResponse ScheduleResponse
_, err := c.do(ctx, http.MethodPost, apiPath, scheduleReq, &scheduleResponse)
Expand All @@ -99,7 +99,7 @@ func (c *Client) CreateTtlSchedule(ctx context.Context, stack StackName, schedul
return &scheduleResponse.ID, nil
}

func (c *Client) GetSchedule(ctx context.Context, stack StackName, scheduleID string) (*ScheduleResponse, error) {
func (c *Client) GetSchedule(ctx context.Context, stack StackIdentifier, scheduleID string) (*ScheduleResponse, error) {
apiPath := path.Join("stacks", stack.OrgName, stack.ProjectName, stack.StackName, "deployments", "schedules", scheduleID)
var scheduleResponse ScheduleResponse
_, err := c.do(ctx, http.MethodGet, apiPath, nil, &scheduleResponse)
Expand All @@ -109,7 +109,7 @@ func (c *Client) GetSchedule(ctx context.Context, stack StackName, scheduleID st
return &scheduleResponse, nil
}

func (c *Client) UpdateDeploymentSchedule(ctx context.Context, stack StackName, scheduleReq CreateDeploymentScheduleRequest, scheduleID string) (*string, error) {
func (c *Client) UpdateDeploymentSchedule(ctx context.Context, stack StackIdentifier, scheduleReq CreateDeploymentScheduleRequest, scheduleID string) (*string, error) {
apiPath := path.Join("stacks", stack.OrgName, stack.ProjectName, stack.StackName, "deployments", "schedules", scheduleID)
var scheduleResponse ScheduleResponse
_, err := c.do(ctx, http.MethodPost, apiPath, scheduleReq, &scheduleResponse)
Expand All @@ -126,7 +126,7 @@ func (c *Client) UpdateDeploymentSchedule(ctx context.Context, stack StackName,
return &scheduleResponse.ID, nil
}

func (c *Client) UpdateDriftSchedule(ctx context.Context, stack StackName, scheduleReq CreateDriftScheduleRequest, scheduleID string) (*string, error) {
func (c *Client) UpdateDriftSchedule(ctx context.Context, stack StackIdentifier, scheduleReq CreateDriftScheduleRequest, scheduleID string) (*string, error) {
apiPath := path.Join("stacks", stack.OrgName, stack.ProjectName, stack.StackName, "deployments", "drift", "schedules", scheduleID)
var scheduleResponse ScheduleResponse
_, err := c.do(ctx, http.MethodPost, apiPath, scheduleReq, &scheduleResponse)
Expand All @@ -137,7 +137,7 @@ func (c *Client) UpdateDriftSchedule(ctx context.Context, stack StackName, sched
return &scheduleResponse.ID, nil
}

func (c *Client) UpdateTtlSchedule(ctx context.Context, stack StackName, scheduleReq CreateTtlScheduleRequest, scheduleID string) (*string, error) {
func (c *Client) UpdateTtlSchedule(ctx context.Context, stack StackIdentifier, scheduleReq CreateTtlScheduleRequest, scheduleID string) (*string, error) {
apiPath := path.Join("stacks", stack.OrgName, stack.ProjectName, stack.StackName, "deployments", "ttl", "schedules", scheduleID)
var scheduleResponse ScheduleResponse
_, err := c.do(ctx, http.MethodPost, apiPath, scheduleReq, &scheduleResponse)
Expand All @@ -148,7 +148,7 @@ func (c *Client) UpdateTtlSchedule(ctx context.Context, stack StackName, schedul
return &scheduleResponse.ID, nil
}

func (c *Client) DeleteSchedule(ctx context.Context, stack StackName, scheduleID string) error {
func (c *Client) DeleteSchedule(ctx context.Context, stack StackIdentifier, scheduleID string) error {
apiPath := path.Join("stacks", stack.OrgName, stack.ProjectName, stack.StackName, "deployments", "schedules", scheduleID)
_, err := c.do(ctx, http.MethodDelete, apiPath, nil, nil)
if err != nil {
Expand Down
2 changes: 1 addition & 1 deletion provider/pkg/internal/pulumiapi/schedules_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import (
"github.com/stretchr/testify/assert"
)

var testStack = StackName{
var testStack = StackIdentifier{
OrgName: "org",
ProjectName: "project",
StackName: "stack",
Expand Down
12 changes: 6 additions & 6 deletions provider/pkg/internal/pulumiapi/stack_tags.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,17 @@ import (
"strings"
)

type StackName struct {
type StackIdentifier struct {
OrgName string `json:"orgName"`
ProjectName string `json:"projectName"`
StackName string `json:"stackName"`
}

func (s *StackName) String() string {
func (s *StackIdentifier) String() string {
return fmt.Sprintf("%s/%s/%s", s.OrgName, s.ProjectName, s.StackName)
}

func (s *StackName) FromID(id string) error {
func (s *StackIdentifier) FromID(id string) error {
splitID := strings.Split(id, "/")
if len(splitID) != 3 {
return fmt.Errorf("invalid stack id: %s", id)
Expand All @@ -39,7 +39,7 @@ type stack struct {
Tags map[string]string `json:"tags"`
}

func (c *Client) CreateTag(ctx context.Context, stack StackName, tag StackTag) error {
func (c *Client) CreateTag(ctx context.Context, stack StackIdentifier, tag StackTag) error {
apiPath := path.Join("stacks", stack.OrgName, stack.ProjectName, stack.StackName, "tags")
_, err := c.do(ctx, http.MethodPost, apiPath, tag, nil)
if err != nil {
Expand All @@ -48,7 +48,7 @@ func (c *Client) CreateTag(ctx context.Context, stack StackName, tag StackTag) e
return nil
}

func (c *Client) GetStackTag(ctx context.Context, stackName StackName, tagName string) (*StackTag, error) {
func (c *Client) GetStackTag(ctx context.Context, stackName StackIdentifier, tagName string) (*StackTag, error) {
apiPath := path.Join("stacks", stackName.OrgName, stackName.ProjectName, stackName.StackName)
var s stack
_, err := c.do(ctx, http.MethodGet, apiPath, nil, &s)
Expand All @@ -65,7 +65,7 @@ func (c *Client) GetStackTag(ctx context.Context, stackName StackName, tagName s
}, nil
}

func (c *Client) DeleteStackTag(ctx context.Context, stackName StackName, tagName string) error {
func (c *Client) DeleteStackTag(ctx context.Context, stackName StackIdentifier, tagName string) error {
apiPath := path.Join(
"stacks", stackName.OrgName, stackName.ProjectName, stackName.StackName, "tags", tagName,
)
Expand Down
4 changes: 2 additions & 2 deletions provider/pkg/internal/pulumiapi/stack_tags_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ func TestCreateStackTags(t *testing.T) {
Name: tagName,
Value: tagValue,
}
stackName := StackName{
stackName := StackIdentifier{
OrgName: "organization",
ProjectName: "project",
StackName: "stack",
Expand Down Expand Up @@ -47,7 +47,7 @@ func TestCreateStackTags(t *testing.T) {
}

func TestDeleteStackTags(t *testing.T) {
stackName := StackName{
stackName := StackIdentifier{
OrgName: "organization",
ProjectName: "project",
StackName: "stack",
Expand Down
12 changes: 6 additions & 6 deletions provider/pkg/internal/pulumiapi/teams.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,9 @@ type TeamClient interface {
DeleteTeam(ctx context.Context, orgName, teamName string) error
AddMemberToTeam(ctx context.Context, orgName, teamName, userName string) error
DeleteMemberFromTeam(ctx context.Context, orgName, teamName, userName string) error
AddStackPermission(ctx context.Context, stack StackName, teamName string, permission int) error
RemoveStackPermission(ctx context.Context, stack StackName, teamName string) error
GetTeamStackPermission(ctx context.Context, stack StackName, teamName string) (*int, error)
AddStackPermission(ctx context.Context, stack StackIdentifier, teamName string, permission int) error
RemoveStackPermission(ctx context.Context, stack StackIdentifier, teamName string) error
GetTeamStackPermission(ctx context.Context, stack StackIdentifier, teamName string) (*int, error)
AddEnvironmentPermission(ctx context.Context, req CreateTeamEnvironmentPermissionRequest) error
RemoveEnvironmentPermission(ctx context.Context, req TeamEnvironmentPermissionRequest) error
GetTeamEnvironmentPermission(ctx context.Context, req TeamEnvironmentPermissionRequest) (*string, error)
Expand Down Expand Up @@ -305,7 +305,7 @@ func (c *Client) DeleteMemberFromTeam(ctx context.Context, orgName, teamName, us
}
}

func (c *Client) AddStackPermission(ctx context.Context, stack StackName, teamName string, permission int) error {
func (c *Client) AddStackPermission(ctx context.Context, stack StackIdentifier, teamName string, permission int) error {
if len(stack.OrgName) == 0 {
return errors.New("orgname must not be empty")
}
Expand All @@ -327,7 +327,7 @@ func (c *Client) AddStackPermission(ctx context.Context, stack StackName, teamNa
return nil
}

func (c *Client) RemoveStackPermission(ctx context.Context, stack StackName, teamName string) error {
func (c *Client) RemoveStackPermission(ctx context.Context, stack StackIdentifier, teamName string) error {
if len(stack.OrgName) == 0 {
return errors.New("orgname must not be empty")
}
Expand All @@ -349,7 +349,7 @@ func (c *Client) RemoveStackPermission(ctx context.Context, stack StackName, tea
return nil
}

func (c *Client) GetTeamStackPermission(ctx context.Context, stack StackName, teamName string) (*int, error) {
func (c *Client) GetTeamStackPermission(ctx context.Context, stack StackIdentifier, teamName string) (*int, error) {
if len(stack.OrgName) == 0 {
return nil, errors.New("orgname must not be empty")
}
Expand Down
4 changes: 2 additions & 2 deletions provider/pkg/internal/pulumiapi/teams_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,7 @@ func TestAddMemberToTeam(t *testing.T) {

func TestAddStackPermission(t *testing.T) {
teamName := "a-team"
stack := StackName{
stack := StackIdentifier{
OrgName: "an-organization",
ProjectName: "a-project",
StackName: "a-stack",
Expand All @@ -278,7 +278,7 @@ func TestAddStackPermission(t *testing.T) {

func TestRemoveStackPermission(t *testing.T) {
teamName := "a-team"
stack := StackName{
stack := StackIdentifier{
OrgName: "an-organization",
ProjectName: "a-project",
StackName: "a-stack",
Expand Down
14 changes: 7 additions & 7 deletions provider/pkg/provider/deployment_schedules.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,18 +20,18 @@ type PulumiServiceDeploymentScheduleResource struct {
}

type PulumiServiceDeploymentScheduleInput struct {
Stack pulumiapi.StackName
Stack pulumiapi.StackIdentifier
ScheduleCron *string `pulumi:"scheduleCron"`
ScheduleOnce *time.Time `pulumi:"scheduleOnce"`
PulumiOperation string `pulumi:"pulumiOperation"`
}

type PulumiServiceSharedScheduleOutput struct {
Stack pulumiapi.StackName
Stack pulumiapi.StackIdentifier
ScheduleID string `pulumi:"scheduleId"`
}

func StackToPropertyMap(stack pulumiapi.StackName) resource.PropertyMap {
func StackToPropertyMap(stack pulumiapi.StackIdentifier) resource.PropertyMap {
propertyMap := resource.PropertyMap{}
propertyMap["organization"] = resource.NewPropertyValue(stack.OrgName)
propertyMap["project"] = resource.NewPropertyValue(stack.ProjectName)
Expand All @@ -58,8 +58,8 @@ func AddScheduleIdToPropertyMap(scheduleID string, propertyMap resource.Property
return propertyMap
}

func ParseStack(inputMap resource.PropertyMap) (*pulumiapi.StackName, error) {
var stack pulumiapi.StackName
func ParseStack(inputMap resource.PropertyMap) (*pulumiapi.StackIdentifier, error) {
var stack pulumiapi.StackIdentifier
if inputMap["organization"].HasValue() && inputMap["organization"].IsString() {
organization := inputMap["organization"].StringValue()
stack.OrgName = organization
Expand Down Expand Up @@ -387,12 +387,12 @@ func (st *PulumiServiceDeploymentScheduleResource) Name() string {
func (st *PulumiServiceDeploymentScheduleResource) Configure(_ PulumiServiceConfig) {
}

func ParseScheduleID(id string, scheduleType string) (*pulumiapi.StackName, *string, error) {
func ParseScheduleID(id string, scheduleType string) (*pulumiapi.StackIdentifier, *string, error) {
splitID := strings.Split(id, "/")
if len(splitID) < 4 {
return nil, nil, fmt.Errorf("invalid stack id: %s", id)
}
stack := pulumiapi.StackName{
stack := pulumiapi.StackIdentifier{
OrgName: splitID[0],
ProjectName: splitID[1],
StackName: splitID[2],
Expand Down
8 changes: 4 additions & 4 deletions provider/pkg/provider/deployment_setting_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,16 +17,16 @@ type DeploymentSettingsClientMock struct {
getDeploymentSettingsFunc getDeploymentSettingsFunc
}

func (c *DeploymentSettingsClientMock) CreateDeploymentSettings(ctx context.Context, stack pulumiapi.StackName, ds pulumiapi.DeploymentSettings) (*pulumiapi.DeploymentSettings, error) {
func (c *DeploymentSettingsClientMock) CreateDeploymentSettings(ctx context.Context, stack pulumiapi.StackIdentifier, ds pulumiapi.DeploymentSettings) (*pulumiapi.DeploymentSettings, error) {
return nil, nil
}
func (c *DeploymentSettingsClientMock) UpdateDeploymentSettings(ctx context.Context, stack pulumiapi.StackName, ds pulumiapi.DeploymentSettings) (*pulumiapi.DeploymentSettings, error) {
func (c *DeploymentSettingsClientMock) UpdateDeploymentSettings(ctx context.Context, stack pulumiapi.StackIdentifier, ds pulumiapi.DeploymentSettings) (*pulumiapi.DeploymentSettings, error) {
return nil, nil
}
func (c *DeploymentSettingsClientMock) GetDeploymentSettings(ctx context.Context, stack pulumiapi.StackName) (*pulumiapi.DeploymentSettings, error) {
func (c *DeploymentSettingsClientMock) GetDeploymentSettings(ctx context.Context, stack pulumiapi.StackIdentifier) (*pulumiapi.DeploymentSettings, error) {
return c.getDeploymentSettingsFunc()
}
func (c *DeploymentSettingsClientMock) DeleteDeploymentSettings(ctx context.Context, stack pulumiapi.StackName) error {
func (c *DeploymentSettingsClientMock) DeleteDeploymentSettings(ctx context.Context, stack pulumiapi.StackIdentifier) error {
return nil
}

Expand Down
Loading

0 comments on commit cbcaf4d

Please sign in to comment.