diff --git a/modules/ROOT/nav.adoc b/modules/ROOT/nav.adoc index 7829df9b5..6c5736387 100644 --- a/modules/ROOT/nav.adoc +++ b/modules/ROOT/nav.adoc @@ -76,6 +76,7 @@ *** xref:int-configure-components-check-connection.adoc[] *** xref:int-configure-components-open-from-xml.adoc[] ** xref:int-create-secure-configs.adoc[] +** xref:int-global-config-elements.adoc[] ** xref:int-trigger-flows.adoc[] ** xref:int-manage-custom-metadata.adoc[] ** xref:int-debug-mule-apps.adoc[] diff --git a/modules/ROOT/pages/int-configure-api-autodiscovery-local.adoc b/modules/ROOT/pages/int-configure-api-autodiscovery-local.adoc index c43218d0a..d81d07045 100644 --- a/modules/ROOT/pages/int-configure-api-autodiscovery-local.adoc +++ b/modules/ROOT/pages/int-configure-api-autodiscovery-local.adoc @@ -60,3 +60,8 @@ include::partial$acb-reusable-steps.adoc[tags="mule-settings-nav-options"] . Append the client ID and client secret arguments to the end of the existing arguments. Append the placeholder values with your client ID and client secret. + +== See Also + +* xref:int-global-config-elements.adoc[] +* xref:int-autodiscovery-config.adoc[] diff --git a/modules/ROOT/pages/int-create-secure-configs.adoc b/modules/ROOT/pages/int-create-secure-configs.adoc index 290d5b723..807d2e4ed 100644 --- a/modules/ROOT/pages/int-create-secure-configs.adoc +++ b/modules/ROOT/pages/int-create-secure-configs.adoc @@ -671,4 +671,5 @@ You can create properties or change the value of existing properties, for exampl == See Also +* xref:int-global-config-elements.adoc[] * xref:mule-runtime::secure-configuration-properties.adoc[] diff --git a/modules/ROOT/pages/int-global-config-elements.adoc b/modules/ROOT/pages/int-global-config-elements.adoc new file mode 100644 index 000000000..8c1d20674 --- /dev/null +++ b/modules/ROOT/pages/int-global-config-elements.adoc @@ -0,0 +1,180 @@ += Managing Global Configuration Elements +:page-deployment-options: cloud-ide, desktop-ide + +include::reuse::partial$beta-banner.adoc[tag="anypoint-code-builder"] + +Use the Global Configurations view to manage the configurations your Mule application depends on, including HTTP Listener configurations, database connections, properties files, TLS contexts, and error handlers. + +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> + +== Before You Begin + +* xref:start-acb.adoc[Set up and access the web or desktop IDE]. +* xref:int-create-integrations.adoc[Create an integration project]. + +[[open-global-elements-panel]] +== Open the Global Elements Panel + +Access the Global Elements panel from *Project Properties* to view and manage the global configurations defined in your project. + +To open it: + +. Use one of the following options: ++ +* In the canvas toolbar, click the *Manage Global Elements* icon to open *Project Properties* with the *Global Elements* tab already selected. +* In the Explorer, right-click your project and select *Project Properties*, then select *Global Elements* from the left menu. + +The panel shows a searchable table with the *Type*, *Name*, and *Notes* for each element. Use the *Selected File* dropdown to select a configuration file and view its elements. The table updates in real time as you make changes. + +[[add-global-config]] +== Add a Global Configuration + +You can add global configurations through MuleSoft Vibes using natural language. The element is created with the correct structure and placed in the right file automatically. + +From the Global Elements panel, use the MuleSoft Vibes chat to describe what you need, for example: + +* _"Add a Salesforce connector config"_ +* _"Register a new properties file"_ +* _"Create an HTTP Listener global config on port 8081"_ + +For more details on using Vibes to manage global elements, see <>. + +[[edit-global-config]] +== Edit a Global Configuration + +To edit an existing element, use one of the following methods: + +* *Form editor* — For connector configurations like HTTP Listener or Salesforce, click the *More actions* (*...*) menu next to the element and select *Edit*. A form-driven editor opens with field validation so you can update connection details visually. +* *Source editor* — Click *More actions* (*...*) > *Go to Source* to jump directly to the element's location in the XML file and edit it in context. +* *MuleSoft Vibes* — Describe your change conversationally and Vibes applies it for you. + +[[remove-global-config]] +== Remove a Global Configuration + +To remove a global configuration element, use MuleSoft Vibes. For example: + +* _"Remove the Salesforce connector config"_ +* _"Delete the HTTP Listener global config"_ + +Before removing an element, Vibes identifies any flows that reference it and warns you of the impact before making any changes. + +[[manage-properties-files]] +== Manage Configuration Properties Files + +When you create a new project, ACB automatically generates a `global-configs.xml` file for storing configuration properties separately from flow definitions. If you open a project migrated from Studio, ACB preserves the existing project structure. + +=== Register a Properties File + +To register a `.yaml` or `.properties` file as a configuration source, use MuleSoft Vibes. For example: + +* _"Register a new properties file"_ +* _"Add config.yaml as a configuration properties file"_ + +ACB adds a `` element to your global config XML and the file appears in the panel under *Configuration Properties*. + +=== Add Inline Global Properties + +To add `` key-value pairs, use MuleSoft Vibes. For example: + +* _"Add a global property named env with value dev"_ + +All inline properties are stored in `global-configs.xml` instead of individual application XML files. + +[[multi-environment]] +== Set Up Multi-Environment Configuration + +ACB supports the `${env}.yaml` file pattern for environment-specific property files. + +If your project contains files such as `dev.yaml`, `qa.yaml`, and `prod.yaml`, they appear in the *Environments* section of the Global Elements panel. + +To set the default environment, use MuleSoft Vibes. For example: + +* _"Set the default environment to dev"_ +* _"Set up multi-environment configuration for dev, QA, and prod"_ + +Vibes adds a corresponding `` element to your global configuration file, for example: ``. + +Use *Preview Mode* to switch the active environment and verify that property placeholders resolve correctly before you deploy. + +[[secure-properties]] +== Work with Secure Properties + +ACB supports the Mule Secure Properties module: + +* Generate encrypted property values from the IDE. +* ACB warns you when a properties file contains unencrypted credentials. + +For information about encrypting values and referencing them in your Mule application, see xref:int-create-secure-configs.adoc[]. + +[[global-element-types]] +== Global Element Types + +In addition to connector configurations, the Global Elements panel supports the following component configuration types: + +[%header,cols="20a,60a"] +|=== +| Component | What It Does + +| *Global Error Handler* +| Set any error handler as the application-wide default. You can also reference handlers from imported projects for consistent exception management across teams. + +| *API AutoDiscovery* +| Configure your Mule application for API Manager auto-discovery at deployment time. Select from the flows defined in your application when configuring the auto-discovery settings. + +| *TLS Context* +| Set up Trust Store and Key Store configurations once, then reference them from any connector that supports TLS. + +| *Import Project Reference* +| Import a JAR containing a shared Mule project. Use its flows, error handlers, and connection configurations. ACB handles POM dependency management. + +| *Caching Strategy & Object Store* +| Define centralized caching strategies and object stores that can be referenced across all flows in the project. + +|=== + +For API AutoDiscovery configuration details, see xref:int-configure-api-autodiscovery-local.adoc[] and xref:int-autodiscovery-config.adoc[]. + +[[vibes-manage-global-configs]] +== Use MuleSoft Vibes to Manage Global Configurations + +You can use MuleSoft Vibes to create and update global elements by using natural language prompts. + +=== Automatic Generation + +When Vibes generates a flow that uses a connector, it also generates the corresponding global configuration element. Credentials are stored as property placeholders, and a sample properties file is created for the generated configuration. + +=== Natural Language Examples + +You can ask Vibes things like: + +* _"Create an HTTP Listener global config on port 8081"_ +* _"Set up multi-environment configuration for dev, QA, and prod"_ +* _"Centralize all global configs into the global-config.xml file"_ +* _"What global elements are defined in this project?"_ +* _"Validate my property placeholders"_ + +=== Centralize Configurations from Studio Projects + +If your project has global elements scattered across multiple config files (common in projects migrated from Studio), ask Vibes to consolidate them: + +_"Move all global configs into global-config.xml"_ + +Vibes identifies every global element across your config files, moves them to `global-config.xml`, and updates all flow file references automatically. + +The `manage-global-configurations` skill powers these operations. For more on skills in MuleSoft Vibes, see xref:vibes-skills.adoc[]. + +== See Also + +* xref:int-configure-components.adoc[] +* xref:int-create-secure-configs.adoc[] +* xref:int-configure-api-autodiscovery-local.adoc[] +* xref:int-autodiscovery-config.adoc[] +* xref:mulesoft-vibes.adoc[] diff --git a/modules/ROOT/pages/vibes-skills.adoc b/modules/ROOT/pages/vibes-skills.adoc index efddd7a8e..ebdd30749 100644 --- a/modules/ROOT/pages/vibes-skills.adoc +++ b/modules/ROOT/pages/vibes-skills.adoc @@ -92,6 +92,9 @@ The default MuleSoft skills set includes: | `create-project-template` | Generate MuleSoft projects from Exchange templates or from scratch. + +| `manage-global-configurations` +| Create, edit, delete, list, validate, and consolidate global configuration elements in a Mule project. Covers connector configs, TLS Context, Object Store, Caching Strategy, Global Error Handler, API AutoDiscovery, Import Project Reference, properties files, global-property elements, and multi-environment setup. |=== // [[manual-skill-install-paths]]