--- a/clientjs/package.json Mon Sep 17 17:38:24 2018 +0200
+++ b/clientjs/package.json Mon Sep 17 18:32:48 2018 +0200
@@ -1,6 +1,10 @@
{
- "name": "root",
+ "name": "annotation-dashboard-clientjs",
+ "version": "0.1.0",
"private": true,
+ "scripts": {
+ "set-version": "bash -c 'sed -i \"\" -e \"s/\\([:space:]*\\\"version\\\"[[:space:]]*\\:[[:space:]]*\\\"\\)[\\.0-9]*\\(\\\".*\\)/\\1${1}\\2/\" package.json' 0"
+ },
"devDependencies": {
"babel-eslint": "^9.0.0",
"eslint": "^5.4.0",
--- a/clientjs/packages/annotation-dashboard-explorunivers/package.json Mon Sep 17 17:38:24 2018 +0200
+++ b/clientjs/packages/annotation-dashboard-explorunivers/package.json Mon Sep 17 18:32:48 2018 +0200
@@ -3,7 +3,7 @@
"version": "0.1.0",
"private": true,
"dependencies": {
- "dashboard-components": "^1.0.0",
+ "dashboard-components": "^0.1.0",
"jquery": "^3.3.1",
"lodash": "^4.17.10",
"popper": "^1.0.1",
@@ -28,7 +28,9 @@
"build-js": "react-scripts build",
"build": "npm-run-all build-css build-js",
"build-css": "node-sass-chokidar --include-path ./node_modules src/ -o src/",
- "watch-css": "npm run build-css && node-sass-chokidar --include-path ./node_modules src/ -o src/ --watch --recursive"
+ "watch-css": "npm run build-css && node-sass-chokidar --include-path ./node_modules src/ -o src/ --watch --recursive",
+ "set-version": "bash -c 'sed -i \"\" -e \"s/\\([:space:]*\\\"version\\\"[[:space:]]*\\:[[:space:]]*\\\"\\)[\\.0-9]*\\(\\\".*\\)/\\1${1}\\2/\" package.json' 0",
+ "delete-components-dep": "bash -c 'sed -i \"\" -e \"/[:space:]*\\\"dashboard-components\\\"/d\" package.json' 0"
},
"devDependencies": {
"ajv": "^6.5.3",
--- a/clientjs/packages/dashboard-components/package.json Mon Sep 17 17:38:24 2018 +0200
+++ b/clientjs/packages/dashboard-components/package.json Mon Sep 17 18:32:48 2018 +0200
@@ -1,6 +1,6 @@
{
"name": "dashboard-components",
- "version": "1.0.0",
+ "version": "0.1.0",
"description": "",
"main": "./lib",
"directories": {
@@ -9,7 +9,8 @@
"scripts": {
"start": "webpack-cli --watch --mode=development",
"build": "webpack-cli --mode=production",
- "prepublish": "npm run build"
+ "prepublish": "npm run build",
+ "set-version": "bash -c 'sed -i \"\" -e \"s/\\([:space:]*\\\"version\\\"[[:space:]]*\\:[[:space:]]*\\\"\\)[\\.0-9]*\\(\\\".*\\)/\\1${1}\\2/\" package.json' 0"
},
"keywords": [],
"author": "",
--- a/deploy/README.md Mon Sep 17 17:38:24 2018 +0200
+++ b/deploy/README.md Mon Sep 17 18:32:48 2018 +0200
@@ -6,4 +6,9 @@
- `cp hosts/hosts.tmpl hosts/hosts.<profile>`
- define the profile vars: `cp group_vars/group_vars.yml.tmpl group_vars/<profile>.yml`, customize it
- create the necessary host vars in `host_vars/<machine>/base.yml`. Use ansible vaults to edit them and do not expose any secret.
- - deploy with the command `deploy.sh`: `./deploy.sh <profile> <version>`
\ No newline at end of file
+ - deploy with the command `deploy.sh`: `./deploy.sh <profile> <version>`
+
+## Create new version
+Launch the command:
+- `set-version.sh <version>`
+- commit, tag and push as needed.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/deploy/set-version.sh Mon Sep 17 18:32:48 2018 +0200
@@ -0,0 +1,69 @@
+#!/usr/bin/env bash
+
+set -e
+
+function usage() {
+ cat <<EOF
+Usage: $0 "x.y.z"
+ "x.y.z": version number, following the semver convention
+EOF
+}
+
+if [ $# -ne 1 ]; then
+ echo "Bad number of parameters"
+ usage >&2
+ exit 1
+fi
+
+if [[ "$1" == "-h" || "$1" == "--help" ]]; then
+ usage
+ exit 0
+fi
+
+version=$1
+
+echo "Version: ${version}"
+
+[[ "${version}" =~ ^[[:digit:]]+\.[[:digit:]]+\.[[:digit:]]+$ ]] || {
+ echo "Bad format for version."
+ usage >&2
+ exit 1
+}
+
+DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+green="\x1B[0;32m" # '\e[1;32m' is too bright for white bg.
+blue="\x1B[1;34m"
+endColor="\x1B[0m"
+
+function echoblue() {
+ echo -e "${blue}$1${endColor}"
+}
+
+pushd "$DIR"
+
+pushd ../clientjs
+echoblue "Setting clientjs root version"
+npm run set-version -- "$version"
+popd
+
+pushd ../clientjs/packages/dashboard-components
+echoblue "Setting clientjs root version"
+npm run set-version -- "$version"
+popd
+
+
+pushd ../clientjs/packages/annotation-dashboard-explorunivers
+echoblue "Setting clientjs root version"
+npm run delete-components-dep
+npm run set-version -- "$version"
+popd
+
+pushd ../clientjs/
+echoblue "relink dependencies"
+npx lerna add dashboard-components --scope=annotation-dashboard-explorunivers
+popd
+
+echoblue "Version has been changed, please commit and push if necessary."
+
+
+popd