diff --git a/examples/scripts/pareview.sh b/examples/scripts/pareview.sh new file mode 100755 index 000000000..17f180e11 --- /dev/null +++ b/examples/scripts/pareview.sh @@ -0,0 +1,55 @@ +#!/bin/bash +# +# Example shell script to set up PAReview.sh. +# +# You also need to adjust your `config.yml` to add in some other dependencies. +# +# ``` +# post_provision_scripts: +# - "../examples/scripts/pareview.sh" +# +# composer_global_packages: +# - { name: hirak/prestissimo, release: '^0.3' } +# - { name: drupal/coder, release: '^' } +# +# nodejs_version: "6.x" +# nodejs_npm_global_packages: +# eslint +# ``` +# +# After running `vagrant provision`, `pareview.sh` should be available anywhere +# in your Vagrant user's $PATH, so you can run commands like: +# +# $ pareview.sh /path/to/my/module +# $ pareview.sh http://git.drupal.org/project/rules.git 8.x-1.x +# +# See: https://github.com/klausi/pareviewsh + +PAREVIEW_SETUP_COMPLETE_FILE="/etc/drupal_vm_pareview_config_complete" +HOME_PATH="/home/vagrant" + +# Check to see if we've already performed this setup. +if [ ! -e "$PAREVIEW_SETUP_COMPLETE_FILE" ]; then + # Register the `Drupal` and `DrupalPractice` Standard with PHPCS. + $HOME_PATH/.composer/vendor/bin/phpcs --config-set installed_paths $HOME_PATH/.composer/vendor/drupal/coder/coder_sniffer + + # Download DrupalSecure. + git clone --branch master https://git.drupal.org/sandbox/coltrane/1921926.git /opt/drupalsecure_code_sniffs + + # Move the DrupalSecure directory into the PHPCS Standards. + sudo ln -sv /opt/drupalsecure_code_sniffs/DrupalSecure $HOME_PATH/.composer/vendor/squizlabs/php_codesniffer/CodeSniffer/Standards + + # Install Codespell. + sudo apt-get install -y python-pip + pip install codespell + + # Install PAReview script. + sudo wget -O /opt/pareview.sh https://raw.githubusercontent.com/klausi/pareviewsh/7.x-1.x/pareview.sh + sudo chmod +x /opt/pareview.sh + sudo ln -s /opt/pareview.sh /usr/local/bin + + # Create a file to indicate this script has already run. + sudo touch $PAREVIEW_SETUP_COMPLETE_FILE +else + exit 0 +fi