From 219298529139d8ca4ffd50d2c53ee2fa5069ecd6 Mon Sep 17 00:00:00 2001 From: Rhythm Bhiwani Date: Sat, 2 Mar 2024 23:16:11 +0530 Subject: [PATCH 1/6] Show organization name in infisical init command, to differentiate between projects of same name --- cli/packages/api/api.go | 35 +++++++++++++++++++++++++++++++++++ cli/packages/api/model.go | 11 +++++++++-- cli/packages/cmd/init.go | 2 +- cli/packages/models/cli.go | 2 +- 4 files changed, 46 insertions(+), 4 deletions(-) diff --git a/cli/packages/api/api.go b/cli/packages/api/api.go index d438adb33..eaf1c650b 100644 --- a/cli/packages/api/api.go +++ b/cli/packages/api/api.go @@ -145,6 +145,25 @@ func CallLogin2V2(httpClient *resty.Client, request GetLoginTwoV2Request) (GetLo return loginTwoV2Response, nil } +func CallGetAllOrganizations(httpClient *resty.Client) (GetOrganizationsResponse, error) { + var orgResponse GetOrganizationsResponse + response, err := httpClient. + R(). + SetResult(&orgResponse). + SetHeader("User-Agent", USER_AGENT). + Get(fmt.Sprintf("%v/v1/organization", config.INFISICAL_URL)) + + if err != nil { + return GetOrganizationsResponse{}, err + } + + if response.IsError() { + return GetOrganizationsResponse{}, fmt.Errorf("CallGetAllOrganizations: Unsuccessful response: [response=%v]", response) + } + + return orgResponse, nil +} + func CallGetAllWorkSpacesUserBelongsTo(httpClient *resty.Client) (GetWorkSpacesResponse, error) { var workSpacesResponse GetWorkSpacesResponse response, err := httpClient. @@ -161,6 +180,22 @@ func CallGetAllWorkSpacesUserBelongsTo(httpClient *resty.Client) (GetWorkSpacesR return GetWorkSpacesResponse{}, fmt.Errorf("CallGetAllWorkSpacesUserBelongsTo: Unsuccessful response: [response=%v]", response) } + // Call the organization API + orgResponse, err := CallGetAllOrganizations(httpClient) + if err != nil { + return GetWorkSpacesResponse{}, err + } + + // Update organization names in workspacesResponse + for i, workspace := range workSpacesResponse.Workspaces { + for _, organization := range orgResponse.Organizations { + if workspace.Organization == organization.ID { + workSpacesResponse.Workspaces[i].Organization = organization.Name + break + } + } + } + return workSpacesResponse, nil } diff --git a/cli/packages/api/model.go b/cli/packages/api/model.go index 67ac97c25..5fc04dee3 100644 --- a/cli/packages/api/model.go +++ b/cli/packages/api/model.go @@ -124,10 +124,17 @@ type GetWorkSpacesResponse struct { Name string `json:"name"` Plan string `json:"plan,omitempty"` V int `json:"__v"` - Organization string `json:"organization,omitempty"` + Organization string `json:"orgId,omitempty"` } `json:"workspaces"` } +type GetOrganizationsResponse struct { + Organizations []struct { + ID string `json:"id"` + Name string `json:"name"` + } `json:"organizations"` +} + type Secret struct { SecretKeyCiphertext string `json:"secretKeyCiphertext,omitempty"` SecretKeyIV string `json:"secretKeyIV,omitempty"` @@ -505,5 +512,5 @@ type GetRawSecretsV3Response struct { SecretComment string `json:"secretComment"` } `json:"secrets"` Imports []any `json:"imports"` - ETag string + ETag string } diff --git a/cli/packages/cmd/init.go b/cli/packages/cmd/init.go index 070074fa9..9e7c2fe6a 100644 --- a/cli/packages/cmd/init.go +++ b/cli/packages/cmd/init.go @@ -65,7 +65,7 @@ var initCmd = &cobra.Command{ var workspaceNames []string for _, workspace := range workspaces { - workspaceNames = append(workspaceNames, workspace.Name) + workspaceNames = append(workspaceNames, fmt.Sprintf("%s (%s)", workspace.Name, workspace.Organization)) } prompt := promptui.Select{ diff --git a/cli/packages/models/cli.go b/cli/packages/models/cli.go index 71033fe72..801cfddfc 100644 --- a/cli/packages/models/cli.go +++ b/cli/packages/models/cli.go @@ -49,7 +49,7 @@ type Workspace struct { Name string `json:"name"` Plan string `json:"plan,omitempty"` V int `json:"__v"` - Organization string `json:"organization,omitempty"` + Organization string `json:"orgId,omitempty"` } type WorkspaceConfigFile struct { From 756c1e50987995cf9fd1e80e18ebabe5f6df5d40 Mon Sep 17 00:00:00 2001 From: Rhythm Bhiwani Date: Sun, 3 Mar 2024 12:12:25 +0530 Subject: [PATCH 2/6] Added `populateOrgName` param in `/v1/workspace` api which adds `orgName` and `displayName` in result Updated the CLI to use this new paramter to display organization name with project name with support for backward compatibility keeping original behaviour for older apis --- backend/src/server/routes/index.ts | 1 + .../src/server/routes/v1/project-router.ts | 12 +++++++-- .../src/services/project/project-service.ts | 16 ++++++++++- cli/packages/api/api.go | 17 +----------- cli/packages/api/model.go | 11 ++++---- cli/packages/cmd/init.go | 11 +++----- cli/packages/models/cli.go | 11 ++++---- cli/packages/util/init.go | 27 +++++++++++++++++++ 8 files changed, 69 insertions(+), 37 deletions(-) create mode 100644 cli/packages/util/init.go diff --git a/backend/src/server/routes/index.ts b/backend/src/server/routes/index.ts index d3d01ccb5..f6264d580 100644 --- a/backend/src/server/routes/index.ts +++ b/backend/src/server/routes/index.ts @@ -341,6 +341,7 @@ export const registerRoutes = async ( const projectService = projectServiceFactory({ permissionService, projectDAL, + orgDAL, projectQueue: projectQueueService, secretBlindIndexDAL, identityProjectDAL, diff --git a/backend/src/server/routes/v1/project-router.ts b/backend/src/server/routes/v1/project-router.ts index 0a5f8d85e..a4c385283 100644 --- a/backend/src/server/routes/v1/project-router.ts +++ b/backend/src/server/routes/v1/project-router.ts @@ -16,7 +16,9 @@ import { sanitizedServiceTokenSchema } from "../v2/service-token-router"; const projectWithEnv = ProjectsSchema.merge( z.object({ _id: z.string(), - environments: z.object({ name: z.string(), slug: z.string(), id: z.string() }).array() + environments: z.object({ name: z.string(), slug: z.string(), id: z.string() }).array(), + orgName: z.string().optional(), + displayName: z.string().optional() }) ); @@ -91,6 +93,12 @@ export const registerProjectRouter = async (server: FastifyZodProvider) => { url: "/", method: "GET", schema: { + querystring: z.object({ + populateOrgName: z + .enum(["true", "false"]) + .default("false") + .transform((value) => value === "true") + }), response: { 200: z.object({ workspaces: projectWithEnv.array() @@ -99,7 +107,7 @@ export const registerProjectRouter = async (server: FastifyZodProvider) => { }, onRequest: verifyAuth([AuthMode.JWT, AuthMode.API_KEY]), handler: async (req) => { - const workspaces = await server.services.project.getProjects(req.permission.id); + const workspaces = await server.services.project.getProjects(req.permission.id, req.query.populateOrgName); return { workspaces }; } }); diff --git a/backend/src/services/project/project-service.ts b/backend/src/services/project/project-service.ts index c7c3af6fa..4bd322494 100644 --- a/backend/src/services/project/project-service.ts +++ b/backend/src/services/project/project-service.ts @@ -17,6 +17,7 @@ import { TProjectPermission } from "@app/lib/types"; import { ActorType } from "../auth/auth-type"; import { TIdentityOrgDALFactory } from "../identity/identity-org-dal"; import { TIdentityProjectDALFactory } from "../identity-project/identity-project-dal"; +import { TOrgDALFactory } from "../org/org-dal"; import { TOrgServiceFactory } from "../org/org-service"; import { TProjectBotDALFactory } from "../project-bot/project-bot-dal"; import { TProjectEnvDALFactory } from "../project-env/project-env-dal"; @@ -46,6 +47,7 @@ type TProjectServiceFactoryDep = { projectDAL: TProjectDALFactory; projectQueue: TProjectQueueFactory; userDAL: TUserDALFactory; + orgDAL: TOrgDALFactory; folderDAL: TSecretFolderDALFactory; projectEnvDAL: Pick; identityOrgMembershipDAL: TIdentityOrgDALFactory; @@ -64,6 +66,7 @@ export type TProjectServiceFactory = ReturnType; export const projectServiceFactory = ({ projectDAL, projectQueue, + orgDAL, projectKeyDAL, permissionService, userDAL, @@ -306,8 +309,19 @@ export const projectServiceFactory = ({ return deletedProject; }; - const getProjects = async (actorId: string) => { + const getProjects = async (actorId: string, populateOrgName?: boolean) => { const workspaces = await projectDAL.findAllProjects(actorId); + if (populateOrgName) { + const orgs = await orgDAL.findAllOrgsByUserId(actorId); + return workspaces.map((workspace) => { + const orgName = orgs.find((org) => org.id === workspace.orgId)?.name || ""; + return { + ...workspace, + orgName, + displayName: `${workspace.name} (${orgName})` + }; + }); + } return workspaces; }; diff --git a/cli/packages/api/api.go b/cli/packages/api/api.go index eaf1c650b..73d8b3916 100644 --- a/cli/packages/api/api.go +++ b/cli/packages/api/api.go @@ -170,6 +170,7 @@ func CallGetAllWorkSpacesUserBelongsTo(httpClient *resty.Client) (GetWorkSpacesR R(). SetResult(&workSpacesResponse). SetHeader("User-Agent", USER_AGENT). + SetQueryParam("populateOrgName", "true"). Get(fmt.Sprintf("%v/v1/workspace", config.INFISICAL_URL)) if err != nil { @@ -180,22 +181,6 @@ func CallGetAllWorkSpacesUserBelongsTo(httpClient *resty.Client) (GetWorkSpacesR return GetWorkSpacesResponse{}, fmt.Errorf("CallGetAllWorkSpacesUserBelongsTo: Unsuccessful response: [response=%v]", response) } - // Call the organization API - orgResponse, err := CallGetAllOrganizations(httpClient) - if err != nil { - return GetWorkSpacesResponse{}, err - } - - // Update organization names in workspacesResponse - for i, workspace := range workSpacesResponse.Workspaces { - for _, organization := range orgResponse.Organizations { - if workspace.Organization == organization.ID { - workSpacesResponse.Workspaces[i].Organization = organization.Name - break - } - } - } - return workSpacesResponse, nil } diff --git a/cli/packages/api/model.go b/cli/packages/api/model.go index 5fc04dee3..de4949c17 100644 --- a/cli/packages/api/model.go +++ b/cli/packages/api/model.go @@ -120,11 +120,12 @@ type PullSecretsByInfisicalTokenResponse struct { type GetWorkSpacesResponse struct { Workspaces []struct { - ID string `json:"_id"` - Name string `json:"name"` - Plan string `json:"plan,omitempty"` - V int `json:"__v"` - Organization string `json:"orgId,omitempty"` + ID string `json:"_id"` + Name string `json:"name"` + Plan string `json:"plan,omitempty"` + V int `json:"__v"` + Organization *string `json:"orgName,omitempty"` + DisplayName *string `json:"displayName,omitempty"` } `json:"workspaces"` } diff --git a/cli/packages/cmd/init.go b/cli/packages/cmd/init.go index 9e7c2fe6a..217e0842e 100644 --- a/cli/packages/cmd/init.go +++ b/cli/packages/cmd/init.go @@ -5,7 +5,6 @@ package cmd import ( "encoding/json" - "fmt" "github.com/Infisical/infisical-merge/packages/api" "github.com/Infisical/infisical-merge/packages/models" @@ -58,14 +57,10 @@ var initCmd = &cobra.Command{ } workspaces := workspaceResponse.Workspaces - if len(workspaces) == 0 { - message := fmt.Sprintf("You don't have any projects created in Infisical. You must first create a project at %s", util.INFISICAL_TOKEN_NAME) - util.PrintErrorMessageAndExit(message) - } - var workspaceNames []string - for _, workspace := range workspaces { - workspaceNames = append(workspaceNames, fmt.Sprintf("%s (%s)", workspace.Name, workspace.Organization)) + workspaceNames, err := util.GetWorkspacesNameList(workspaceResponse) + if err != nil { + util.HandleError(err, "Error extracting workspace names") } prompt := promptui.Select{ diff --git a/cli/packages/models/cli.go b/cli/packages/models/cli.go index 801cfddfc..556b70051 100644 --- a/cli/packages/models/cli.go +++ b/cli/packages/models/cli.go @@ -45,11 +45,12 @@ type SingleFolder struct { } type Workspace struct { - ID string `json:"_id"` - Name string `json:"name"` - Plan string `json:"plan,omitempty"` - V int `json:"__v"` - Organization string `json:"orgId,omitempty"` + ID string `json:"_id"` + Name string `json:"name"` + Plan string `json:"plan,omitempty"` + V int `json:"__v"` + Organization *string `json:"orgName,omitempty"` + DisplayName *string `json:"displayName,omitempty"` } type WorkspaceConfigFile struct { diff --git a/cli/packages/util/init.go b/cli/packages/util/init.go new file mode 100644 index 000000000..be91e811d --- /dev/null +++ b/cli/packages/util/init.go @@ -0,0 +1,27 @@ +package util + +import ( + "fmt" + + "github.com/Infisical/infisical-merge/packages/api" +) + +func GetWorkspacesNameList(workspaceResponse api.GetWorkSpacesResponse) ([]string, error) { + workspaces := workspaceResponse.Workspaces + + if len(workspaces) == 0 { + message := fmt.Sprintf("You don't have any projects created in Infisical. You must first create a project at %s", INFISICAL_TOKEN_NAME) + PrintErrorMessageAndExit(message) + } + + var workspaceNames []string + for _, workspace := range workspaces { + if workspace.DisplayName != nil { + workspaceNames = append(workspaceNames, *workspace.DisplayName) + } else { + workspaceNames = append(workspaceNames, workspace.Name) + } + } + + return workspaceNames, nil +} From c7bbe82f4ae407197bbb4aaf359437758e6fc5b8 Mon Sep 17 00:00:00 2001 From: Rhythm Bhiwani Date: Tue, 5 Mar 2024 03:08:13 +0530 Subject: [PATCH 3/6] Reverted backend api changes In CLI, now first asking org, then projects --- backend/src/server/routes/index.ts | 1 - .../src/server/routes/v1/project-router.ts | 12 +----- .../src/services/project/project-service.ts | 16 +------- cli/packages/api/model.go | 11 +++--- cli/packages/cmd/init.go | 38 ++++++++++++++----- cli/packages/models/cli.go | 11 +++--- cli/packages/util/init.go | 34 +++++++++++++---- 7 files changed, 67 insertions(+), 56 deletions(-) diff --git a/backend/src/server/routes/index.ts b/backend/src/server/routes/index.ts index f6264d580..d3d01ccb5 100644 --- a/backend/src/server/routes/index.ts +++ b/backend/src/server/routes/index.ts @@ -341,7 +341,6 @@ export const registerRoutes = async ( const projectService = projectServiceFactory({ permissionService, projectDAL, - orgDAL, projectQueue: projectQueueService, secretBlindIndexDAL, identityProjectDAL, diff --git a/backend/src/server/routes/v1/project-router.ts b/backend/src/server/routes/v1/project-router.ts index a4c385283..0a5f8d85e 100644 --- a/backend/src/server/routes/v1/project-router.ts +++ b/backend/src/server/routes/v1/project-router.ts @@ -16,9 +16,7 @@ import { sanitizedServiceTokenSchema } from "../v2/service-token-router"; const projectWithEnv = ProjectsSchema.merge( z.object({ _id: z.string(), - environments: z.object({ name: z.string(), slug: z.string(), id: z.string() }).array(), - orgName: z.string().optional(), - displayName: z.string().optional() + environments: z.object({ name: z.string(), slug: z.string(), id: z.string() }).array() }) ); @@ -93,12 +91,6 @@ export const registerProjectRouter = async (server: FastifyZodProvider) => { url: "/", method: "GET", schema: { - querystring: z.object({ - populateOrgName: z - .enum(["true", "false"]) - .default("false") - .transform((value) => value === "true") - }), response: { 200: z.object({ workspaces: projectWithEnv.array() @@ -107,7 +99,7 @@ export const registerProjectRouter = async (server: FastifyZodProvider) => { }, onRequest: verifyAuth([AuthMode.JWT, AuthMode.API_KEY]), handler: async (req) => { - const workspaces = await server.services.project.getProjects(req.permission.id, req.query.populateOrgName); + const workspaces = await server.services.project.getProjects(req.permission.id); return { workspaces }; } }); diff --git a/backend/src/services/project/project-service.ts b/backend/src/services/project/project-service.ts index 4bd322494..c7c3af6fa 100644 --- a/backend/src/services/project/project-service.ts +++ b/backend/src/services/project/project-service.ts @@ -17,7 +17,6 @@ import { TProjectPermission } from "@app/lib/types"; import { ActorType } from "../auth/auth-type"; import { TIdentityOrgDALFactory } from "../identity/identity-org-dal"; import { TIdentityProjectDALFactory } from "../identity-project/identity-project-dal"; -import { TOrgDALFactory } from "../org/org-dal"; import { TOrgServiceFactory } from "../org/org-service"; import { TProjectBotDALFactory } from "../project-bot/project-bot-dal"; import { TProjectEnvDALFactory } from "../project-env/project-env-dal"; @@ -47,7 +46,6 @@ type TProjectServiceFactoryDep = { projectDAL: TProjectDALFactory; projectQueue: TProjectQueueFactory; userDAL: TUserDALFactory; - orgDAL: TOrgDALFactory; folderDAL: TSecretFolderDALFactory; projectEnvDAL: Pick; identityOrgMembershipDAL: TIdentityOrgDALFactory; @@ -66,7 +64,6 @@ export type TProjectServiceFactory = ReturnType; export const projectServiceFactory = ({ projectDAL, projectQueue, - orgDAL, projectKeyDAL, permissionService, userDAL, @@ -309,19 +306,8 @@ export const projectServiceFactory = ({ return deletedProject; }; - const getProjects = async (actorId: string, populateOrgName?: boolean) => { + const getProjects = async (actorId: string) => { const workspaces = await projectDAL.findAllProjects(actorId); - if (populateOrgName) { - const orgs = await orgDAL.findAllOrgsByUserId(actorId); - return workspaces.map((workspace) => { - const orgName = orgs.find((org) => org.id === workspace.orgId)?.name || ""; - return { - ...workspace, - orgName, - displayName: `${workspace.name} (${orgName})` - }; - }); - } return workspaces; }; diff --git a/cli/packages/api/model.go b/cli/packages/api/model.go index de4949c17..586a23511 100644 --- a/cli/packages/api/model.go +++ b/cli/packages/api/model.go @@ -120,12 +120,11 @@ type PullSecretsByInfisicalTokenResponse struct { type GetWorkSpacesResponse struct { Workspaces []struct { - ID string `json:"_id"` - Name string `json:"name"` - Plan string `json:"plan,omitempty"` - V int `json:"__v"` - Organization *string `json:"orgName,omitempty"` - DisplayName *string `json:"displayName,omitempty"` + ID string `json:"_id"` + Name string `json:"name"` + Plan string `json:"plan,omitempty"` + V int `json:"__v"` + OrganizationId string `json:"orgId"` } `json:"workspaces"` } diff --git a/cli/packages/cmd/init.go b/cli/packages/cmd/init.go index 217e0842e..8c7233f24 100644 --- a/cli/packages/cmd/init.go +++ b/cli/packages/cmd/init.go @@ -51,21 +51,19 @@ var initCmd = &cobra.Command{ httpClient := resty.New() httpClient.SetAuthToken(userCreds.UserCredentials.JTWToken) - workspaceResponse, err := api.CallGetAllWorkSpacesUserBelongsTo(httpClient) + + organizationResponse, err := api.CallGetAllOrganizations(httpClient) if err != nil { - util.HandleError(err, "Unable to pull projects that belong to you") + util.HandleError(err, "Unable to pull organizations that belong to you") } - workspaces := workspaceResponse.Workspaces + organizations := organizationResponse.Organizations - workspaceNames, err := util.GetWorkspacesNameList(workspaceResponse) - if err != nil { - util.HandleError(err, "Error extracting workspace names") - } + organizationNames := util.GetOrganizationsNameList(organizationResponse) prompt := promptui.Select{ - Label: "Which of your Infisical projects would you like to connect this project to?", - Items: workspaceNames, + Label: "Which of your Infisical organization would you like to get projects from?", + Items: organizationNames, Size: 7, } @@ -74,7 +72,27 @@ var initCmd = &cobra.Command{ util.HandleError(err) } - err = writeWorkspaceFile(workspaces[index]) + selectedOrganization := organizations[index] + + workspaceResponse, err := api.CallGetAllWorkSpacesUserBelongsTo(httpClient) + if err != nil { + util.HandleError(err, "Unable to pull projects that belong to you") + } + + filteredWorkspaces, workspaceNames := util.GetWorkspacesInOrganization(workspaceResponse, selectedOrganization.ID) + + prompt = promptui.Select{ + Label: "Which of your Infisical projects would you like to connect this project to?", + Items: workspaceNames, + Size: 7, + } + + index, _, err = prompt.Run() + if err != nil { + util.HandleError(err) + } + + err = writeWorkspaceFile(filteredWorkspaces[index]) if err != nil { util.HandleError(err) } diff --git a/cli/packages/models/cli.go b/cli/packages/models/cli.go index 556b70051..c3999f68b 100644 --- a/cli/packages/models/cli.go +++ b/cli/packages/models/cli.go @@ -45,12 +45,11 @@ type SingleFolder struct { } type Workspace struct { - ID string `json:"_id"` - Name string `json:"name"` - Plan string `json:"plan,omitempty"` - V int `json:"__v"` - Organization *string `json:"orgName,omitempty"` - DisplayName *string `json:"displayName,omitempty"` + ID string `json:"_id"` + Name string `json:"name"` + Plan string `json:"plan,omitempty"` + V int `json:"__v"` + OrganizationId string `json:"orgId"` } type WorkspaceConfigFile struct { diff --git a/cli/packages/util/init.go b/cli/packages/util/init.go index be91e811d..942820273 100644 --- a/cli/packages/util/init.go +++ b/cli/packages/util/init.go @@ -4,24 +4,42 @@ import ( "fmt" "github.com/Infisical/infisical-merge/packages/api" + "github.com/Infisical/infisical-merge/packages/models" ) -func GetWorkspacesNameList(workspaceResponse api.GetWorkSpacesResponse) ([]string, error) { - workspaces := workspaceResponse.Workspaces +func GetOrganizationsNameList(organizationResponse api.GetOrganizationsResponse) []string { + organizations := organizationResponse.Organizations - if len(workspaces) == 0 { - message := fmt.Sprintf("You don't have any projects created in Infisical. You must first create a project at %s", INFISICAL_TOKEN_NAME) + if len(organizations) == 0 { + message := fmt.Sprintf("You don't have any organization created in Infisical. You must first create a organization at %s", INFISICAL_TOKEN_NAME) PrintErrorMessageAndExit(message) } + var organizationNames []string + for _, workspace := range organizations { + organizationNames = append(organizationNames, workspace.Name) + } + + return organizationNames +} + +func GetWorkspacesInOrganization(workspaceResponse api.GetWorkSpacesResponse, orgId string) ([]models.Workspace, []string) { + workspaces := workspaceResponse.Workspaces + + var filteredWorkspaces []models.Workspace var workspaceNames []string + for _, workspace := range workspaces { - if workspace.DisplayName != nil { - workspaceNames = append(workspaceNames, *workspace.DisplayName) - } else { + if workspace.OrganizationId == orgId { + filteredWorkspaces = append(filteredWorkspaces, workspace) workspaceNames = append(workspaceNames, workspace.Name) } } - return workspaceNames, nil + if len(filteredWorkspaces) == 0 { + message := fmt.Sprintf("You don't have any projects created in Infisical organization. You must first create a project at %s", INFISICAL_TOKEN_NAME) + PrintErrorMessageAndExit(message) + } + + return filteredWorkspaces, workspaceNames } From 84249f535b58206ce9728052ad1a9ebb173b4127 Mon Sep 17 00:00:00 2001 From: Rhythm Bhiwani Date: Tue, 5 Mar 2024 03:46:10 +0530 Subject: [PATCH 4/6] Changed message for asking org --- cli/packages/cmd/init.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cli/packages/cmd/init.go b/cli/packages/cmd/init.go index 8c7233f24..e47eb447e 100644 --- a/cli/packages/cmd/init.go +++ b/cli/packages/cmd/init.go @@ -62,7 +62,7 @@ var initCmd = &cobra.Command{ organizationNames := util.GetOrganizationsNameList(organizationResponse) prompt := promptui.Select{ - Label: "Which of your Infisical organization would you like to get projects from?", + Label: "Which Infisical organization would you like to select a project from?", Items: organizationNames, Size: 7, } From cf4f26ab902478da9dfa0672e9f9b49a36d64329 Mon Sep 17 00:00:00 2001 From: Rhythm Bhiwani Date: Tue, 5 Mar 2024 03:46:52 +0530 Subject: [PATCH 5/6] changed `INFISICAL_TOKEN_NAME` to `INFISICAL_DEFAULT_URL` in error messages --- cli/packages/util/init.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cli/packages/util/init.go b/cli/packages/util/init.go index 942820273..33350f3b7 100644 --- a/cli/packages/util/init.go +++ b/cli/packages/util/init.go @@ -11,7 +11,7 @@ func GetOrganizationsNameList(organizationResponse api.GetOrganizationsResponse) organizations := organizationResponse.Organizations if len(organizations) == 0 { - message := fmt.Sprintf("You don't have any organization created in Infisical. You must first create a organization at %s", INFISICAL_TOKEN_NAME) + message := fmt.Sprintf("You don't have any organization created in Infisical. You must first create a organization at %s", INFISICAL_DEFAULT_URL) PrintErrorMessageAndExit(message) } @@ -37,7 +37,7 @@ func GetWorkspacesInOrganization(workspaceResponse api.GetWorkSpacesResponse, or } if len(filteredWorkspaces) == 0 { - message := fmt.Sprintf("You don't have any projects created in Infisical organization. You must first create a project at %s", INFISICAL_TOKEN_NAME) + message := fmt.Sprintf("You don't have any projects created in Infisical organization. You must first create a project at %s", INFISICAL_DEFAULT_URL) PrintErrorMessageAndExit(message) } From e6036175c17819e6daa8806460a733ac178207d2 Mon Sep 17 00:00:00 2001 From: Maidul Islam Date: Tue, 5 Mar 2024 11:48:28 -0500 Subject: [PATCH 6/6] remove query param --- cli/packages/api/api.go | 1 - 1 file changed, 1 deletion(-) diff --git a/cli/packages/api/api.go b/cli/packages/api/api.go index 73d8b3916..1b69b8f23 100644 --- a/cli/packages/api/api.go +++ b/cli/packages/api/api.go @@ -170,7 +170,6 @@ func CallGetAllWorkSpacesUserBelongsTo(httpClient *resty.Client) (GetWorkSpacesR R(). SetResult(&workSpacesResponse). SetHeader("User-Agent", USER_AGENT). - SetQueryParam("populateOrgName", "true"). Get(fmt.Sprintf("%v/v1/workspace", config.INFISICAL_URL)) if err != nil {