You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sentry.apache.org by sd...@apache.org on 2016/03/28 11:03:34 UTC

sentry git commit: SENTRY-1163: Enable Jenkins for Hive Authz2 (Dapeng Sun, reviewed by Colin Ma)

Repository: sentry
Updated Branches:
  refs/heads/master 0702f54b4 -> 30f680774


SENTRY-1163: Enable Jenkins for Hive Authz2 (Dapeng Sun, reviewed by Colin Ma)


Project: http://git-wip-us.apache.org/repos/asf/sentry/repo
Commit: http://git-wip-us.apache.org/repos/asf/sentry/commit/30f68077
Tree: http://git-wip-us.apache.org/repos/asf/sentry/tree/30f68077
Diff: http://git-wip-us.apache.org/repos/asf/sentry/diff/30f68077

Branch: refs/heads/master
Commit: 30f680774c17a3696b40c59a06b5b11d9e01f45e
Parents: 0702f54
Author: Sun Dapeng <sd...@apache.org>
Authored: Mon Mar 28 17:01:16 2016 +0800
Committer: Sun Dapeng <sd...@apache.org>
Committed: Mon Mar 28 17:01:16 2016 +0800

----------------------------------------------------------------------
 dev-support/test-patch.py | 37 +++++++++++++++++++++++++++----------
 1 file changed, 27 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/sentry/blob/30f68077/dev-support/test-patch.py
----------------------------------------------------------------------
diff --git a/dev-support/test-patch.py b/dev-support/test-patch.py
index f9f79ea..ac91b59 100644
--- a/dev-support/test-patch.py
+++ b/dev-support/test-patch.py
@@ -130,13 +130,13 @@ def git_apply(result, cmd, patch_file, output_dir):
   if rc != 0:
     result.fatal("failed to apply patch (exit code %d):\n%s\n" % (rc, output))
 
-def mvn_clean(result, mvn_repo, output_dir):
-  rc = execute("mvn clean -Dmaven.repo.local=%s 1>%s/clean.txt 2>&1" % (mvn_repo, output_dir))
+def mvn_clean(result, mvn_repo, output_dir, mvn_profile):
+  rc = execute("mvn clean -Dmaven.repo.local=%s %s 1>%s/clean.txt 2>&1" % (mvn_repo, mvn_profile, output_dir))
   if rc != 0:
     result.fatal("failed to clean project (exit code %d)" % (rc))
 
-def mvn_install(result, mvn_repo, output_dir):
-  rc = execute("mvn install -U -DskipTests -Dmaven.repo.local=%s 1>%s/install.txt 2>&1" % (mvn_repo, output_dir))
+def mvn_install(result, mvn_repo, output_dir, mvn_profile):
+  rc = execute("mvn install -U -DskipTests -Dmaven.repo.local=%s %s 1>%s/install.txt 2>&1" % (mvn_repo, mvn_profile, output_dir))
   if rc != 0:
     result.fatal("failed to build with patch (exit code %d)" % (rc))
 
@@ -145,8 +145,8 @@ def find_all_files(top):
         for f in files:
             yield os.path.join(root, f)
 
-def mvn_test(result, mvn_repo, output_dir):
-  rc = execute("mvn verify -Dmaven.repo.local=%s 1>%s/test.txt 2>&1" % (mvn_repo, output_dir))
+def mvn_test(result, mvn_repo, output_dir, mvn_profile):
+  rc = execute("mvn verify -Dmaven.repo.local=%s %s 1>%s/test.txt 2>&1" % (mvn_repo, mvn_profile, output_dir))
   if rc == 0:
     result.success("all tests passed")
   else:
@@ -211,6 +211,8 @@ parser.add_option("--password", dest="password",
                   help="JIRA Password", metavar="PASSWORD")
 parser.add_option("--workspace", dest="workspace",
                   help="Jenkins workspace directory", metavar="DIR")
+parser.add_option("--hive-authz2", dest="hive_authz2",
+                  help="Test patch for Hive authz2", action="store_true")
 
 (options, args) = parser.parse_args()
 if not (options.defect or options.filename):
@@ -237,6 +239,7 @@ password = options.password
 run_tests = options.run_tests
 post_results = options.post_results
 workspace = options.workspace
+hive_authz2 = options.hive_authz2
 result = Result()
 
 def log_and_exit():
@@ -278,6 +281,9 @@ if defect:
     print "ERROR: Defect %s not in patch available state" % (defect)
     sys.exit(1)
   attachment = jira_get_attachment(result, defect, username, password)
+  if '"Hive V2"' in jira_json:
+    print "INFO: Hive V2 is detected from Jira"
+    hive_authz2 = True
   if not attachment:
     print "ERROR: No attachments found for %s" % (defect)
     sys.exit(1)
@@ -302,14 +308,25 @@ else:
   print "ERROR: Reached unreachable code. Please report."
   sys.exit(1)
 
-
-mvn_clean(result, mvn_repo, output_dir)
+mvn_profile=""
+mvn_clean(result, mvn_repo, output_dir, mvn_profile)
 git_checkout(result, branch)
 git_apply(result, patch_cmd, patch_file, output_dir)
-mvn_install(result, mvn_repo, output_dir)
+mvn_install(result, mvn_repo, output_dir, mvn_profile)
 if run_tests:
-  mvn_test(result, mvn_repo, output_dir)
+  mvn_test(result, mvn_repo, output_dir, mvn_profile)
 else:
   result.info("patch applied and built but tests did not execute")
+if hive_authz2:
+  result.info("INFO: Test patch for Hive authz2")
+  mvn_profile="-P-hive-authz1,hive-authz2,-datanucleus3,datanucleus4"
+  output_dir_v2 = output_dir + "/v2"
+  os.mkdir(output_dir_v2)
+  mvn_clean(result, mvn_repo, output_dir_v2, mvn_profile)
+  mvn_install(result, mvn_repo, output_dir_v2, mvn_profile)
+  if run_tests:
+    mvn_test(result, mvn_repo, output_dir_v2, mvn_profile)
+  else:
+    result.info("patch applied and built but tests did not execute for Hive authz2")
 
 result.exit_handler()