Maximo Open Forum

 View Only
Expand all | Collapse all

Legacy Add On Installs in MAS9

  • 1.  Legacy Add On Installs in MAS9

    Posted 03-18-2025 10:24

    We are exploring the options for an Add-on we developed. The Add was developed based on the old MaximoDev CLI (maximodev-cli

    npm remove preview
    maximodev-cli
    Maximo developer command line tools. Latest version: 1.0.12, last published: 6 years ago. Start using maximodev-cli in your project by running `npm i maximodev-cli`. There are no other projects in the npm registry using maximodev-cli.
    View this on npm >

    ) Once our application is installed which consists of application xmls and DBC scripts and JSPs the DB Upgrade is performed and the maximo ear file is built and the add on is ready. We now need a mechanism of deploying this in MAS9 which is containerized and we don't have an SMP folder to drop our artifacts there.Are there other add on providers if so how did you get to providing the add on in the MAS world.BTW we have managed to install a MAS9 on SNO-Azure at this point


    #Administration
    #Architecture
    #Customizations
    #MaximoApplicationSuite

    ------------------------------
    Appu nair
    APPECM
    ------------------------------


  • 2.  RE: Legacy Add On Installs in MAS9

    Posted 03-19-2025 09:18

    We support a customization archive in Manage that will get layered over the install. https://www.ibm.com/docs/en/masv-and-l/maximo-manage/continuous-delivery?topic=SSLPL8_cd/com.ibm.mam.doc/manage_deploy/t_mas_man_customizing_the_application.htm

    You may be required to make changes to this to support MAS. We are using Java 11 in Manage currently so it should be recompiled on Java 11. And we will be updating it to Java 17 in the 9.1 release towards the end of June. There are also some differences in the framework like if you customized the titlebar.jsp, that JSP is no longer utilized. 



    ------------------------------
    Steven Shull
    IBM
    ------------------------------



  • 3.  RE: Legacy Add On Installs in MAS9

    Posted 03-20-2025 01:14

    Hi @Appu nair,

    For your information, https://github.com/nishi2go/masmanagedev-cli replaces the old maximodev-cli. It's not available in npm, but you can install it directly.

    npm install git+https://github.com/nishi2go/masmanagedev-cli.git -g


    ------------------------------
    Maycon Belfort
    BPD Zenith
    IBM Champion 2025
    ------------------------------



  • 4.  RE: Legacy Add On Installs in MAS9

    Posted 03-28-2025 12:05

    I will take a step back and ask as at this point I have access to a Manage instance. The documentation says one should have access to the Maximo Development Home Directory? In the old environment, it was easy because one knew where IBM/SMP was; in this case, I do not know where the container files are. Am I missing a starter step here, or is there any information on getting to develop in Manage like a complete noob. To give the forum users my context I developed the original product like this,I had Maximo on a Server,I installed Eclipse on that machine,I downloaded maximo.ear and a lot of other dependencies on to that project and developed the product.Is there a parallel in the new Manage world?



    ------------------------------
    Appu nair
    APPECM
    ------------------------------



  • 5.  RE: Legacy Add On Installs in MAS9

    Posted 03-31-2025 16:14
    Edited by Appu nair 04-01-2025 10:37

    How does one get the Maximo files from the Maximo Manage instance, or what do they fill in for that aspect?



    I did find it with some research(OpenLens is a great tool to get to the cluster)

    oc exec -it demo-demo-manage-maxinst-***-*****  -n mas-demo-manage -- bash

    mas-demo-manage is the namespace of the pod under which Maximo is running, or in old Maximo parlance, the administrative workstation.

    What I am doing is invoking a bash shell into the Maximo manage instance pod 

    Maximo Application Suite pod details

    Maximo Application Suite pod details

    Ibm remove preview
    Maximo Application Suite pod details
    Pods are used for IBM Maximo Application Suite and IBM Maximo Manage.
    View this on Ibm >

     
    ------------------------------
    Appu nair
    APPECM
    ------------------------------



  • 6.  RE: Legacy Add On Installs in MAS9

    Posted 04-01-2025 15:30
    Hi Appu,

    Try this command. You'll need the OpenShift CLI (oc) installed in your system. 






  • 7.  RE: Legacy Add On Installs in MAS9

    Posted 04-02-2025 10:22
    Edited by Appu nair 04-02-2025 17:53

    I tried doing that. In this case, I am using an RHEL workstation as my development machine.I do oc login, which I think is to go to my cluster and do a.I am in opt/mas9 at the time, so export would put that at the time . The next command in my instance is masmanagedev-cli init home \
      --instance demo \
      --workspace demo \
      --tag latest this results in this error against copied here info: Using internal registry hostname image-registry.openshift-image-registry.svc:5000
    Saved credentials for image-registry.openshift-image-registry.svc:5000 into /run/user/1000/containers/auth.json
    WARNING! Using --password via the CLI is insecure. Use --password-stdin.
    Error response from daemon: Get "https://registry-1.docker.io/v2/": unauthorized: incorrect username or password
    invalid reference format
    [ err]: Could not pull the image from /run/user/1000/containers/auth.json/mas-demo-manage/demo-demo-admin:latest

    I know docker is good because I used docker on this machine to pull the MAS images . I have RCP'd the maximo home locally as well so is init home command pulling the /opt/IBM/SMP at this point?  Do I need to have java loaded on my RHE machine to do the addon work?

    oc login --token=sha256~ --server=https://api.sno-cluster.myserver.com:6443

    if it helps I can also do this

    docker login -u kubeadmin -p $(oc whoami -t) default-route-openshift-image-registry.apps.sno-cluster.myserver.com

    I get a Login Suceeded

    ------------------------------
    Appu nair
    APPECM
    ------------------------------



  • 8.  RE: Legacy Add On Installs in MAS9

    Posted 04-03-2025 17:38

    You need to enable your internal registry to be accessible from outside the cluster. 

    After you log in using the oc CLI, you can run:

    oc patch configs.imageregistry.operator.openshift.io/cluster --patch '{"spec":{"defaultRoute":true}}' --type=merge

    If you want to restrict the external access to your registry, you can rerun it with defaultRoute false.



    ------------------------------
    Maycon Belfort
    BPD Zenith
    IBM Champion 2025
    ------------------------------



  • 9.  RE: Legacy Add On Installs in MAS9

    Posted 04-03-2025 17:49
    Edited by Appu nair 04-03-2025 18:02

    I have done that and I still get that error

    tomorrow moving onto windows and docker for windows and see if that is any better



    ------------------------------
    Appu nair
    APPECM
    ------------------------------



  • 10.  RE: Legacy Add On Installs in MAS9

    Posted 04-03-2025 18:49

    Can you try this?

    masmanagedev-cli init home \
      --instance demo \
      --workspace demo \
      --tag latest \

       --insecure true



    ------------------------------
    Maycon Belfort
    BPD Zenith
    IBM Champion 2025
    ------------------------------



  • 11.  RE: Legacy Add On Installs in MAS9

    Posted 04-03-2025 19:07
    Edited by Appu nair 04-03-2025 19:41

    I have done that as well, I have been feeding the cli instructions to ChatGPT for hours on end so almost everything logically has been done.If it works for you then perhaps it's my azure cluster not liking something .If you all have been doing development along these lines and it is working perhaps its pilot error or cluster differences

    I only have kubeadmin as the user is that a bad idea?

    I find this in auth.json in /run/user/1000/containers I changed to myserver since this is a public board and in reality it is pointed to our azure cluster.I ask because ChatGPT thinks it is wrong

    {
        "auths": {
            "default-route-openshift-image-registry.apps.sno-cluster.myserver.com": {
                "auth": "dX**********************************************************************************lQQ=="
            }
        }
    }


    I also realized that the auth is actually a base64 token that is against the cluster---$(oc whoami -t) this happens to be written whenever I do a masmanagedev-cli init home command.Even if I delete auth.json it gets recreated which leads me to belive that the regular docker daemon, which success is actually using another JSON file here /home/mas9admin/.docker/config.json perhaps that is successful...

    ------------------------------
    Appu nair
    APPECM
    ------------------------------



  • 12.  RE: Legacy Add On Installs in MAS9

    Posted 04-03-2025 19:47

    That command is only a helper. You can try the process manually.

    Pull the image following these steps. https://www.ibm.com/docs/en/masv-and-l/maximo-manage/cd?topic=environment-pulling-tagging-base-images

    Run the maxinst image from your local.

    Extract the SMP folder

    docker cp IMAGE:/opt/IBM/SMP/maximo/ YOUR_DEST_FOLDER



    ------------------------------
    Maycon Belfort
    BPD Zenith
    IBM Champion 2025
    ------------------------------



  • 13.  RE: Legacy Add On Installs in MAS9

    Posted 04-07-2025 11:16
    Edited by Appu nair 04-08-2025 09:33

    Thanks for your reply at this point I am have tagged both images using podman and I am at this line https://www.ibm.com/docs/en/masv-and-l/maximo-manage/cd?topic=environment-building-deploying-development-images it says to edit the DB2 information from ENV MXE_DB_URL='jdbc:db2://9.30.213.13:50000/bludb'  what is one putting there, since I am using a ahelper RHEL box to do my work would I put localhost or the IP address of the Unix box here? I assume WLP is Webserver Liberty 

    On second thought, it might be the DB2 server that exists in my cluster or I the maximo docker container downloading a DB2 instance with it that cant be true:)



    ------------------------------
    Appu nair
    APPECM
    ------------------------------



  • 14.  RE: Legacy Add On Installs in MAS9

    Posted 04-08-2025 11:11

    Something is brewing, I was able to start a podman image :) doing preliminaries like podman cp d37a02b072c2:/opt/IBM/SMP/maximo/applications/maximo/properties/maximo.properties ./maximo.properties This is very new to me podman/docker etc .I think IBM expects a well-versed docker/podman/manage person to do this, which I am not.



    ------------------------------
    Appu nair
    APPECM
    ------------------------------



  • 15.  RE: Legacy Add On Installs in MAS9

    Posted 04-08-2025 19:40
    Hi Appu,

    If you only want to extract the SMP folder, you don't need to build the maximo-all image. Those steps are to run Manage locally. 

    If you pull the admin image, you can start the container and connect to it:
    podman run -it --name manage-admin LOCALIMAGE:TAG
    podman exec -it CONTAINERID bash 

    Once inside the container, you compress the /opt/IBM/SMP/maximo folder. In another terminal, you copy the file from the container.

    podman cp CONTAINERID:/opt/IBM/SMP/maximo.zip LOCALPATH/maximo.zip

    MAS has new technology underneath the application, which we all will inevitably need to adapt to now. Writing down those commands makes things easier when we need to reuse them later.

    Kind regards,
    Maycon Belfort





  • 16.  RE: Legacy Add On Installs in MAS9

    Posted 04-09-2025 09:04

    Some more questions, if you have time, i login to Maximo as 

    https://app.manage.workspace.apps.sno-cluster.myazuredns.com/maximo/oslc/graphite/manage-shell/index.html#/main

    So I guess /maximo is the web server entry point

    When you run Maximo locally, albeit probably connecting to the DB2 pod in the cluster

    Is Maximo going to respond to the container IP address

    https://CONTAINERIPADDRESS/maximo/  or not because as I understand theres an authentication layer in the real application fronted by mongodb and what not?

    I think I will have to understand how to run Maximo locally,I am learning podman/docker, AFAIK can at this point.



    ------------------------------
    Appu nair
    APPECM
    ------------------------------



  • 17.  RE: Legacy Add On Installs in MAS9

    Posted 04-09-2025 23:04
    Following the IBM docs and using the -p 9080:80/tcp param when running
    the container, you can use http://localhost/maximo. Otherwise, it will
    be http://localhost:9080/maximo.

    Manage won't store the user credentials on the database anymore but in
    MongoDB. I remember seeing a community post regarding this; you may
    need to search here or TechXchange for instructions on how to solve
    this.

    Connecting on DB2 running inside the cluster will be very challenging,
    as you need to port-forward the pod port to connect to the database.
    Connecting from podman pod into this port forward may not work; I
    haven't tried this.

    Otherwise, you can try using the DB2 community docker image
    (https://hub.docker.com/r/ibmcom/db2) or running a standalone VM with
    DB2 to create a local database and restore your DB2 backup.

    Kind regards,
    Maycon Belfort




  • 18.  RE: Legacy Add On Installs in MAS9

    Posted 04-10-2025 12:18
    Edited by Appu nair 04-10-2025 15:16

    Hi Maycon,

    Can you confirm if the managedev-cli works for MAS9 because I see it all having 4 years old. Could MAS8 be relying on an old Java.The fact is, I have gradle 7.6.4, which corresponds to java 11 openjdk version "11.0.25" 2024-10-15
    IBM Semeru Runtime Open Edition 11.0.25.0 (build 11.0.25+9) However when I run the  masmanagedev-cli create addon it will download old gradle into my /~/.gradle/wrapper/dists/gradle-4.2-all/ and use that and fail. I am trying to understand why or where it tries to grab gradle and see if I can change it. It will be great help if you think you can run a sample app and see if it works.I tried to put a note in github issues but it does not save there and I am not too familiar with github

    Update: on searching on github(GitHub - nishi2go/masmanagedev-cli: Command line tools for maximo as a npm package

    GitHub remove preview
    GitHub - nishi2go/masmanagedev-cli: Command line tools for maximo as a npm package
    Command line tools for maximo as a npm package. Contribute to nishi2go/masmanagedev-cli development by creating an account on GitHub.
    View this on GitHub >

    ) for gradle I found the gradle-wrapper.properties having a string saying distributionUrl=https\://services.gradle.org/distributions/gradle-4.2-all.zip this is how I think it retreives the old gradle I changed it to a newer gradle line in my local project . Now the original error is gone but at least it I trying to compile .It failed on line 36  debugging that 

    stacktrace:

    Unzipping /home/linuxuser/.gradle/wrapper/dists/gradle-7.6.4-all/69w292fwwbbevpookp42lrbux/gradle-7.6.4-all.zip to /home/linuxuser/.gradle/wrapper/dists/gradle-7.6.4-all/69w292fwwbbevpookp42lrbux
    Set executable permissions for: /home/linuxuser/.gradle/wrapper/dists/gradle-7.6.4-all/69w292fwwbbevpookp42lrbux/gradle-7.6.4/bin/gradle

    > Configure project :
    Maximo External Dir for bpaaa_prod1 is /opt/maximo_binaries/SMP/maximo
    Maximo External Dir for businessobjects is /opt/maximo_binaries/SMP/maximo/applications/maximo/businessobjects
    Maximo External Dir for maximouiweb is /opt/maximo_binaries/SMP/maximo/applications/maximo/maximouiweb
    Maximo External Dir for properties is /opt/maximo_binaries/SMP/maximo/applications/maximo/properties
    Maximo External Dir for resources is /opt/maximo_binaries/SMP/maximo/resources/presentations
    Maximo External Dir for tools is /opt/maximo_binaries/SMP/maximo/tools/maximo

    FAILURE: Build failed with an exception.

    * Where:
    Build file '/opt/masmanagedev-cli/bpaaa_prod1/build.gradle' line: 36

    * What went wrong:
    A problem occurred evaluating root project 'bpaaa_prod1'.
    > Failed to apply plugin 'org.gradle.java'.
       > No signature of method: org.gradle.api.internal.tasks.DefaultSourceSetOutput.classesDir() is applicable for argument types: (String) values: [classes]
         Possible solutions: getClassesDirs()

    * Try:
    > Run with --stacktrace option to get the stack trace.
    > Run with --info or --debug option to get more log output.
    > Run with --scan to get full insights.

    * Get more help at https://help.gradle.org

    BUILD FAILED in 6s



    ------------------------------
    Appu nair
    APPECM
    ------------------------------



  • 19.  RE: Legacy Add On Installs in MAS9

    Posted 04-10-2025 19:09
    If you haven't created your project with Java, you can enable it using
    the masmanagedev-cli init java command. This will create the gradle
    files inside your project.

    You can set the JDK version in the gradle.properties file by selecting
    the Java path. If you want to upgrade gradle, you can update the
    wrapper and the properties in the gradle folder inside the project.

    Kind regards,
    Maycon Belfort




  • 20.  RE: Legacy Add On Installs in MAS9

    Posted 04-10-2025 19:35

    Perhaps I am doing this wrong . I am trying the quick add on command . Do you all start differently? I saw the pod shell containing Jdk 11 so I put that on my development machine . Was I supposed to do init java command first before trying the create addon command ? Does MAs9 use jdk 11? 



    ------------------------------
    Appu nair
    APPECM
    ------------------------------



  • 21.  RE: Legacy Add On Installs in MAS9

    Posted 04-11-2025 04:33
    Yes, MAS 9 is JKD 11

    That command you run if you have already created your add-on.

    When running the masmanagedev-cli create product, it will also prompt if you want to init Java. So the previous command should work for you. 

    Kind regards,
    Maycon Belfort





  • 22.  RE: Legacy Add On Installs in MAS9

    Posted 04-11-2025 04:37
    If it's still not working, you can try this option published by Jason to get the jar and lib files and set up your Eclipse.






  • 23.  RE: Legacy Add On Installs in MAS9

    Posted 04-16-2025 17:28
    Edited by Appu nair 04-16-2025 17:40

    Once you deploy your customization archive using the CLI tool do you have to do anything more? I see the customization archive of the cli tool deployed in the sample project

    Do I have to do anything in the Customization here

    If I change the system-managed I can see the customization archive in the mascli process deployed there 

    I have been waiting patiently for 2 hours plus to get to see my BPAA Music application or its tables :)

    Edit: Either it was coincidental or not, but I changed that system managed off and then said Apply, and Voila, I am in happier territory :) Is there any logs etc that one can monitor to see what is happening when a customization archive is pushed?



    ------------------------------
    Appu nair
    APPECM
    ------------------------------



  • 24.  RE: Legacy Add On Installs in MAS9

    Posted 04-17-2025 01:36
    The Workspace deployment Status shows as completed. Have you tried accessing Manage?

    Check the logs of Maxinst pod in the manage project on OpenShift.

    Kind regards,
    Maycon Belfort