Przeglądaj źródła

Add Demo validation script support for using local artifacts

Change-Id: I47f6bd7b4b73371ffe10a80f6af215146f7895e4
tags/7.6.0.alpha3
Teemu Suo-Anttila 9 lat temu
rodzic
commit
bd7f4bf17f
2 zmienionych plików z 25 dodań i 5 usunięć
  1. 17
    4
      scripts/BuildDemos.py
  2. 8
    1
      scripts/BuildHelpers.py

+ 17
- 4
scripts/BuildDemos.py Wyświetl plik

@@ -9,14 +9,16 @@
# pip install requests
# Deploy depends on .deployUrl and .deployCredentials files in home folder

import sys
import sys, os
try:
from git import Repo
except:
print("BuildDemos depends on gitpython. Install it with `pip install gitpython`")
sys.exit(1)
from BuildHelpers import updateRepositories, mavenValidate, copyWarFiles, getLogFile, removeDir, getArgs
from BuildHelpers import updateRepositories, mavenValidate, copyWarFiles, getLogFile, removeDir, getArgs, mavenInstall
from DeployHelpers import deployWar
from os.path import join, isfile
from fnmatch import fnmatch

# Validated demos. name -> git url
demos = {
@@ -30,8 +32,19 @@ def checkout(folder, url):
Repo.clone_from(url, folder)

if __name__ == "__main__":
if getArgs().teamcity:
print("Add dependency jars from TeamCity here")
if hasattr(getArgs(), "artifactPath") and getArgs().artifactPath is not None:
basePath = getArgs().artifactPath
poms = []
for root, dirs, files in os.walk(basePath):
for name in files:
if fnmatch(name, "*.pom"):
poms.append(join(root, name))
for pom in poms:
jarFile = pom.replace(".pom", ".jar")
if isfile(jarFile):
mavenInstall(pom, jarFile)
else:
mavenInstall(pom)
demosFailed = False

+ 8
- 1
scripts/BuildHelpers.py Wyświetl plik

@@ -31,7 +31,7 @@ args = None
parser = argparse.ArgumentParser(description="Automated staging validation")
parser.add_argument("version", type=str, help="Vaadin version to use")
parser.add_argument("--maven", help="Additional maven command line parameters", default=None)
parser.add_argument("--teamcity", help="Use vaadin jars provided by teamcity", action="store_const", const=True, default=False)
parser.add_argument("--artifactPath", help="Path to local folder with Vaadin artifacts", default=None)

# Parse command line arguments <version>
def parseArgs():
@@ -167,3 +167,10 @@ def removeDir(subdir):
# Dangerous relative paths.
return
rmtree(join(getcwd(), subdir))

def mavenInstall(pomFile, jarFile = None, mvnCmd = mavenCmd, logFile = sys.stdout):
cmd = [mvnCmd, "install:install-file"]
cmd.append("-Dfile=%s" % (jarFile if jarFile is not None else pomFile))
cmd.append("-DpomFile=%s" % (pomFile))
print("executing: %s" % (" ".join(cmd)))
subprocess.check_call(cmd, stdout=logFile)

Ładowanie…
Anuluj
Zapisz