Gitlab CI Building only changed maven modules

Only rebuild maven modules that were changed

  script:
    # generating list of modules to build
    - git diff --name-only origin/master~$(git rev-list origin/master --not HEAD --count) | grep -E '(module1|module2|module3)/[a-zA-Z0-9-]+' | sed -E 's/^[a-zA-Z0-9-]+\/([a-zA-Z0-9-]+)\/([a-zA-Z0-9-]+)\/.+$/\1-\2/g' | sort --unique > changed.modules || true
    # marking modules as changed
    - echo "my-backend" >> changed.modules
    - echo $(lastSuccessfulCommit)
    - npm ci
    - mvn -B -T 1C $(shouldSkipNPM) -Ppartial -Dpartial.referenceBranch=$(lastSuccessfulCommit) -Dpartial.ignoreAllReactorProjects=true -am org.jacoco:jacoco-maven-plugin:prepare-agent install docker:build jib:build docker:push jacoco:report -Ddocker.tag=${CI_COMMIT_REF_SLUG}-SNAPSHOT