Copyright @ Lenovo US

    Man, don't I dislike Java!

    how to angular

    Top level controller is mwc, and is linked at the root <html>:

    ./WEB-INF/jsp/administration.jsp:5:<html ng-app="mwc">
    ./WEB-INF/jsp/login.jsp:6:<html ng-app="mwc">
    ./WEB-INF/jsp/index.jsp:6:<html ng-app="mwc" lang="en">
    ./WEB-INF/jsp/exception/500-server-error.jsp:4:<htmll ng-app="mwc" lang="en">
    ./WEB-INF/jsp/exception/405-method-not-allowed.jsp:4:<html ng-app="mwc" lang="en">
    ./WEB-INF/jsp/exception/401-unauthorized.jsp:4:<html ng-app="mwc" lang="en">
    ./WEB-INF/jsp/exception/404-not-found.jsp:4:<html ng-app="mwc" lang="en">

    how to include script in HTML

    Using /webapp/WEB-INF/jsp/index.jsp. The key concept is the tile that is essentially a component equivalent in Angular, that a piece of code will be injected at this place. For example, <tiles:insertDefinition name="_auth-assets" /> will lookup a tile named _auth-assets in WEB-INF/tiles.xml:

    <definition name="_auth-assets"
                template="/WEB-INF/jsp/_auth-assets.jsp" />

    This in turn imports the template, in this example, the _auth-assets.jsp:

    <link rel="stylesheet" href="/dist/styles.css"> 
    <script src="/dist/vendor.js"></script>
    <script src="/dist/auth.js"></script>
    <script src="/dist/templates.js"></script>

    bundled vs. unbundled

    Alternatively, there is a bundled version, essentially a production build by webpack that bears like a hash:

    <link rel="stylesheet" href="/dist/styles.css?hash=a690ab24969fdbeb810a">
    <script src="/dist/vendor.js?hash=a690ab24969fdbeb810a"></script>
    <script src="/dist/app.js?hash=a690ab24969fdbeb810a"></script>
    <script src="/dist/templates.js?hash=a690ab24969fdbeb810a"></script>

    how to change favicon

    favicon is the little icon on a browser tab. They are defined in /webapp/WEB-INF/jsp/_favicon.jsp:

    <link rel="mask-icon" href="/resources/icons/safari-pinned-tab.svg" color="#828181">
    <link rel="apple-touch-icon" sizes="180x180" href="/resources/icons/apple-touch-icon.png">
    <link rel="icon" type="image/png" href="/resources/icons/favicon-32x32.png" sizes="32x32">
    <link rel="icon" type="image/png" href="/resources/icons/favicon-16x16.png" sizes="16x16">
    <link rel="manifest" href="/resources/icons/manifest.json">
    <link rel="mask-icon" href="/resources/icons/safari-pinned-tab.svg" color="#828181">
    <link rel="shortcut icon" href="/resources/icons/favicon.ico">
    <meta name="msapplication-TileColor" content="#ffffff">
    <meta name="msapplication-TileImage" content="/resources/icons/mstile-144x144.png">
    <meta name="msapplication-config" content="/resources/icons/browserconfig.xml">
    <meta name="theme-color" content="#ffffff">

    and they are injected in HTML as a <tiles:insertDefinition name="_favicon" /> in `.jsp.

    how to change HTML Meta

    The whole HTML meta section are defined as tile in WEB-INF/jsp/_meta.jsp:

    <meta charset="utf-8" />
    <meta name="viewport"
          content="width=device-width, initial-scale=1.0">
    <meta name="application-name"
          content="ThinkAgile CP">
    <meta name="description"

    — by Feng Xia


    IBB brain shutdown procedure

    This document describes procedure to shutdown an IBB brain instance.

    Shutdown procedure

    1. On RHV admin portal, shutdown all virtual machines but not the hosted-engine.

    2. Put the cluster in...

    Server RAID

    If you are like me who dislikes any GUI and mouse clicks, CLI via a SSH session to IMM is a fun way to get things done. This one shows how to config disks into RAID.

    CLI manual is