Update mfdoc, mfpub
This commit is contained in:
		| @@ -5,7 +5,7 @@ | ||||
| # Start Jekyll in watch mode to work on Marlin Documentation and preview locally | ||||
| # | ||||
|  | ||||
| [[ $# == 0 ]] || { echo "usage: `basename $0`" 1>&2 ; exit 1; } | ||||
| [[ $# == 0 ]] || { echo "Usage: `basename $0`" 1>&2 ; exit 1; } | ||||
|  | ||||
| MFINFO=$(mfinfo "$@") || exit 1 | ||||
| IFS=' ' read -a INFO <<< "$MFINFO" | ||||
| @@ -16,10 +16,8 @@ BRANCH=${INFO[5]} | ||||
| [[ $ORG == "MarlinFirmware" && $REPO == "MarlinDocumentation" ]] || { echo "Wrong repository." 1>&2; exit 1; } | ||||
|  | ||||
| opensite() { | ||||
|   which xdg-open >/dev/null && TOOL=xdg-open | ||||
|   which gnome-open >/dev/null && TOOL=gnome-open | ||||
|   which open >/dev/null && TOOL=open | ||||
|   URL="http://127.0.0.1:4000/" | ||||
|   OPEN=$(echo $(which gnome-open xdg-open open) | awk '{ print $1 }') | ||||
|   if [ -z "$OPEN" ]; then | ||||
|     echo "Can't find a tool to open the URL:" | ||||
|     echo $URL | ||||
|   | ||||
| @@ -5,11 +5,11 @@ | ||||
| # Use Jekyll to generate Marlin Documentation, which is then | ||||
| # git-pushed to Github to publish it to the live site. | ||||
| # This publishes the current branch, and doesn't force | ||||
| # changes to be pushed to the 'master' branch. Be sure to push | ||||
| # any permanent changes to 'master'. | ||||
| # changes to be pushed to the 'master' branch. Be sure to | ||||
| # push any permanent changes to 'master'. | ||||
| # | ||||
|  | ||||
| [[ $# < 2 && $1 != "-h" && $1 != "--help" ]] || { echo "usage: `basename $0` [branch]" 1>&2 ; exit 1; } | ||||
| [[ $# < 2 && $1 != "-h" && $1 != "--help" ]] || { echo "Usage: `basename $0` [branch]" 1>&2 ; exit 1; } | ||||
|  | ||||
| MFINFO=$(mfinfo "$@") || exit 1 | ||||
| IFS=' ' read -a INFO <<< "$MFINFO" | ||||
| @@ -18,6 +18,7 @@ FORK=${INFO[1]} | ||||
| REPO=${INFO[2]} | ||||
| TARG=${INFO[3]} | ||||
| BRANCH=${INFO[4]} | ||||
| CURR=${INFO[5]} | ||||
|  | ||||
| if [[ $ORG != "MarlinFirmware" || $REPO != "MarlinDocumentation" ]]; then | ||||
|   echo "Wrong repository." | ||||
| @@ -30,34 +31,46 @@ if [[ $BRANCH == "gh-pages" ]]; then | ||||
| fi | ||||
|  | ||||
| # Check out the named branch (or stay in current) | ||||
| git checkout $BRANCH | ||||
|  | ||||
| echo "Stashing any changes to files..." | ||||
| echo "Don't forget to update and push 'master'!" | ||||
| # GOJF Card | ||||
| [[ $(git stash) != "No local "* ]] && HAS_STASH=1 | ||||
| if [[ $BRANCH != $CURR ]]; then | ||||
|   git checkout $BRANCH | ||||
|   echo "Stashing any changes to files..." | ||||
|   [[ $(git stash) != "No local "* ]] && HAS_STASH=1 | ||||
| fi | ||||
|  | ||||
| COMMIT=$( git log --format="%H" -n 1 ) | ||||
|  | ||||
| # Clean out changes and other junk in the branch | ||||
| git clean -d -f | ||||
|  | ||||
| opensite() { | ||||
|   URL="$1" | ||||
|   OPEN=$(echo $(which gnome-open xdg-open open) | awk '{ print $1 }') | ||||
|   if [ -z "$OPEN" ]; then | ||||
|     echo "Can't find a tool to open the URL:" | ||||
|     echo $URL | ||||
|   else | ||||
|     echo "Opening the site in the browser..." | ||||
|     "$OPEN" "$URL" | ||||
|   fi | ||||
| } | ||||
|  | ||||
| # Push 'master' to the fork and make a proper PR... | ||||
| if [[ $BRANCH == "master" ]]; then | ||||
| if [[ $BRANCH == $TARG ]]; then | ||||
|  | ||||
|   # Don't lose upstream changes! | ||||
|   git fetch upstream | ||||
|  | ||||
|   # Rebase onto latest master | ||||
|   if git rebase upstream/master; then | ||||
|   if git rebase upstream/$TARG; then | ||||
|  | ||||
|     # Allow working directly with the main fork | ||||
|     echo | ||||
|     echo -n "Pushing to origin/master... " | ||||
|     echo -n "Pushing to origin/$TARG... " | ||||
|     git push -f origin | ||||
|  | ||||
|     echo | ||||
|     echo -n "Pushing to upstream/master... " | ||||
|     echo -n "Pushing to upstream/$TARG... " | ||||
|     git push -f upstream | ||||
|  | ||||
|   else | ||||
| @@ -77,18 +90,7 @@ else | ||||
|     git push -f origin | ||||
|   fi | ||||
|  | ||||
|   which xdg-open >/dev/null && TOOL=xdg-open | ||||
|   which gnome-open >/dev/null && TOOL=gnome-open | ||||
|   which open >/dev/null && TOOL=open | ||||
|   URL="https://github.com/$ORG/$REPO/compare/$TARG...$FORK:$BRANCH?expand=1" | ||||
|  | ||||
|   if [ -z "$OPEN" ]; then | ||||
|     echo "Can't find a tool to open the URL:" | ||||
|     echo $URL | ||||
|   else | ||||
|     echo "Opening a New PR Form..." | ||||
|     "$OPEN" "$URL" | ||||
|   fi | ||||
|   opensite "https://github.com/$ORG/$REPO/compare/$TARG...$FORK:$BRANCH?expand=1" | ||||
|  | ||||
| fi | ||||
|  | ||||
| @@ -117,27 +119,14 @@ git clean -d -f | ||||
| git checkout gh-pages || { echo "Something went wrong!"; exit 1; } | ||||
| rsync -av ${TMPFOLDER}/ ./ | ||||
|  | ||||
| opensite() { | ||||
|   which xdg-open >/dev/null && TOOL=xdg-open | ||||
|   which gnome-open >/dev/null && TOOL=gnome-open | ||||
|   which open >/dev/null && TOOL=open | ||||
|   URL="http://marlinfw.org/" | ||||
|   if [ -z "$OPEN" ]; then | ||||
|     echo "Can't find a tool to open the URL:" | ||||
|     echo $URL | ||||
|   else | ||||
|     echo "Opening the site in the browser..." | ||||
|     "$OPEN" "$URL" | ||||
|   fi | ||||
| } | ||||
|  | ||||
| # Commit and push the new live site directly | ||||
| git add --all | ||||
| git commit --message "Built from ${COMMIT}" | ||||
| git push upstream | { | ||||
| git push -f origin | ||||
| git push -f upstream | { | ||||
|   while IFS= read -r line | ||||
|   do | ||||
|     [[ $line =~ "gh-pages -> gh-pages" ]] && opensite | ||||
|     [[ $line =~ "gh-pages -> gh-pages" ]] && opensite "http://marlinfw.org/" | ||||
|     echo "$line" | ||||
|   done | ||||
| } | ||||
| @@ -146,6 +135,4 @@ git push upstream | { | ||||
| rm -rf ${TMPFOLDER} | ||||
|  | ||||
| # Go back to the branch we started from | ||||
| git checkout $BRANCH | ||||
|  | ||||
| [[ $HAS_STASH == 1 ]] && git stash pop | ||||
| [[ $BRANCH != $CURR ]] && { git checkout $BRANCH ; [[ $HAS_STASH == 1 ]] && git stash pop ; } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user