Publish your custom extension
Your extension runs in Fusion only after it is built, deployed to Adobe, and approved for your organization. The procedures on this page show how to publish your extension and how to verify the result.
This information is adapted from Adobe’s official documentation and applies specifically to Workfront Fusion. For the general Adobe information, see UI Extension development flow and UI Extensions Management in the Adobe documentation.
Workspaces
Every App Builder project has a Stage and a Production workspace. Think of them as environments:
- Stage is for development and testing. You deploy here while you iterate. No approval is required, and the result is visible only through the Stage testing switch described below (or local preview).
- Production is for releasing to everyone. After you deploy to Production, you submit an approval request, and once it is approved the extension is registered in the Adobe App Registry and shown to your whole organization.
For more information, see:
- Set up UI Extension tools and account
- How to Get Access in the Adobe documentation.
By default, Fusion shows only published extensions. These are extensions you have deployed to the Production workspace and then submitted for approval. This is the safe default, so a work-in-progress deploy never appears to your whole organization by accident.
A deploy to the Stage workspace is not published, so it does not appear in Fusion on its own. You have two ways to try an extension before you publish it:
- Preview it locally with
aio app run(see Local preview of UI extensions in the Adobe documentation). Nothing is deployed, and only you see it. - Load it from Stage inside Fusion by turning on a per-user testing switch in your Fusion profile. This is described in Test a Stage build in Fusion in this article.
Test a Stage build in Fusion
Use this flow to see a Stage deploy inside Fusion before you publish it.
Step 1: Select the Stage workspace
aio console where # shows current org / project / workspace
aio console workspace select # choose Stage
Step 2: Build
aio app build
This compiles your front-end and runs the metadata hook (which generates app-metadata.json). Fix any reported errors before continuing.
Step 3: Deploy
aio app deploy
deploy does two things:
- Hosts your UI on Adobe’s content delivery network, at a URL like
https://<project>-stage.adobeio-static.net. The CLI prints this extension endpoint URL when it finishes. This is the URL Fusion loads in its iframe. - Registers your extension’s endpoints for the extension point (
fusion/nav-organization/1) in the Stage workspace.
For more information, see Extension point does not exist in the troubleshooting article.
Step 4: Turn on Stage testing in your Fusion profile
Fusion loads Stage extensions only when you opt in, per user:
-
Sign in to Fusion with an account in the same organization you deployed to.
-
Open the user avatar menu in the top corner and go to Product Settings > Fusion Profile > Preferences.
-
Turn on the Stage extensions switch.
Fusion prompts you to reload.
-
Confirm the reload.
After the reload, Fusion loads extensions from the Stage workspace instead of the published set, and labels each one (Stage) in the navigation so you can tell them apart.
This switch is a personal testing setting stored in your browser, not an organization setting. Turn it off (and reload) to go back to the published extensions. Because it is stored locally, it does not follow you to another browser or machine.
Step 5: Verify in Fusion
-
Open the section that matches your extension point:
fusion/nav-organization/1→ the Organization area of the left navigation.fusion/nav-team/1→ the Team area (select a team first).
A button with the title you set in
getWidget()appears, marked (Stage). -
Click the button that appeared.
Your UI loads and receives the Fusion context.
If the button does not appear or the panel shows an error, see Troubleshooting.
Release on Production
When your extension works on Stage and you are ready for all users:
Step 1: Switch to the Production workspace
aio console workspace select # choose Production
When the CLI prompts about the .env file, select Merge so you keep your environment variables.
Step 2: Build and deploy to Production
aio app build
aio app deploy
Step 3: Submit the approval request
Publishing is an approval request submitted from the Production workspace:
- Open the Adobe Developer Console, select your Organization, open your Project, and switch to the Production workspace.
- Submit your app for approval / publishing (this requires the System Administrator role).
- After approval, your extension is added to the Adobe App Registry and becomes available across Adobe Experience Cloud, including Fusion, for your organization.
For detailed instructions, see UI Extensions Management in the Adobe Developer documentation.
Status and updates
A few behaviors are worth knowing so you can tell “still working on it” apart from “something is wrong”:
-
Deployed to Production is not the same as visible.
aio app deployto Production uploads your app, but it does not make the extension appear. It appears only after the approval request is submitted and approved. If you deployed to Production and still do not see it in Fusion, the usual reason is that it is not approved yet. -
Code-only updates do not need a new approval. If your extension is already published and you only change its code (the UI or the runtime actions), redeploy to the same URL with:
code language-sh aio app deploy --force-deployUsers get the new version the next time they open the extension. There is nothing for them to install. You only need to submit a new approval request when you change the registration itself, for example adding a new extension point or changing what
getWidget()advertises. -
A revoked or retracted extension disappears. If an extension is revoked by you or retracted, it stops appearing in Fusion with no error message. If a previously working extension vanishes for everyone, check whether it was revoked before searching for a code problem.
Remove (revoke) an extension
Removing a published extension is done by revoking it in Adobe Exchange:
- Sign in to Adobe Exchange.
- Go to Manage > App Builder Apps.
- Select Revoke next to the extension you want to remove, and confirm.
After revoking, the extension shows a revoked status in the Extension Manager and no longer appears in Fusion. To remove it completely, delete the project in the Developer Console. A project cannot be deleted until its extension is revoked.
For a Stage-only test deployment, you can remove the deployment with:
aio app undeploy
Additional resources
The following resources are available in the Adobe documentation: