Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-62151

oc edit Renders and Modifies Multi-line ConfigMap Data Incorrectly, Introducing Unwanted Escape Characters

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • 4.17.z, 4.16.z
    • oc
    • None
    • Quality / Stability / Reliability
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Description of problem:
      When the .data section of a ConfigMap contains multi-line data
      `oc` renders the ConfigMap .data section with introducing unwanted escape characters,
      Despite the configmap being rendered correctly in the OCP Web console.

      This has been observed when: 

      • When copying muiltiline data in the OC client, to a ConfigMap  ** 
          (a) from another source such as the web console or
          (b) from another ConfigMap data section (containing escape chars)
      • When using `$ oc edit` command to modify a ConfigMap with multi-line data in the .data section, 
      • with `$ oc get cm <cm-name> -o yaml`
      • It is still Rendered correctly in the console but unwanted escape characters are introduced in the cli for the same configmap
      • Removing all comments and whitespace was found to solve the this issue in some cases.
      • DOES NOT always occur. See Reproducer example

       ** 

          

      Version-Release number of selected component (if applicable):

      4.16.z, 4.17.z    

      How reproducible:

      Can be Reproduced easily 

      Steps to Reproduce:

      1. Create a namespace "example"

      $ oc create ns example    

       2. Open a text editor and paste in the following example:

      kind: ConfigMap
      apiVersion: v1
      metadata:
        name: sso-test-2.cli
        namespace: example 
        annotations:
      immutable: false
      data:
        sso-extensions.cli: |-
          batch
          set MSSQL_DRIVER_NAME=mssql
          set MSSQL_DRIVER=com.microsoft.sqlserver.jdbc.SQLServerDriver
          set MSSQL_XA_DRIVER=com.microsoft.sqlserver.jdbc.SQLServerXADataSource
          set MSSQL_EAP_MODULE=com.microsoft.sqlserver.jdbc
          set MSSQL_FILE=/opt/eap/driver-jdbc/mssql-jdbc-12.4.1.jre11.jar
          set ORACLE_DRIVER_NAME=oracle
          set ORACLE_DRIVER=oracle.jdbc.driver.OracleDriver
          set ORACLE_XA_DRIVER=oracle.jdbc.xa.client.OracleXADataSource
          set ORACLE_EAP_MODULE=com.oracle
          set ORACLE_FILE=/opt/eap/driver-jdbc/ojdbc8.jar
          set IFX_DRIVER_NAME=com.informix.jdbc
          set IFX_DRIVER=com.informix.jdbc.IfxDriver
          set IFX_XA_DRIVER=com.informix.jdbcx.IfxXADataSource
          set IFX_EAP_MODULE=com.informix.jdbc
          set IFX_ES_CLASS=org.jboss.jca.adapters.jdbc.extensions.informix.InformixExceptionSorter
          set IFX_FILE=/opt/eap/driver-jdbc/ifx-jdbc-4.10.16.jar
          # DS RHSSO
          module add --name=$MSSQL_EAP_MODULE --resources=$MSSQL_FILE --dependencies=javax.api,javax.transaction.api,javax.resource.api
          /subsystem=datasources/jdbc-driver=$MSSQL_DRIVER_NAME:add(driver-name=$MSSQL_DRIVER_NAME, driver-module-name=$MSSQL_EAP_MODULE, driver-class-name=$MSSQL_DRIVER, driver-xa-datasource-class-name=$MSSQL_XA_DRIVER )
          /subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name="min-pool-size", value=50)
          /subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name="initial-pool-size", value=50)
          /subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name="max-pool-size", value=200)
          /subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name="validate-on-match", value=true)
          /subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name="background-validation", value=false)
          /subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name="check-valid-connection-sql", value="SELECT 1")
          /subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name="flush-strategy", value=EntirePool)
          /subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name="use-fast-fail", value=true)
          /subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name="idle-timeout-minutes", value=5)
          /subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=statistics-enabled,value=true)
          /subsystem=datasources/data-source=KeycloakDS:remove()
          # LOGGING
          /subsystem=logging/logger=org.keycloak/:add(category=org.keycloak,level=INFO)
          /subsystem=logging/logger=com.microsoft.sqlserver:add(level=INFO)
          /subsystem=logging/logger=br.com.vectorx.orizon.keycloak.federation:add(level=INFO)
          /subsystem=logging/logger=br.com.redhat.consulting.spi.authenticator.MFAAuthenticator:add(level=DEBUG)
          /subsystem=logging/logger=br.com.redhat.consulting.spi.authenticator.msgservice.MsgServiceImpl:add(level=DEBUG)
          /subsystem=logging/logger=br.com.redhat.consulting.spi.authenticator.email.MagicLink:add(level=DEBUG)
          /subsystem=logging/logger=br.com.redhat.consulting.spi.authenticator.sms.Sms:add(level=DEBUG)
          # ADD MOD ORACLE
          module add --name=$ORACLE_EAP_MODULE --resources=$ORACLE_FILE --dependencies=javax.api,javax.transaction.api,javax.resource.api
          /subsystem=datasources/jdbc-driver=$ORACLE_DRIVER_NAME:add(driver-name=$ORACLE_DRIVER_NAME, driver-module-name=$ORACLE_EAP_MODULE, driver-class-name=$ORACLE_DRIVER, driver-xa-datasource-class-name=$ORACLE_XA_DRIVER )
          # ADD MOD INFORMIX
          module add --name=$IFX_EAP_MODULE --resources=$IFX_FILE --dependencies=javax.api,javax.transaction.api,javax.resource.api
          /subsystem=datasources/jdbc-driver=$IFX_DRIVER_NAME:add(driver-name=$IFX_DRIVER_NAME, driver-module-name=$IFX_EAP_MODULE, driver-class-name=$IFX_DRIVER, driver-xa-datasource-class-name=$IFX_XA_DRIVER )
          # DS ANALISE
          #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx  DS DATIVA
          xa-data-source add xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
          # DS DATIVA ReadOnly
          # DS SINISTRV
          #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx  DS TABELA ORIZON
          #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx  DS HPREV
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
          # DS akljd
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          # DS AUTORIZE INFORMIX
          xa-data-source add xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
          # DS PBM
          xa-data-source add xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          # ENABLE STATISTICS
          #/subsystem=datasources/xa-data-source=a6e-autenticador-xa:write-attribute(name=statistics-enabled,value=true)
          #/subsystem=datasources/xa-data-source=analisePool:write-attribute(name=statistics-enabled,value=true)
          #/subsystem=datasources/xa-data-source=DativaDS:write-attribute(name=statistics-enabled,value=true)
          #/subsystem=datasources/xa-data-source=OraclePBM:write-attribute(name=statistics-enabled,value=true)
          #/subsystem=datasources/xa-data-source=PBM:write-attribute(name=statistics-enabled,value=true)
          #/subsystem=datasources/xa-data-source=SinistrosPoolXa:write-attribute(name=statistics-enabled,value=true)
          #/subsystem=datasources/xa-data-source=TABELAPool:write-attribute(name=statistics-enabled,value=true)  
          # SET TIMEOUT STORAGE PROVIDER
          /subsystem=keycloak-server/spi=user:add()
          /subsystem=keycloak-server/spi=user:map-put(name=properties,key=storageProviderTimeout,value=30000)
          # SET TIMEOUT JBOSS
          /system-property=jboss.as.management.blocking.timeout:add(value=21600)
          run-batch

      3. Run `$ oc apply -f <filename>`

      4. Check how the cm is rendered by running: `$ oc get cm sso-test-2.cli -n example -oyaml > test-cm.yaml ; cat test-cm.yaml`

      5. Check by running `$ oc edit cm sso-test-2.cli -n example`

      Actual results:
      The configmap is returned with new spurious characters introduced both with OC edit and OC get and appears as follows:

       

      apiVersion: v1
      data:
        sso-extensions.cli: "batch\nset MSSQL_DRIVER_NAME=mssql\nset MSSQL_DRIVER=com.microsoft.sqlserver.jdbc.SQLServerDriver\nset
          MSSQL_XA_DRIVER=com.microsoft.sqlserver.jdbc.SQLServerXADataSource\nset MSSQL_EAP_MODULE=com.microsoft.sqlserver.jdbc\nset
          MSSQL_FILE=/opt/eap/driver-jdbc/mssql-jdbc-12.4.1.jre11.jar\nset ORACLE_DRIVER_NAME=oracle\nset
          ORACLE_DRIVER=oracle.jdbc.driver.OracleDriver\nset ORACLE_XA_DRIVER=oracle.jdbc.xa.client.OracleXADataSource\nset
          ORACLE_EAP_MODULE=com.oracle\nset ORACLE_FILE=/opt/eap/driver-jdbc/ojdbc8.jar\nset
          IFX_DRIVER_NAME=com.informix.jdbc\nset IFX_DRIVER=com.informix.jdbc.IfxDriver\nset
          IFX_XA_DRIVER=com.informix.jdbcx.IfxXADataSource\nset IFX_EAP_MODULE=com.informix.jdbc\nset
          IFX_ES_CLASS=org.jboss.jca.adapters.jdbc.extensions.informix.InformixExceptionSorter\nset
          IFX_FILE=/opt/eap/driver-jdbc/ifx-jdbc-4.10.16.jar\n# DS RHSSO\nmodule add --name=$MSSQL_EAP_MODULE
          --resources=$MSSQL_FILE --dependencies=javax.api,javax.transaction.api,javax.resource.api\n/subsystem=datasources/jdbc-driver=$MSSQL_DRIVER_NAME:add(driver-name=$MSSQL_DRIVER_NAME,
          driver-module-name=$MSSQL_EAP_MODULE, driver-class-name=$MSSQL_DRIVER, driver-xa-datasource-class-name=$MSSQL_XA_DRIVER
          )\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"min-pool-size\",
          value=50)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"initial-pool-size\",
          value=50)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"max-pool-size\",
          value=200)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"validate-on-match\",
          value=true)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"background-validation\",
          value=false)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"check-valid-connection-sql\",
          value=\"SELECT 1\")\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"flush-strategy\",
          value=EntirePool)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"use-fast-fail\",
          value=true)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"idle-timeout-minutes\",
          value=5)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=statistics-enabled,value=true)\n/subsystem=datasources/data-source=KeycloakDS:remove()\n#
          LOGGING\n/subsystem=logging/logger=org.keycloak/:add(category=org.keycloak,level=INFO)\n/subsystem=logging/logger=com.microsoft.sqlserver:add(level=INFO)\n/subsystem=logging/logger=br.com.vectorx.orizon.keycloak.federation:add(level=INFO)\n/subsystem=logging/logger=br.com.redhat.consulting.spi.authenticator.MFAAuthenticator:add(level=DEBUG)\n/subsystem=logging/logger=br.com.redhat.consulting.spi.authenticator.msgservice.MsgServiceImpl:add(level=DEBUG)\n/subsystem=logging/logger=br.com.redhat.consulting.spi.authenticator.email.MagicLink:add(level=DEBUG)\n/subsystem=logging/logger=br.com.redhat.consulting.spi.authenticator.sms.Sms:add(level=DEBUG)\n#
          ADD MOD ORACLE\nmodule add --name=$ORACLE_EAP_MODULE --resources=$ORACLE_FILE
          --dependencies=javax.api,javax.transaction.api,javax.resource.api\n/subsystem=datasources/jdbc-driver=$ORACLE_DRIVER_NAME:add(driver-name=$ORACLE_DRIVER_NAME,
          driver-module-name=$ORACLE_EAP_MODULE, driver-class-name=$ORACLE_DRIVER, driver-xa-datasource-class-name=$ORACLE_XA_DRIVER
          )\n# ADD MOD INFORMIX\nmodule add --name=$IFX_EAP_MODULE --resources=$IFX_FILE
          --dependencies=javax.api,javax.transaction.api,javax.resource.api\n/subsystem=datasources/jdbc-driver=$IFX_DRIVER_NAME:add(driver-name=$IFX_DRIVER_NAME,
          driver-module-name=$IFX_EAP_MODULE, driver-class-name=$IFX_DRIVER, driver-xa-datasource-class-name=$IFX_XA_DRIVER
          )\n# DS ANALISE\n#xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          \ DS DATIVA\nxa-data-source add xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          \n# DS DATIVA ReadOnly\n# DS SINISTRV\n#xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          \ DS TABELA ORIZON\n#xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          \ DS HPREV\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          \n# DS akljd\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n#
          DS AUTORIZE INFORMIX\nxa-data-source add xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          \n# DS PBM\nxa-data-source add xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n#
          ENABLE STATISTICS\n#/subsystem=datasources/xa-data-source=a6e-autenticador-xa:write-attribute(name=statistics-enabled,value=true)\n#/subsystem=datasources/xa-data-source=analisePool:write-attribute(name=statistics-enabled,value=true)\n#/subsystem=datasources/xa-data-source=DativaDS:write-attribute(name=statistics-enabled,value=true)\n#/subsystem=datasources/xa-data-source=OraclePBM:write-attribute(name=statistics-enabled,value=true)\n#/subsystem=datasources/xa-data-source=PBM:write-attribute(name=statistics-enabled,value=true)\n#/subsystem=datasources/xa-data-source=SinistrosPoolXa:write-attribute(name=statistics-enabled,value=true)\n#/subsystem=datasources/xa-data-source=TABELAPool:write-attribute(name=statistics-enabled,value=true)
          \ \n# SET TIMEOUT STORAGE PROVIDER\n/subsystem=keycloak-server/spi=user:add()\n/subsystem=keycloak-server/spi=user:map-put(name=properties,key=storageProviderTimeout,value=30000)\n#
          SET TIMEOUT JBOSS\n/system-property=jboss.as.management.blocking.timeout:add(value=21600)\nrun-batch"
      immutable: false
      kind: ConfigMap
      metadata:
        annotations:
          kubectl.kubernetes.io/last-applied-configuration: |
            {"apiVersion":"v1","data":{"sso-extensions.cli":"batch\nset MSSQL_DRIVER_NAME=mssql\nset MSSQL_DRIVER=com.microsoft.sqlserver.jdbc.SQLServerDriver\nset MSSQL_XA_DRIVER=com.microsoft.sqlserver.jdbc.SQLServerXADataSource\nset MSSQL_EAP_MODULE=com.microsoft.sqlserver.jdbc\nset MSSQL_FILE=/opt/eap/driver-jdbc/mssql-jdbc-12.4.1.jre11.jar\nset ORACLE_DRIVER_NAME=oracle\nset ORACLE_DRIVER=oracle.jdbc.driver.OracleDriver\nset ORACLE_XA_DRIVER=oracle.jdbc.xa.client.OracleXADataSource\nset ORACLE_EAP_MODULE=com.oracle\nset ORACLE_FILE=/opt/eap/driver-jdbc/ojdbc8.jar\nset IFX_DRIVER_NAME=com.informix.jdbc\nset IFX_DRIVER=com.informix.jdbc.IfxDriver\nset IFX_XA_DRIVER=com.informix.jdbcx.IfxXADataSource\nset IFX_EAP_MODULE=com.informix.jdbc\nset IFX_ES_CLASS=org.jboss.jca.adapters.jdbc.extensions.informix.InformixExceptionSorter\nset IFX_FILE=/opt/eap/driver-jdbc/ifx-jdbc-4.10.16.jar\n# DS RHSSO\nmodule add --name=$MSSQL_EAP_MODULE --resources=$MSSQL_FILE --dependencies=javax.api,javax.transaction.api,javax.resource.api\n/subsystem=datasources/jdbc-driver=$MSSQL_DRIVER_NAME:add(driver-name=$MSSQL_DRIVER_NAME, driver-module-name=$MSSQL_EAP_MODULE, driver-class-name=$MSSQL_DRIVER, driver-xa-datasource-class-name=$MSSQL_XA_DRIVER )\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"min-pool-size\", value=50)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"initial-pool-size\", value=50)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"max-pool-size\", value=200)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"validate-on-match\", value=true)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"background-validation\", value=false)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"check-valid-connection-sql\", value=\"SELECT 1\")\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"flush-strategy\", value=EntirePool)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"use-fast-fail\", value=true)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=\"idle-timeout-minutes\", value=5)\n/subsystem=datasources/data-source=mssql-MSSQL:write-attribute(name=statistics-enabled,value=true)\n/subsystem=datasources/data-source=KeycloakDS:remove()\n# LOGGING\n/subsystem=logging/logger=org.keycloak/:add(category=org.keycloak,level=INFO)\n/subsystem=logging/logger=com.microsoft.sqlserver:add(level=INFO)\n/subsystem=logging/logger=br.com.vectorx.orizon.keycloak.federation:add(level=INFO)\n/subsystem=logging/logger=br.com.redhat.consulting.spi.authenticator.MFAAuthenticator:add(level=DEBUG)\n/subsystem=logging/logger=br.com.redhat.consulting.spi.authenticator.msgservice.MsgServiceImpl:add(level=DEBUG)\n/subsystem=logging/logger=br.com.redhat.consulting.spi.authenticator.email.MagicLink:add(level=DEBUG)\n/subsystem=logging/logger=br.com.redhat.consulting.spi.authenticator.sms.Sms:add(level=DEBUG)\n# ADD MOD ORACLE\nmodule add --name=$ORACLE_EAP_MODULE --resources=$ORACLE_FILE --dependencies=javax.api,javax.transaction.api,javax.resource.api\n/subsystem=datasources/jdbc-driver=$ORACLE_DRIVER_NAME:add(driver-name=$ORACLE_DRIVER_NAME, driver-module-name=$ORACLE_EAP_MODULE, driver-class-name=$ORACLE_DRIVER, driver-xa-datasource-class-name=$ORACLE_XA_DRIVER )\n# ADD MOD INFORMIX\nmodule add --name=$IFX_EAP_MODULE --resources=$IFX_FILE --dependencies=javax.api,javax.transaction.api,javax.resource.api\n/subsystem=datasources/jdbc-driver=$IFX_DRIVER_NAME:add(driver-name=$IFX_DRIVER_NAME, driver-module-name=$IFX_EAP_MODULE, driver-class-name=$IFX_DRIVER, driver-xa-datasource-class-name=$IFX_XA_DRIVER )\n# DS ANALISE\n#xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx  DS DATIVA\nxa-data-source add xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \n# DS DATIVA ReadOnly\n# DS SINISTRV\n#xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx  DS TABELA ORIZON\n#xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx  DS HPREV\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \n# DS akljd\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n# DS AUTORIZE INFORMIX\nxa-data-source add xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \n# DS PBM\nxa-data-source add xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n# ENABLE STATISTICS\n#/subsystem=datasources/xa-data-source=a6e-autenticador-xa:write-attribute(name=statistics-enabled,value=true)\n#/subsystem=datasources/xa-data-source=analisePool:write-attribute(name=statistics-enabled,value=true)\n#/subsystem=datasources/xa-data-source=DativaDS:write-attribute(name=statistics-enabled,value=true)\n#/subsystem=datasources/xa-data-source=OraclePBM:write-attribute(name=statistics-enabled,value=true)\n#/subsystem=datasources/xa-data-source=PBM:write-attribute(name=statistics-enabled,value=true)\n#/subsystem=datasources/xa-data-source=SinistrosPoolXa:write-attribute(name=statistics-enabled,value=true)\n#/subsystem=datasources/xa-data-source=TABELAPool:write-attribute(name=statistics-enabled,value=true)  \n# SET TIMEOUT STORAGE PROVIDER\n/subsystem=keycloak-server/spi=user:add()\n/subsystem=keycloak-server/spi=user:map-put(name=properties,key=storageProviderTimeout,value=30000)\n# SET TIMEOUT JBOSS\n/system-property=jboss.as.management.blocking.timeout:add(value=21600)\nrun-batch"},"immutable":false,"kind":"ConfigMap","metadata":{"annotations":{},"name":"sso-test-2.cli","namespace":"example"}}
        creationTimestamp: "2025-09-24T11:28:24Z"
        name: sso-test-2.cli
        namespace: example
        resourceVersion: "17593138"
        uid: f6ae9edd-6bb8-422b-bf93-0aef2c86a37c
      

      Expected results:

      The multiline data should be rendered with newlines, spaces comments with no visible escape characters (as it does in the console).

      Please see the screenshot:

      Additional info:

      Was found not to occur in some cases, for example in building a multiline .data field line-by-line in oc edit.

      May relate to following upstream issue with kubectl:
      https://github.com/kubernetes/kubernetes/issues/75446

       

              aos-workloads-staff Workloads Team Bot Account
              rhn-support-ccostell Cormac Costello
              None
              None
              Ying Zhou Ying Zhou
              None
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated: