Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(vscode): Logic App and Workflows As Menu Items #6310

Open
wants to merge 30 commits into
base: main
Choose a base branch
from

Conversation

lambrianmsft
Copy link
Contributor

@lambrianmsft lambrianmsft commented Dec 27, 2024

Right-click Menu Options:

  • Add new projects and workflows to an opened workspace.

Logic App Project Outside Workspace:

  • If a .code-workspace file is found in the directory or one level above, it will prompt to open it.
  • If no .code-workspace file is found, it will prompt to create a workspace, copy the logic app(s) and function(s), and other opened folders to the new workspace, and open the new workspace.

Workspace Requirements:

  • Workspaces are now required and can support multiple logic app projects and project types.
  • The panel name for an opened workflow in the Designer will be {workspace} - {logicappname} - {workflowname}.
  • Custom code projects now support custom logic app names outside of the default "LogicApp".
  • The "Functions" folder is now renamed to the name of the created function.
  • Users are blocked from creating conflicting logic app and function names within the workspace.
  • When there are multiple folders in a workspace, only the logic app folders will be displayed and prompted for Infrastructure as Code (IaC) instead of the full list of available folders.
  • The parameterization prompt does not display if the connections.json file is empty.

Convert to NuGet Project:

  • The menu will now have a logic app project selection when a logic app project is not selected.
  • It will also display the logic app that will be converted to NuGet as part of the pop up confirmation message.

Requirement Checklist

  • The commit message follows our guidelines
  • Tests for the changes have been added (for bug fixes or features)
  • Docs have been added or updated (for bug fixes or features)

Type of Change

  • Bug fix
  • Feature
  • Other

Current Behavior

Currently customers can create logic app projects without a workspace as well as add new logic app projects and workflows by going to the Azure icon and clicking on the Logic Apps icon as shown. Custom code and rules engine projects have the logic app created as LogicApp and the functions under Function folder as default.
image

New Behavior

Customers will now be unable to create logic apps outside of a workspace. Customers will now be required to create a logic app workspace that holds their logic app project. Customers will now be able to add new logic app projects and workflows to their workspace by using the right click menu and selecting the appropriate option.

Custom code and rules engine projects now have a logic app name prompt instead of defaulting to LogicApp and the Functions folder is now removed and renamed to the name of the function the user created.
image
image

Impact of Change

  • This is a breaking change.

See the new behavior section.

Screenshots or Videos (if applicable)

… items. Removed ability to create logic app outside of a workspace. Refactored to utilize common methods and reduce duplication
@ccastrotrejo ccastrotrejo requested a review from Copilot December 30, 2024 20:55

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 6 out of 21 changed files in this pull request and generated no comments.

Files not reviewed (15)
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/createCodeProjectSteps/createLogicApp/ScriptProjectCreateStep.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/ProjectCodeCreateStepBase.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewProject/createProjectSteps/ExistingWorkspaceStep.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewProject/createNewProject.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/createNewCodeProject.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/SetWorkspaceName.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/SetWorkspaceSettings.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/WorkflowCodeProjectCreateStep.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/createCodeProjectSteps/createFunction/InvokeFunctionProjectSetup.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/OpenFolderStepCodeProject.ts: Evaluated as low risk
  • apps/vs-code-designer/src/main.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewProject/createProjectSteps/ProjectCreateStepBase.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/NewCodeProjectTypeStep.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewProject/createProjectSteps/ScriptProjectCreateStep.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/SetLogicAppNameStep.ts: Evaluated as low risk
lambrianmsft and others added 7 commits December 30, 2024 15:30
…nction method names inside a workspace, moved convert to workspace
…ions.json file, corrected path to create .vscode folder, and updated OpenFolder to not add the .code-workspace file to the workspace folders.
…schema type in isLogicAppProject. Improved prompt to only display the folders that contain a logic app project, not all folders in the workspace.
… logic apps with possibly the same workflow names
@ccastrotrejo ccastrotrejo requested a review from Copilot January 17, 2025 00:23

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 21 out of 36 changed files in this pull request and generated no comments.

Files not reviewed (15)
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/ProjectCodeCreateStepBase.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/createCodeProjectSteps/createLogicApp/ScriptProjectCreateStep.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/cloudToLocal.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/createCodeProjectSteps/createLogicApp/initLogicAppCodeProjectVScode/InitCodeProject.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/createCodeProjectSteps/createFunction/FunctionConfigFile.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewProject/createProjectSteps/ProjectCreateStepBase.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/createNewCodeProject.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/NewCodeProjectTypeStep.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/createCodeProjectSteps/createFunction/InvokeFunctionProjectSetup.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/WorkflowCodeProjectCreateStep.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/OpenFolderStepCodeProject.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewProject/createNewProject.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/SetLogicAppNameStep.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/SetWorkspaceName.ts: Evaluated as low risk
  • apps/vs-code-designer/src/app/commands/createNewCodeProject/createCodeProjectSteps/createFunction/setMethodName.ts: Evaluated as low risk
Copy link
Member

@ecfan ecfan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added feedback.

@ecfan
Copy link
Member

ecfan commented Jan 21, 2025

@lambrianmsft & @ccastrotrejo: When is the plan to make these changes public? I recently updated our doc about creating Standard workflows with Visual Studio Code. This PR makes substantial changes around behavior and UX options.

Thanks!

@ccastrotrejo
Copy link
Contributor

@lambrianmsft & @ccastrotrejo: When is the plan to make these changes public? I recently updated our doc about creating Standard workflows with Visual Studio Code. This PR makes substantial changes around behavior and UX options.

Thanks!

Hi @ecfan we are targeting the release of this update by the first two weeks of Feb

Copy link
Member

@ecfan ecfan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please let me know when you're done integrating the suggestions. Thanks!

lambrianmsft and others added 7 commits January 21, 2025 12:57
…deProjectBase/ConvertToWorkspace.ts

Co-authored-by: Esther Fan <[email protected]>
…eateCodeProjectSteps/createFunction/setMethodName.ts

Co-authored-by: Esther Fan <[email protected]>
…eateCodeProjectSteps/createFunction/setMethodName.ts

Co-authored-by: Esther Fan <[email protected]>
…eateCodeProjectSteps/createFunction/setMethodName.ts

Co-authored-by: Esther Fan <[email protected]>
…deProjectBase/ConvertToWorkspace.ts

Co-authored-by: Esther Fan <[email protected]>
…deProjectBase/ConvertToWorkspace.ts

Co-authored-by: Esther Fan <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants