diff --git a/clean_files.txt b/clean_files.txt index cf8d8bcb72..14a1d501a5 100644 --- a/clean_files.txt +++ b/clean_files.txt @@ -108,6 +108,7 @@ plugins/available/history.plugin.bash plugins/available/hub.plugin.bash plugins/available/java.plugin.bash plugins/available/jekyll.plugin.bash +plugins/available/jgitflow.plugin.bash plugins/available/jump.plugin.bash plugins/available/latex.plugin.bash plugins/available/less-pretty-cat.plugin.bash diff --git a/plugins/available/jgitflow.plugin.bash b/plugins/available/jgitflow.plugin.bash index 83ee8a23f6..ff972f6221 100644 --- a/plugins/available/jgitflow.plugin.bash +++ b/plugins/available/jgitflow.plugin.bash @@ -1,47 +1,60 @@ +# shellcheck shell=bash cite about-plugin about-plugin 'Maven jgitflow build helpers' +function pre-jgitflow { + about 'helper function for execute before jgitflow' + group 'jgitflow' +} + +function test-pre-jgitflow { + about 'helper function for starting a new hotfix' + group 'jgitflow' + + echo "Init pre-maven" && pre-jgitflow && echo "Finish pre-maven" +} + function hotfix-start { - about 'helper function for starting a new hotfix' - group 'jgitflow' + about 'helper function for starting a new hotfix' + group 'jgitflow' - mvn jgitflow:hotfix-start ${JGITFLOW_MVN_ARGUMENTS} + pre-jgitflow && mvn jgitflow:hotfix-start ${JGITFLOW_MVN_ARGUMENTS} } function hotfix-finish { - about 'helper function for finishing a hotfix' - group 'jgitflow' + about 'helper function for finishing a hotfix' + group 'jgitflow' - mvn jgitflow:hotfix-finish -Darguments="${JGITFLOW_MVN_ARGUMENTS}" && git push && git push origin master && git push --tags + pre-jgitflow && mvn jgitflow:hotfix-finish -Darguments="${JGITFLOW_MVN_ARGUMENTS}" && git push && git push origin master && git push --tags && mvn clean } function feature-start { - about 'helper function for starting a new feature' - group 'jgitflow' + about 'helper function for starting a new feature' + group 'jgitflow' - mvn jgitflow:feature-start ${JGITFLOW_MVN_ARGUMENTS} + pre-jgitflow && mvn jgitflow:feature-start ${JGITFLOW_MVN_ARGUMENTS} } function feature-finish { - about 'helper function for finishing a feature' - group 'jgitflow' + about 'helper function for finishing a feature' + group 'jgitflow' - mvn jgitflow:feature-finish ${JGITFLOW_MVN_ARGUMENTS} - echo -e '\033[32m----------------------------------------------------------------\033[0m' - echo -e '\033[32m===== REMEMBER TO CREATE A NEW RELEASE TO DEPLOY THIS FEATURE ====\033[0m' - echo -e '\033[32m----------------------------------------------------------------\033[0m' + pre-jgitflow && mvn jgitflow:feature-finish ${JGITFLOW_MVN_ARGUMENTS} && mvn clean + echo -e '\033[32m----------------------------------------------------------------\033[0m' + echo -e '\033[32m===== REMEMBER TO CREATE A NEW RELEASE TO DEPLOY THIS FEATURE ====\033[0m' + echo -e '\033[32m----------------------------------------------------------------\033[0m' } function release-start { - about 'helper function for starting a new release' - group 'jgitflow' + about 'helper function for starting a new release' + group 'jgitflow' - mvn jgitflow:release-start ${JGITFLOW_MVN_ARGUMENTS} + pre-jgitflow && mvn jgitflow:release-start ${JGITFLOW_MVN_ARGUMENTS} } function release-finish { - about 'helper function for finishing a release' - group 'jgitflow' + about 'helper function for finishing a release' + group 'jgitflow' - mvn jgitflow:release-finish -Darguments="${JGITFLOW_MVN_ARGUMENTS}" && git push && git push origin master && git push --tags + pre-jgitflow && mvn jgitflow:release-finish -Darguments="${JGITFLOW_MVN_ARGUMENTS}" && git push && git push origin master && git push --tags && mvn clean }