
# This is a Dockerfile for the rhpam-7/rhpam-kogito-builder-rhel8:7.13.2 image.


## START target image rhpam-7/rhpam-kogito-builder-rhel8:7.13.2
## \
    FROM registry.redhat.io/ubi8/ubi-minimal:latest


    USER root

###### START module 'org.kie.kogito.rhpam.prod.profile:7.13.2'
###### \
        # Set 'org.kie.kogito.rhpam.prod.profile' module defined environment variables
        ENV \
            ENABLE_RH_MAVEN_REPO="true" 
###### /
###### END module 'org.kie.kogito.rhpam.prod.profile:7.13.2'

###### START module 'org.kie.kogito.image.dependencies:2.0.0-snapshot'
###### \
        # Copy 'org.kie.kogito.image.dependencies' module content
        COPY modules/org.kie.kogito.image.dependencies /tmp/scripts/org.kie.kogito.image.dependencies
        # Switch to 'root' user to install 'org.kie.kogito.image.dependencies' module defined packages
        USER root
        # Install packages defined in the 'org.kie.kogito.image.dependencies' module
        RUN microdnf --setopt=install_weak_deps=0 --setopt=tsflags=nodocs install -y file shadow-utils tar gzip unzip \
            && microdnf clean all \
            && rpm -q file shadow-utils tar gzip unzip
        # Custom scripts from 'org.kie.kogito.image.dependencies' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.image.dependencies/clean.sh" ]
###### /
###### END module 'org.kie.kogito.image.dependencies:2.0.0-snapshot'

###### START module 'org.kie.kogito.system.user:2.0.0-snapshot'
###### \
        # Copy 'org.kie.kogito.system.user' module content
        COPY modules/org.kie.kogito.system.user /tmp/scripts/org.kie.kogito.system.user
        # Set 'org.kie.kogito.system.user' module defined environment variables
        ENV \
            KOGITO_HOME="/home/kogito" \
            USER="kogito" 
        # Custom scripts from 'org.kie.kogito.system.user' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.system.user/add-user" ]
###### /
###### END module 'org.kie.kogito.system.user:2.0.0-snapshot'

###### START module 'org.kie.kogito.logging:2.0.0-snapshot'
###### \
        # Copy 'org.kie.kogito.logging' module content
        COPY modules/org.kie.kogito.logging /tmp/scripts/org.kie.kogito.logging
        # Custom scripts from 'org.kie.kogito.logging' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.logging/configure" ]
###### /
###### END module 'org.kie.kogito.logging:2.0.0-snapshot'

###### START module 'org.kie.kogito.launch.scripts:2.0.0-snapshot'
###### \
        # Copy 'org.kie.kogito.launch.scripts' module content
        COPY modules/org.kie.kogito.launch.scripts /tmp/scripts/org.kie.kogito.launch.scripts
        # Custom scripts from 'org.kie.kogito.launch.scripts' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.launch.scripts/configure" ]
###### /
###### END module 'org.kie.kogito.launch.scripts:2.0.0-snapshot'

###### START module 'org.kie.kogito.graalvm.installer:21.3.1-java-11'
###### \
        # Copy 'org.kie.kogito.graalvm.installer' module general artifacts to '/tmp/artifacts/' destination
        COPY \
            graalvm-ce-java11-linux-amd64-21.3.1.tar.gz \
            native-image-installable-svm-java11-linux-amd64-21.3.1.jar \
            /tmp/artifacts/
        # Copy 'org.kie.kogito.graalvm.installer' module content
        COPY modules/org.kie.kogito.graalvm.installer /tmp/scripts/org.kie.kogito.graalvm.installer
        # Set 'org.kie.kogito.graalvm.installer' module defined environment variables
        ENV \
            GRAALVM_HOME="/usr/share/graalvm" \
            GRAALVM_JAVA_VERSION="11" \
            GRAALVM_VERSION="21.3.1" \
            JAVA_HOME="/usr/share/graalvm" 
        # Custom scripts from 'org.kie.kogito.graalvm.installer' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.graalvm.installer/configure" ]
###### /
###### END module 'org.kie.kogito.graalvm.installer:21.3.1-java-11'

###### START module 'org.kie.kogito.graalvm.scripts:21.3.1'
###### \
        # Copy 'org.kie.kogito.graalvm.scripts' module content
        COPY modules/org.kie.kogito.graalvm.scripts /tmp/scripts/org.kie.kogito.graalvm.scripts
        # Custom scripts from 'org.kie.kogito.graalvm.scripts' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.graalvm.scripts/configure" ]
