forked from loafle/openapi-generator-original
* [CLI] Initial implementation for batch generation Allows for generating multiple outputs via config. Just specify multiple config files on command line. Intent for this is to reduce CI times to generate outputs as well as to reduce time for users to run ensure-up-to-date to meet PR standards. Example command: openapi-generator batch --includes-base-dir `pwd` --fail-fast -- bin/ci/* --- As part of this implementation, the batch command support a customized JSON key, `!include`. If this key's value refers to an existing file, that file's contents are "unwrapped" into the config during deserialization. This allows us to easily point to the same configs used by our sample scripts without modifying the CLI generate task's switches or assumptions. * Allow for path-relative outputs * Add batch JSON objects * Include INFO log about threads used and includes/root * Ensure GlobalSettings.reset() * Improved thread-safety of ModelUtils
59 lines
1.8 KiB
Bash
59 lines
1.8 KiB
Bash
#!/bin/sh
|
|
# ref: https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/
|
|
#
|
|
# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-perl "minor update" "gitlab.com"
|
|
|
|
git_user_id=$1
|
|
git_repo_id=$2
|
|
release_note=$3
|
|
git_host=$4
|
|
|
|
if [ "$git_host" = "" ]; then
|
|
git_host="github.com"
|
|
echo "[INFO] No command line input provided. Set \$git_host to $git_host"
|
|
fi
|
|
|
|
if [ "$git_user_id" = "" ]; then
|
|
git_user_id="GIT_USER_ID"
|
|
echo "[INFO] No command line input provided. Set \$git_user_id to $git_user_id"
|
|
fi
|
|
|
|
if [ "$git_repo_id" = "" ]; then
|
|
git_repo_id="GIT_REPO_ID"
|
|
echo "[INFO] No command line input provided. Set \$git_repo_id to $git_repo_id"
|
|
fi
|
|
|
|
if [ "$release_note" = "" ]; then
|
|
release_note="Minor update"
|
|
echo "[INFO] No command line input provided. Set \$release_note to $release_note"
|
|
fi
|
|
|
|
# Initialize the local directory as a Git repository
|
|
git init
|
|
|
|
# Adds the files in the local repository and stages them for commit.
|
|
git add .
|
|
|
|
# Commits the tracked changes and prepares them to be pushed to a remote repository.
|
|
git commit -m "$release_note"
|
|
|
|
# Sets the new remote
|
|
git_remote=`git remote`
|
|
if [ "$git_remote" = "" ]; then # git remote not defined
|
|
|
|
if [ "$GIT_TOKEN" = "" ]; then
|
|
echo "[INFO] \$GIT_TOKEN (environment variable) is not set. Using the git credential in your environment."
|
|
git remote add origin https://${git_host}/${git_user_id}/${git_repo_id}.git
|
|
else
|
|
git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git
|
|
fi
|
|
|
|
fi
|
|
|
|
git pull origin master
|
|
|
|
# Pushes (Forces) the changes in the local repository up to the remote repository
|
|
echo "Git pushing to https://${git_host}/${git_user_id}/${git_repo_id}.git"
|
|
git push origin master 2>&1 | grep -v 'To https'
|
|
|