- Make sure your directory structure looks like below example.
├── App-Service
├── Apps
├── Backend-Service
├── Frontend
├── Tradeshift-Proxy2
├── tradeshift-company-profile
├── tradeshift-product-engine
├── Workflow
├── p2p-apps
├── tradeshift-puppet
├── tradeshift-rebase-toolkit
-
Make sure all project has no uncommited changes.
-
Install related dependency.
# install pip
brew install pip
# install shyaml
sudo pip install shyaml
- Execute below commands to auto rebase.
cd tradeshift-rebase-toolkit
sh ./scripts/rebase.sh
- Resolve merge conflicts and execute
git commit
for every project(don't usegit commit -m xxx
)
-
Check if
com.tradeshift:tradeshift-ubl
defined ingrails-app/conf/BuildConfig.groovy
is changed, since we have china specific change. If changed, rebase and release a new ubl jar package by the jenkins job -
Check if
tradeshift.chrome.stableVersion
defined ingrails-app/conf/Config.groovy
is changed. If changed, release this new chrome version to ali cdn by jenkins job (TBD)
-
Check if
tradeshift-ui
inpackage.json
is updated. If changed, first, release the version to ali cdn by the jenkins job second, update puppet like this pull request -
Check the base image in
docker/Dockerfile
, currently it should be tradeshift-docker-node:onbuild, if the dockerfile in tradeshift-docker-node repo is updated, we need to rebase it with this commit, and rebuild docker image by jenkins job -
Don't try to resolve conflict in
package-lock.json
, just accept Tradeshift version and use below commands to regenerate a new one.
sed -i '' 's/npm.tradeshift.net/cn.npm.bwtsi.cn/g' package-lock.json
npm install
- Inform everyone to use specific version of node defined in
.nvmrc
and npm defined injenkins.sh
.
- Check
ubl.version
defined inpom.xml
, follow Frontend step 1.
- Search all ImageStorageService bean, add
@Qualifier("qiniu")
annotation like below.
@Autowired
@Qualifier("qiniu")
private final ImageStorageService imageStorageService;