From 3c7431b59c5f71829ca7fbae40292127dab0bc0a Mon Sep 17 00:00:00 2001 From: Ivan Grokhotkov Date: Wed, 18 Nov 2015 12:02:49 +0300 Subject: [PATCH] Allow package and docs to be hosted in different places --- package/build_boards_manager_package.sh | 26 +++++++++++++++++-------- package/merge_packages.py | 14 ++++++------- 2 files changed, 25 insertions(+), 15 deletions(-) mode change 100644 => 100755 package/merge_packages.py diff --git a/package/build_boards_manager_package.sh b/package/build_boards_manager_package.sh index 3e969cdbc..261dd2afd 100755 --- a/package/build_boards_manager_package.sh +++ b/package/build_boards_manager_package.sh @@ -1,6 +1,12 @@ #!/bin/bash # +# Figure out how will the package be called +ver=`git describe --tags --always` +package_name=esp8266-$ver +echo "Version: $ver" +echo "Package name: $package_name" + # Set REMOTE_URL environment variable to the address where the package will be # available for download. This gets written into package json file. if [ -z "$REMOTE_URL" ]; then @@ -8,13 +14,17 @@ if [ -z "$REMOTE_URL" ]; then echo "REMOTE_URL not defined, using default" fi echo "Remote: $REMOTE_URL" -pushd .. -# Figure out how will the package be called -ver=`git describe --tags --always` -package_name=esp8266-$ver -echo "Version: $ver" -echo "Package name: $package_name" +if [ -z "$PKG_URL" ]; then + PKG_URL="$REMOTE_URL/versions/$ver/$package_name.zip" +fi +echo "Package: $PKG_URL" + +if [ -z "$DOC_URL" ]; then + DOC_URL="$REMOTE_URL/versions/$ver/doc/reference.html" +fi +echo "Docs: $DOC_URL" +pushd .. # Create directory for the package outdir=package/versions/$ver/$package_name srcdir=$PWD @@ -72,11 +82,11 @@ echo SHA-256: $sha echo "Making package_esp8266com_index.json" cat $srcdir/package/package_esp8266com_index.template.json | \ jq ".packages[0].platforms[0].version = \"$ver\" | \ - .packages[0].platforms[0].url = \"$REMOTE_URL/versions/$ver/$package_name.zip\" |\ + .packages[0].platforms[0].url = \"$PKG_URL\" |\ .packages[0].platforms[0].archiveFileName = \"$package_name.zip\" |\ .packages[0].platforms[0].checksum = \"SHA-256:$sha\" |\ .packages[0].platforms[0].size = \"$size\" |\ - .packages[0].platforms[0].help.online = \"$REMOTE_URL/versions/$ver/doc/reference.html\"" \ + .packages[0].platforms[0].help.online = \"$DOC_URL\"" \ > package_esp8266com_index.json popd diff --git a/package/merge_packages.py b/package/merge_packages.py old mode 100644 new mode 100755 index 350522bac..dba8bb9d6 --- a/package/merge_packages.py +++ b/package/merge_packages.py @@ -10,8 +10,8 @@ import sys def load_package(filename): pkg = json.load(open(filename))['packages'][0] - print("Loaded package {0} from {1}".format(pkg['name'], filename)) - print("{0} platform(s), {1} tools".format(len(pkg['platforms']), len(pkg['tools']))) + print("Loaded package {0} from {1}".format(pkg['name'], filename), file=sys.stderr) + print("{0} platform(s), {1} tools".format(len(pkg['platforms']), len(pkg['tools'])), file=sys.stderr) return pkg def merge_objects(versions, obj): @@ -19,17 +19,17 @@ def merge_objects(versions, obj): name = o['name'].encode('ascii') ver = o['version'].encode('ascii') if not name in versions: - print("found new object, {0}".format(name)) + print("found new object, {0}".format(name), file=sys.stderr) versions[name] = {} if not ver in versions[name]: - print("found new version {0} for object {1}".format(ver, name)) + print("found new version {0} for object {1}".format(ver, name), file=sys.stderr) versions[name][ver] = o return versions def main(args): if len(args) < 3: - print("Usage: {0} ".format(args[0])) + print("Usage: {0} ".format(args[0]), file=sys.stderr) return 1 tools = {} @@ -46,12 +46,12 @@ def main(args): for name in tools: for version in tools[name]: - print("Adding tool {0}-{1}".format(name, version)) + print("Adding tool {0}-{1}".format(name, version), file=sys.stderr) pkg1['tools'].append(tools[name][version]) for name in platforms: for version in platforms[name]: - print("Adding platform {0}-{1}".format(name, version)) + print("Adding platform {0}-{1}".format(name, version), file=sys.stderr) pkg1['platforms'].append(platforms[name][version]) json.dump({'packages':[pkg1]}, sys.stdout, indent=2)