commands:
  cli:
    init:
      - git submodule sync --recursive
      - git submodule update --init --recursive --force
      # - for d in ./*/ ; do (cd "$d" && git archive --remote=ssh://git@gitlab.youvolio.com:522/kristiyan.tachev/version-tag-hook.git HEAD hooks | tar -x -C .git); done

  version:
    change:
      - node ./build-versions.js && for d in ./*/ ; do (cd "$d" && git add . && git commit -m 'autocommitmessage' || true && npm version patch && git push && npm publish --update-readme --access public); done && gapi repo commit-patch
    patch:
      - npm version patch
      - git push
      - for d in ./*/ ; do (cd "$d" && npm version patch && npm publish --update-readme --access public); done && gapi repo commit && gapi version change
    minor:
      - npm version minor
      - git push
      - for d in ./*/ ; do (cd "$d" && npm version minor && npm publish --update-readme --access public); done && gapi repo commit && gapi version change
    major:
      - npm version major
      - git push
      - for d in ./*/ ; do (cd "$d" && npm version major && npm publish --update-readme --access public); done && gapi repo commit && gapi version change
  repo:
    checkout:
      - for d in ./*/ ; do (cd "$d" && git checkout master); done
    commit-patch:
      - git add .
      - git commit -m 'autocommitmessage'
      - npm version patch
      - git push

    commit-minor:
      - git add .
      - git commit -m 'autocommitmessage'
      - npm version minor
      - git push

    commit-major:
      - git add .
      - git commit -m 'autocommitmessage'
      - npm version major
      - git push
    commit:
      - git add .
      - git commit -m 'autocommitmessage'
      - git push
  npm:
    pushtags:
      - for d in ./*/ ; do (cd "$d" && npm run postpublish); done
    pushforce:
      - for d in ./*/ ; do (cd "$d" && git add . && git commit -m "chore" && git push -f && npm run postpublish); done
  
  commit:
    all: for d in ./*/ ; do (cd "$d" && git add . && git commit -m 'autocommitmessage' || true && dir && git push && npm run postpublish); done
    all-publish: for d in ./*/ ; do (cd "$d" && npm publish --update-readme --access public); done

  info:
    status: for d in ./*/ ; do (cd "$d" && pwd && git status); done
    pull: for d in ./*/ ; do (cd "$d" && git reset --hard && git pull); done
    push: for d in ./*/ ; do (cd "$d" && git push origin master); done
  defs:
    build: node ./build-definition.js
    # all-publish: for d in ./*/ ; do (cd "$d" && git add . && git commit -m autocommitmessage && git push && npm publish --update-readme --access public); done

    #  >/dev/null 2>&

  