- hosts: all tasks: - shell: cmd: | set -e if [ -f Modulefile -o -f metadata.json ]; then if [ -f Modulefile ]; then MODULE=$(awk '/^name/ {print $NF}' Modulefile |tr -d \"\') elif [ -f metadata.json ]; then MODULE=$(python3 -c 'import json;print(json.load(open("metadata.json"))["name"])') fi if [ -z "$MODULE" ]; then echo "Module name not defined in Modulefile or metadata.json" else mkdir -p "$MODULE" rsync -a --exclude="$MODULE" --exclude ".*" . "$MODULE" cd "$MODULE" fi fi mkdir .bundled_gems export GEM_HOME=`pwd`/.bundled_gems export GEM_BIN_DIR=$GEM_HOME/bin if [ -f Gemfile ]; then ruby <&1 if [ -f metadata.json ]; then $GEM_BIN_DIR/bundle exec rake metadata_lint 2>&1 fi else gem install rake -n ./.bundled_gems/ --no-document --no-user-install gem install puppet-lint -n ./.bundled_gems/ --no-document --no-user-install gem install metadata-json-lint -n ./.bundled_gems/ --no-document --no-user-install gem install puppetlabs_spec_helper -n ./.bundled_gems/ --no-document --no-user-install gem install puppet -n ./.bundled_gems/ --no-document --no-user-install ./.bundled_gems/rake lint 2>&1 if [ -f metadata.json ]; then ./.bundled_gems/metadata-json-lint fi fi chdir: '{{ ansible_user_dir }}/workspace' environment: '{{ zuul | zuul_legacy_vars }}'