###### /
###### END module 'org.kie.kogito.graalvm.scripts:21.3.1'

###### START module 'org.kie.kogito.openjdk:11'
###### \
        # Copy 'org.kie.kogito.openjdk' module content
        COPY modules/org.kie.kogito.openjdk /tmp/scripts/org.kie.kogito.openjdk
        # Switch to 'root' user to install 'org.kie.kogito.openjdk' module defined packages
        USER root
        # Install packages defined in the 'org.kie.kogito.openjdk' module
        RUN microdnf --setopt=install_weak_deps=0 --setopt=tsflags=nodocs install -y java-11-openjdk-devel \
            && microdnf clean all \
            && rpm -q java-11-openjdk-devel
        # Set 'org.kie.kogito.openjdk' module defined environment variables
        ENV \
            JAVA_HOME="/usr/lib/jvm/java-11" \
            JAVA_VENDOR="openjdk" \
            JAVA_VERSION="11" 
        # Set 'org.kie.kogito.openjdk' module defined labels
        LABEL \
            com.redhat.component="jboss-openjdk11-rhel8-container"  \
            org.jboss.product="openjdk"  \
            org.jboss.product.openjdk.version="11"  \
            org.jboss.product.version="11" 
        # Custom scripts from 'org.kie.kogito.openjdk' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.openjdk/clean.sh" ]
###### /
###### END module 'org.kie.kogito.openjdk:11'

###### START module 'org.kie.kogito.dynamic.resources:2.0.0-snapshot'
###### \
        # Copy 'org.kie.kogito.dynamic.resources' module content
        COPY modules/org.kie.kogito.dynamic.resources /tmp/scripts/org.kie.kogito.dynamic.resources
        # Set 'org.kie.kogito.dynamic.resources' module defined environment variables
        ENV \
            JBOSS_CONTAINER_JAVA_JVM_MODULE="/opt/container/java/jvm" 
        # Custom scripts from 'org.kie.kogito.dynamic.resources' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.dynamic.resources/configure" ]
###### /
###### END module 'org.kie.kogito.dynamic.resources:2.0.0-snapshot'

###### START module 'org.kie.kogito.maven:3.8.1'
###### \
        # Copy 'org.kie.kogito.maven' module general artifacts to '/tmp/artifacts/' destination
        COPY \
            apache-maven-3.8.1-bin.tar.gz \
            /tmp/artifacts/
        # Copy 'org.kie.kogito.maven' module content
        COPY modules/org.kie.kogito.maven /tmp/scripts/org.kie.kogito.maven
        # Set 'org.kie.kogito.maven' module defined environment variables
        ENV \
             MAVEN_HOME="/usr/share/maven" \
            JBOSS_MAVEN_REPO_URL="https://repository.jboss.org/nexus/content/groups/public/" \
            MAVEN_VERSION="3.8.1" 
        # Custom scripts from 'org.kie.kogito.maven' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.maven/configure" ]
###### /
###### END module 'org.kie.kogito.maven:3.8.1'

###### START module 'org.kie.kogito.kubernetes.client:2.0.0-snapshot'
###### \
        # Copy 'org.kie.kogito.kubernetes.client' module content
        COPY modules/org.kie.kogito.kubernetes.client /tmp/scripts/org.kie.kogito.kubernetes.client
        # Custom scripts from 'org.kie.kogito.kubernetes.client' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.kubernetes.client/configure" ]
###### /
###### END module 'org.kie.kogito.kubernetes.client:2.0.0-snapshot'

###### START module 'org.kie.kogito.persistence:2.0.0-snapshot'
###### \
        # Copy 'org.kie.kogito.persistence' module content
        COPY modules/org.kie.kogito.persistence /tmp/scripts/org.kie.kogito.persistence
        # Custom scripts from 'org.kie.kogito.persistence' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.persistence/configure" ]
###### /
###### END module 'org.kie.kogito.persistence:2.0.0-snapshot'

