# Factory Proxy Configuration Update

Each Factory Proxy instance has its own configuration that you can set up according to your needs. You can find out how to set up the initial shape of your configuration, which you can modify anytime to fit your requirements, on the onboarding page. It shows an example of modifying the configuration to run a different version of a Factory Proxy module.

On this page, you will find a procedure on how to update the secrets being used in your Factory Proxy installation.

# Configuration Update Procedure

The reference architecture of Factory Proxy is based on containerization - each Factory Proxy module is implemented as a container image that is instantiated as a container on a target machine. Perhaps you would like to update some of the images in your modules and run the latest version on the Factory Proxy machine. Additionally, the system modules are periodically receiving updates, and it makes sense to allow you to run the latest version on your Factory Proxy machine. This article provides you with the procedure that you should follow to have the latest version of modules running on your machine.

# Image

Assuming you already have a Factory Proxy machine running, let's see how to bring any module to a newer or different version.

First of all, you need to know what the target image name and tag are. If we're talking about one of the system modules, factory-proxy or factory-broker, the information is published by the ABB Ability™. If the module in question is one of your custom modules, it's up to you to obtain the image name and tag.

# Configuration Update

You need to update the configuration of your Factory Proxy instance. The procedure is the same, whether it's the system or your custom module. Plus You can use the Certificate Manager Portal or the Certificate Manager API. Let's have a look at the Certificate Manager Portal path:

  1. Navigate to the Certificate Manager Portal in your web browser and sign in:

    Certificate Manager PortalDashboard

  2. Go to Factory proxies and select your instance from the list.

  3. Select Edit.

    Edit button

  4. Modify the Configuration JSON according to your requirements and select Save.
    Below, you can see an example of a custom module image being updated to the "v2" tag:

    Factory Proxy configuration

# Restart factory-proxy Module

After updating the configuration in the Portal/API, you need to restart the Factory Proxy machine. After startup, new module containers will be created.

Each time factory-proxy starts, it fetches the latest configuration from the Certificate Manager Service and applies it. If you updated any of the images in the configuration, you should see the new container(s) being instantiated.

# Secrets Update Procedure

The Factory Proxy framework uses two user-provided credential pairs:

  • Container Registry credentials
  • Azure Active Directory App registration - clientId and a secret

Both of these may be updated during the lifetime of a Factory Proxy machine for various reasons: policy of secrets expired, an emergency caused by a credential leak, etc.

# Updating Container Registry Credentials

In case you want to update the container registry's credentials, you need to do the following:

  1. Update the secrets of your Factory Proxy instance in the Certificate Manager Service (e.g. via the Certificate Manager Portal).
  2. Invoke abb-factory-proxy-setup updateDRcredential on your Factory Proxy machine. You will be asked to provide the new credentials.

# Updating App Registration Credentials

Azure Active Directory allows you to set up an app secret with a maximum lifetime of two years. When the secret expires (preferably much sooner than that), create a new one. By doing this, only the value of the app secret changes. However, you will need to provide both the application ID and secret in the procedure below. Step 1 is only necessary if you want to completely change the application registration used by the Factory Proxy (a new pair of app ID and secret).

  1. (Optional) Update the value of your applicationId in your Factory Proxy instance in the Certificate Manager Service (e.g. via the Certificate Manager Portal).
  2. Invoke abb-factory-proxy-setup updateCMScredential on your Factory Proxy machine. You will be asked to provide a new pair of applicationId/clientId and secret.

# Summary

We've gone through both procedures of updating your configuration and secrets. Although we covered only one piece of configuration data that you can update, you can follow these steps when updating any other value in the Factory Proxy configuration.

Author: Marcin Jahn
Last updated: 9/15/2021, 6:35:01 AM
Feedback