ForgeOps

Custom ${ig.abbr} image

The default ${ig.abbr} configuration provided for use with ForgeOps deployments is an example and is not meant for use in production. Replace this configuration with your own routes before using ${ig.abbr} in your environment.

Refer to the ${ig.abbr} Deployment Guide for configuring routes.

To build a custom ${ig.abbr} image and deploy ${ig.abbr}:

  1. Verify that your ForgeOps deployment is up and running.

  2. Set up your environment to push to your Docker registry.

  3. Configure ${ig.abbr} by creating, modifying, or deleting rules in the /path/to/forgeops/docker/ig/config-profiles/my-profile/config/routes-service directory.

  4. Identify the repository to which you’ll push the Docker image. You’ll use this location in the next step to specify the --push-to argument’s value.

  5. Build a new ig image that includes your changes to ${ig.abbr} static configuration:

    $ cd /path/to/forgeops/bin
    $ ./forgeops build ig --config-profile my-profile --push-to my-repo
    Generating tags...
     - ig → ig:0a27bdfea
    Checking cache...
     - ig: Not found. Building
    Starting build...
    Found [minikube] context, using local docker daemon.
    Building [ig]...
    Sending build context to Docker daemon  55.81kB
    Step 1/5 : FROM gcr.io/forgerock-io/ig:2024.3.0
     --→ ba6f8150204e
    Step 2/5 : ARG CONFIG_PROFILE=cdk
    ...
    Step 5/5 : COPY --chown=forgerock:root . /var/ig
     --→ c173995218a3
    Successfully built c173995218a3
    Successfully tagged ig:0a27bdfea
    
    Updated the image_defaulter with your new image for ig: "ig:c173995218a3c55dbca76fff08588153db0693a51ff0904e6adee34b7163340a"
  6. Uninstall the previously deployed ${ig.abbr} from your ForgeOps deployment:

    1. Set the active namespace in your local Kubernetes context to the namespace in which you have deployed the ${ig.abbr}.

    2. Delete ${ig.abbr}:

      $ ./forgeops delete ig
      "cdk" platform detected in namespace: "my-namespace".
      Uninstalling component(s): ['ig'] from namespace: "my-namespace".
      OK to delete components? [Y/N] Y
      secret "openig-secrets-env" deleted
      service "ig" deleted
      deployment.apps "ig" deleted
  7. Deploy ${ig.abbr} using your customized ${ig.abbr} image:

    $ ./forgeops install ig --cdk
    Checking secret-agent operator and related CRDs: secret-agent CRD found in cluster.
    Checking ds-operator and related CRDs: ds-operator CRD found in cluster.
    
    Installing component(s): ['ig']
    
    secret/openig-secrets-env created
    service/ig created
    deployment.apps/ig created
    
    Enjoy your deployment!
  8. Run the kubectl get pods command to check the status of the ${ig.abbr} pod. Wait until the ${ig.abbr} pod is ready before proceeding to the next step.

  9. Verify that your ${ig.abbr} routes work.