This is an automated email from the ASF dual-hosted git repository.

ulyssesyou pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-kyuubi.git


The following commit(s) were added to refs/heads/master by this push:
     new c8d9d8b  [KYUUBI #1155] [BUILD] Support passthrough env var CI into 
build container
c8d9d8b is described below

commit c8d9d8be21b7e0d0fafedd051d7b6413384b7d65
Author: Cheng Pan <[email protected]>
AuthorDate: Sun Sep 26 18:04:34 2021 +0800

    [KYUUBI #1155] [BUILD] Support passthrough env var CI into build container
    
    <!--
    Thanks for sending a pull request!
    
    Here are some tips for you:
      1. If this is your first time, please read our contributor guidelines: 
https://kyuubi.readthedocs.io/en/latest/community/contributions.html
      2. If the PR is related to an issue in 
https://github.com/apache/incubator-kyuubi/issues, add '[KYUUBI #XXXX]' in your 
PR title, e.g., '[KYUUBI #XXXX] Your PR title ...'.
      3. If the PR is unfinished, add '[WIP]' in your PR title, e.g., 
'[WIP][KYUUBI #XXXX] Your PR title ...'.
    -->
    
    ### _Why are the changes needed?_
    <!--
    Please clarify why the changes are needed. For instance,
      1. If you add a feature, you can talk about the use case of it.
      2. If you fix a bug, you can clarify why it is a bug.
    -->
    
    Continuous integration(aka. CI) services like GitHub Actions, Travis always 
provide an environment variable `CI` in runners, and we detect this variable to 
run some specific actions.
    
    In [KYUUBI #742], we add a `CI` env var detection in `build/mvn` to 
suppress noisy maven logs in CI scenes.
    
    This PR introduces a new build arg `CI` in `docker/Dockerfile`, which is 
intent to passthrough env var CI into the build container to suppress noisy 
maven logs in GitHub Action and Travis.
    
    ### _How was this patch tested?_
    - [ ] Add some test cases that check the changes thoroughly including 
negative and positive cases if possible
    
    - [ ] Add screenshots for manual tests if appropriate
    
    - [ ] [Run 
test](https://kyuubi.readthedocs.io/en/latest/develop_tools/testing.html#running-tests)
 locally before make a pull request
    
    Closes #1155 from pan3793/ci.
    
    Closes #1155
    
    0f66b37e [Cheng Pan] typo
    e1b9d35e [Cheng Pan] nit
    d78bb563 [Cheng Pan] update workflow
    4209ae67 [Cheng Pan] Update comments
    ffc3a1e1 [Cheng Pan] nit
    761c9e6c [Cheng Pan] Update usage
    2f74b977 [Cheng Pan] Add build arg CI
    509da2aa [Cheng Pan] [BUILD] Suppress maven log in Minikube Integration Test
    
    Authored-by: Cheng Pan <[email protected]>
    Signed-off-by: ulysses-you <[email protected]>
---
 .github/workflows/master.yml |  3 +++
 docker/Dockerfile            | 23 ++++++++++++++++++-----
 2 files changed, 21 insertions(+), 5 deletions(-)

diff --git a/.github/workflows/master.yml b/.github/workflows/master.yml
index 3375a60..21d2e93 100644
--- a/.github/workflows/master.yml
+++ b/.github/workflows/master.yml
@@ -141,6 +141,7 @@ jobs:
         run: |
           ./build/mvn clean install -Pspark-3.1 -DskipTests -pl 
:kyuubi-spark-sql-engine_2.12,:kyuubi-common_2.12,:kyuubi-ha_2.12,:kyuubi-zookeeper_2.12,:kyuubi-spark-monitor_2.12
           ./build/mvn test -Pspark-3.1 -Dtest=none 
-DwildcardSuites=org.apache.kyuubi.operation.tpcds 
-Dmaven.plugin.scalatest.exclude.tags=''
+
   minikube-it:
     name: Minikube Integration Test
     runs-on: ubuntu-20.04
@@ -153,6 +154,8 @@ jobs:
       - name: Build Kyuubi Docker Image
         uses: docker/build-push-action@v2
         with:
+          # passthrough CI into build container
+          build-args: CI=${CI}
           context: .
           file: docker/Dockerfile
           load: true
diff --git a/docker/Dockerfile b/docker/Dockerfile
index d376a67..6394dcd 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -17,19 +17,32 @@
 
 # Usage:
 #   Run the docker command below
-#      docker build --build-arg MVN_ARG="-Pspark-3.1,spark-hadoop-3.2" -f 
docker/Dockerfile -t apache/kyuubi:tagname .
+#      docker build \
+#        --build-arg MVN_ARG="-Pspark-3.1,spark-hadoop-3.2" \
+#        --file docker/Dockerfile \
+#        --tag apache/kyuubi:tagname \
+#        .
 #   Options:
-#     -f this docker file
-#     -t the target repo and tag name
-#     more options can be found with -h
+#     -f, --file  this docker file
+#     -t, --tag   the target repo and tag name
+#     more options can be found with -h, --help
 
-# declare the BASE_IMAGE argument in the first line. for more detail see: 
https://github.com/moby/moby/issues/38379
+# Declare the BASE_IMAGE argument in the first line, for more detail
+# see: https://github.com/moby/moby/issues/38379
 ARG BASE_IMAGE=openjdk:8-jdk
 
 FROM maven:3.6-jdk-8 as builder
 
 ARG MVN_ARG
 
+# Pass the environment variable `CI` into container, for internal use only.
+#
+# Continuous integration(aka. CI) services like GitHub Actions, Travis always 
provide
+# an environment variable `CI` in runners, and we detect this variable to run 
some
+# specific actions, e.g. run `mvn` in batch mode to suppress noisy logs.
+ARG CI
+ENV CI ${CI}
+
 ADD . /workspace/kyuubi
 WORKDIR /workspace/kyuubi
 

Reply via email to