###### START module 'org.kie.kogito.s2i.core:2.0.0-snapshot'
###### \
        # Copy 'org.kie.kogito.s2i.core' module content
        COPY modules/org.kie.kogito.s2i.core /tmp/scripts/org.kie.kogito.s2i.core
        # Set 'org.kie.kogito.s2i.core' module defined environment variables
        ENV \
            S2I_MODULE_LOCATION="/usr/local/s2i" 
        # Set 'org.kie.kogito.s2i.core' module defined labels
        LABEL \
            io.openshift.s2i.assemble-input-files="/home/kogito/bin"  \
            io.openshift.s2i.destination="/tmp"  \
            io.openshift.s2i.scripts-url="image:///usr/local/s2i" 
        # Custom scripts from 'org.kie.kogito.s2i.core' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.s2i.core/configure.sh" ]
###### /
###### END module 'org.kie.kogito.s2i.core:2.0.0-snapshot'

###### START module 'org.kie.kogito.builder:2.0.0-snapshot'
###### \
        # Copy 'org.kie.kogito.builder' module content
        COPY modules/org.kie.kogito.builder /tmp/scripts/org.kie.kogito.builder
        # Custom scripts from 'org.kie.kogito.builder' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.builder/configure" ]
###### /
###### END module 'org.kie.kogito.builder:2.0.0-snapshot'

###### START module 'org.kie.kogito.pkg-update:2.0.0-snapshot'
###### \
        # Copy 'org.kie.kogito.pkg-update' module content
        COPY modules/org.kie.kogito.pkg-update /tmp/scripts/org.kie.kogito.pkg-update
        # Custom scripts from 'org.kie.kogito.pkg-update' module
        USER root
        RUN [ "sh", "-x", "/tmp/scripts/org.kie.kogito.pkg-update/configure" ]
###### /
###### END module 'org.kie.kogito.pkg-update:2.0.0-snapshot'

###### START image 'rhpam-7/rhpam-kogito-builder-rhel8:7.13.2'
###### \
        # Switch to 'root' user to install 'rhpam-7/rhpam-kogito-builder-rhel8' image defined packages
        USER root
        # Install packages defined in the 'rhpam-7/rhpam-kogito-builder-rhel8' image
        RUN microdnf --setopt=install_weak_deps=0 --setopt=tsflags=nodocs install -y bc jq gcc gcc-c++ glibc-devel zlib-devel \
            && microdnf clean all \
            && rpm -q bc jq gcc gcc-c++ glibc-devel zlib-devel
        # Set 'rhpam-7/rhpam-kogito-builder-rhel8' image defined environment variables
        ENV \
            JBOSS_IMAGE_NAME="rhpam-7/rhpam-kogito-builder-rhel8" \
            JBOSS_IMAGE_VERSION="7.13.2" \
            KOGITO_VERSION="1.13.0.redhat-00014" 
        # Set 'rhpam-7/rhpam-kogito-builder-rhel8' image defined labels
        LABEL \
            com.redhat.component="rhpam-7-kogito-builder-rhel8-container"  \
            description="RHPAM Platform for building Kogito based on Quarkus or SpringBoot"  \
            io.cekit.version="3.12.0"  \
            io.k8s.description="RHPAM Platform for building Kogito based on Quarkus or Spring Boot"  \
            io.k8s.display-name="Red Hat build of Kogito builder based on Quarkus or SpringBoot"  \
            io.openshift.expose-services="8080:http"  \
            io.openshift.s2i.assemble-input-files="/home/kogito/bin"  \
            io.openshift.s2i.destination="/tmp"  \
            io.openshift.s2i.scripts-url="image:///usr/local/s2i"  \
            io.openshift.tags="rhpam-kogito,builder,kogito,quarkus,springboot"  \
            name="rhpam-7/rhpam-kogito-builder-rhel8"  \
            summary="RHPAM Platform for building Kogito based on Quarkus or SpringBoot"  \
            version="7.13.2" 
        # Exposed ports in 'rhpam-7/rhpam-kogito-builder-rhel8' image
        EXPOSE 8080
###### /
###### END image 'rhpam-7/rhpam-kogito-builder-rhel8:7.13.2'



    # Switch to 'root' user and remove artifacts and modules
    USER root
    RUN [ ! -d /tmp/scripts ] || rm -rf /tmp/scripts
    RUN [ ! -d /tmp/artifacts ] || rm -rf /tmp/artifacts
    # Clear package manager metadata
    RUN microdnf clean all && [ ! -d /var/cache/yum ] || rm -rf /var/cache/yum

    # Define the user
    USER 1001
    # Define the working directory
    WORKDIR /home/kogito
    # Define run cmd
    CMD ["/usr/local/s2i/run"]
## /
## END target image