Publish Your Changes Through CI/CD Pipelines

Follow these steps when your extension's CI/CD Pipeline setting is enabled. With this setting, your changes are deployed via CI/CD pipelines to your environment's Oracle Cloud Applications instance.

To successfully deploy your extension via a CI/CD pipeline:
  • You must be authorized to run the build job (if the job is private).

    Project owners can configure protection settings for build jobs so that only authorized project members can run the jobs. If you can't run a build job, ask the project owner or an administrator to add you to the build job's list of authorized users. If you're the project owner, check the job's protection settings. See Configure Job Protection Settings in Administering Visual Builder Studio.

    If you can't access a project, use the Request Membership option in the project's Update project menu on the Organization page to request access. A project owner can approve your membership so that you can access the project, and authorize you to run build jobs. For more, see Request Membership in a Project You Can't Access in Using Visual Builder Studio.

  • The pipeline's deployment job (gitRepoName-Deploy) must be configured to deploy to the Oracle Cloud Applications instance in your environment.
    • If your deployment job uses Basic authentication, credentials of a user who has permissions to connect and deploy to the Oracle Cloud Applications instance must be provided. The credentials must be Oracle Cloud Application credentials, as opposed to Visual Builder Studio or SSO credentials. If the project owner hasn't provided this information, you'll be prompted to provide it when you click Publish. If your credentials don't allow you to deploy to the Oracle Cloud Applications instance, talk to the project owner or an administrator to get credentials that you can use.
    • If the deployment job is set up for OAuth, authorization must be provided for OAuth tokens to be created with the credentials of a user who has permissions to connect and deploy to the Oracle Cloud Applications instance. You won't be able to publish without this authorization. It is recommended that you authorize your connection during initial job configuration—though you'll be prompted to authorize missing or expired OAuth tokens when you click Publish.

See Optional Administrator Tasks in Administering Visual Builder Studio for more about setting up projects to publish extensions.

When you're ready to publish your extension:

  1. Click Publish in the header:
    Description of designer-publish-changes-action.png follows
    Description of the illustration designer-publish-changes-action.png

    Note:

    If Publish isn't enabled, you're likely using a scratch repository instead of a real Git repo. See Push a Scratch Repository to a Remote Repository to create a remote repo.

    The Publish operation combines Git operations (commit, push, merge) to merge the changes in your local repository branch into the main branch. Your screen should now look something like this:
    Description of publishchanges.png follows
    Description of the illustration publishchanges.png

  2. If you land on the Merge Now tab, enter a comment in the Commit Message area to describe your changes and commit them. A commit groups the changed files and provides a description to identify the group.

    Optionally, click the Merge After Review tab to get someone to review your changes via a merge request. To do this, enter a comment summarizing your changes, then specify other details such as reviewers and linked issues as needed. You can also enter a description of all your changes (not just this commit) in the Merge Request Description field, using the convention established for the template (Markdown, Confluence, or Textile). If you need help, use the link to the associated reference.

    Note:

    If you only see the option to commit and merge your changes, that means the project owner or an administrator has set things up so that all changes must always be reviewed and approved via a merge request before they are merged to the main branch. Additionally, the CI/CD pipeline may also be disabled. In this case, summarize your changes in the Publish dialog, add at least one reviewer (if no one is specified), and specify the related issue in order to create a merge request. (Once the request is created, you can look for it on the Merge Requests page. For details on how to work with merge requests, see Review Source Code with Merge Requests in Using Visual Builder Studio.)
  3. Click Publish.

    Tip:

    Use the details in the Publish dialog to take note of the environment that your changes will be published to, which is typically the deployment target specified in the pipeline that's enabled for the main branch.
  4. If the deployment job in your CI/CD pipeline is missing the credentials required to connect and deploy to your environment's Oracle Cloud Applications instance, you'll be prompted to complete some additional steps:
    • If you see a message about missing deployment credentials, it means the deployment job uses Basic authentication and requires the credentials of a user who has permissions to access the target Oracle Cloud Applications instance. Enter valid credentials and click Add Credentials and Continue.
    • If you see a message that authorization is required, it means the deployment job is set up for OAuth and requires authentication for the OAuth connection to the target Oracle Cloud Applications instance:
      1. Click OK.
      2. If prompted, enter the credentials of a user who can access the target Oracle Cloud Applications instance.

        If you land on the Authorize Jobs page, your Deployment job may have missing or expired OAuth tokens. Click Authorize, enter the credentials of a user who can access the target Oracle Cloud Applications instance, and click Authorize.

      3. Once authorization is complete, click Publish again in your workspace's Publish dialog.

    You'll now see the Git commands that are automatically performed for you as part of the publishing process:
    Description of designer-publish-changes-merge.png follows
    Description of the illustration designer-publish-changes-merge.png

Once you merge a branch into the main branch, you can no longer use it (or your local copy of it). A new branch is created automatically for you when you publish your changes, which you can use to make additional changes. Or you can create your own branch, if you prefer.

You should now see notifications in the bottom right corner of your workspace, which indicate the progress of your extension's package and deploy jobs. (If you miss these notifications, look for them under Notifications in the header). If a build job fails, you'll see something similar to this message and will need to take action to resolve the issue:
Description of notification-build.png follows
Description of the illustration notification-build.png

Your project is probably set up so that each time changes are merged into the main branch, the extension artifacts are built from the repository and automatically deployed to the Oracle Cloud Application's Development environment, or to a Test environment for further tests. When ready, you can deploy your extension to other Oracle Cloud Applications instances as well, either by modifying your project's build pipeline or by using the Manage Extension Lifecycle page.

IMPORTANT: If your extension contains configurations for an Oracle Cloud Application, users of that application will have to sign out of the app, then sign back in again to be certain they're seeing the latest.