diff --git a/.gitattributes b/.gitattributes index 0bb16be512b566e3b5c8365e4eb689f22dcaa19b..c0631c047bdeab44a42f4e5d3ffec35f36995ee8 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1 +1,2 @@ -cassandra/build.sh eol=lf +wynurz.sh eol=lf +*/build.sh eol=lf diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1604f77fc0021b18662ad722ea0565aaee45d38c..52f069e78fc37d13463cb5134d33272608efe8bf 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,24 +1,81 @@ + variables: PREFIX: henrietta/ - -.job_template: &vm_build_job +.job_template: &box_build_job stage: build tags: - vagrant - develop19216822423 + before_script: + - ln -s .. $BOX/boxen + - cp -rf wynurz.s $BOX/wynurz.sh + - cp SkeletonVagrantfile $BOX/Vagrantfile + - sed -ie 's/INSERTBOXNAME/$BOX/g' $BOX/Vagrantfile + - cd $BOX; vagrant up + - echo "\nwait\n" >> $BOX/build.sh script: - - cd $BOX - vagrant up - vagrant package --out $BOX.box - mv -f $BOX.box /var/www/html/dev/vagrant/$BOX.box - - vagrant destroy -f - vagrant box remove $PREFIX/$BOX - vagrant box add $PREFIX/$BOX file:///var/www/html/dev/vagrant/$BOX.box - cd .. + after_script: + - vagrant destroy -f + - rm $BOX/boxen + + + +build_cassandra: + <<: *box_build_job + variables: + BOX: cassandra only: - master + - /^cassandra\-(.*)$/ + build_cass_zk_rmq: - <<: *vm_build_job + <<: *box_build_job variables: BOX: cass_zk_rmq + only: + - master + - /^cass_zk_rmq\-(.*)$/ + + +build_czr_pythons: + <<: *box_build_job + variables: + BOX: czr_pythons + only: + - master + - /^czr_pythons\-(.*)$/ + + +build_czr_pythons_pg: + <<: *box_build_job + variables: + BOX: czr_pythons_pg + only: + - master + - /^czr_pythons_pg\-(.*)$/ + + +build_nodejs4: + <<: *box_build_job + variables: + BOX: nodejs4 + only: + - master + - /^nodejs4\-(.*)$/ + + +build_nodejs5_jdk_adk25: + <<: *box_build_job + variables: + BOX: nodejs5_jdk_adk25 + only: + - master + - /^nodejs5_jdk_adk25\-(.*)$/ + diff --git a/README.md b/README.md index f5c1252d868a5e40b386bff6b86f1cb16a859a4f..a992916a3a8d40f2582d14d918e8a868db5f54cb 100644 --- a/README.md +++ b/README.md @@ -16,3 +16,7 @@ Click on particular boxes to see description and how to use: * [NodeJS 4.x + bower + gulp](/nodejs4) * [NodeJS 5.x + JDK + ADT + cordova](/nodejs5_jdk_adk25) +Boxes are automatically regenerated upon a push to master. +If you want to develop a single box, just make a branch that starts with it's name +and a dash, eg. **cassandra-something**. +Only it will then rebuild upon commit. \ No newline at end of file diff --git a/nodejs4/Vagrantfile b/SkeletonVagrantfile similarity index 62% rename from nodejs4/Vagrantfile rename to SkeletonVagrantfile index c44f2e842c81f6fe2c7f073f7adf55d830f90d19..e45403d7e6f2444f96f1d3009600eb27209cc9b8 100644 --- a/nodejs4/Vagrantfile +++ b/SkeletonVagrantfile @@ -1,22 +1,24 @@ Vagrant.configure("2") do |config| - config.vm.box = "debian/contrib-jessie64" + config.vm.box = "henrietta/INSERTBOXNAME" + + config.vm.provider "virtualbox" do |v| + v.memory = 1260 + v.cpus = 3 + end config.vm.provision "shell", inline: <<-SHELL apt-get update - apt-get install -y curl git build-essential unzip # Common utilies + apt-get install -y killall - curl -sL https://deb.nodesource.com/setup_4.x | bash - - apt-get install -y nodejs - npm cache clean - npm install -g --unsafe-perm bower gulp + bash /vagrant/run.sh # Minify + apt-get remove killall apt-get clean dd if=/dev/zero of=/EMPTY bs=1M rm -f /EMPTY rm -rf /tmp/* - # udev rules rm /etc/udev/rules.d/70-persistent-net.rules || true mkdir /etc/udev/rules.d/70-persistent-net.rules || true diff --git a/cass_zk_rmq/Vagrantfile b/cass_zk_rmq/Vagrantfile deleted file mode 100644 index 1ff08bc2546f83d70e290cd8779abb157239ad84..0000000000000000000000000000000000000000 --- a/cass_zk_rmq/Vagrantfile +++ /dev/null @@ -1,54 +0,0 @@ - -Vagrant.configure("2") do |config| - config.vm.box = "debian/contrib-jessie64" - - config.vm.provider "virtualbox" do |v| - v.memory = 1260 - v.cpus = 3 - end - - config.vm.provision "shell", inline: <<-SHELL - apt-get update - apt-get install -y curl # Common utilies - - # Oracle Java JRE - (apt-get install -y debconf-utils && - echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" > /etc/apt/sources.list.d/webupd8team-java.list && - echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" >> /etc/apt/sources.list.d/webupd8team-java.list && - apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886 && - apt-get update && - echo debconf shared/accepted-oracle-license-v1-1 select true | debconf-set-selections && - apt-get install -y oracle-java8-installer) $ # %1 - - (apt-get install -y rabbitmq-server=3.3.5-1.1 zookeeper zookeeperd && - sleep 20 && - service zookeeper stop && - service rabbitmq-server stop &&) & # %2 - - wait %1 # java - # Install Apache Cassandra - echo "deb http://debian.datastax.com/community stable main" > /etc/apt/sources.list.d/cassandra.sources.list - curl -L http://debian.datastax.com/debian/repo_key | apt-key add - - apt-get update - apt-get install -y cassandra=3.0.9 dsc30 cassandra-tools - - # Clean - sleep 30 - service cassandra stop - rm -rf /var/lib/cassandra/* - - wait - - # Minify - apt-get clean - dd if=/dev/zero of=/EMPTY bs=1M - rm -f /EMPTY - rm -rf /tmp/* - # udev rules - rm /etc/udev/rules.d/70-persistent-net.rules || true - mkdir /etc/udev/rules.d/70-persistent-net.rules || true - rm -rf /dev/.udev/ || true - rm /lib/udev/rules.d/75-persistent-net-generator.rules || true - - SHELL -end diff --git a/cass_zk_rmq/build.sh b/cass_zk_rmq/build.sh new file mode 100644 index 0000000000000000000000000000000000000000..50f2b45a0ba0ad12cfd9ee8f22838a6b37f51486 --- /dev/null +++ b/cass_zk_rmq/build.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +bash boxen/cassandra/build.sh +bash wynurz.sh zookeeeper +bash wynurz.sh rabbitmq + + diff --git a/cassandra/Vagrantfile b/cassandra/Vagrantfile deleted file mode 100644 index a9079def4ef50955bbf754e0d07a4748fb8cf125..0000000000000000000000000000000000000000 --- a/cassandra/Vagrantfile +++ /dev/null @@ -1,38 +0,0 @@ -Vagrant.configure("2") do |config| - config.vm.box = "debian/contrib-jessie64" - - config.vm.provision "shell", inline: <<-SHELL - apt-get update - apt-get install -y curl # Common utilies - - # Oracle Java JRE - apt-get install -y debconf-utils - echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" > /etc/apt/sources.list.d/webupd8team-java.list - echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" >> /etc/apt/sources.list.d/webupd8team-java.list - apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886 - apt-get update - echo debconf shared/accepted-oracle-license-v1-1 select true | debconf-set-selections - apt-get install -y oracle-java8-installer - - # Install Apache Cassandra - echo "deb http://debian.datastax.com/community stable main" > /etc/apt/sources.list.d/cassandra.sources.list - curl -L http://debian.datastax.com/debian/repo_key | apt-key add - - apt-get update - apt-get install -y cassandra=3.0.9 dsc30 cassandra-tools - - # Minify - sleep 40 - service cassandra stop - rm -rf /var/lib/cassandra/* - apt-get clean - dd if=/dev/zero of=/EMPTY bs=1M - rm -f /EMPTY - - # udev rules - rm /etc/udev/rules.d/70-persistent-net.rules || true - mkdir /etc/udev/rules.d/70-persistent-net.rules || true - rm -rf /dev/.udev/ || true - rm /lib/udev/rules.d/75-persistent-net-generator.rules || true - - SHELL -end diff --git a/cassandra/build.sh b/cassandra/build.sh new file mode 100644 index 0000000000000000000000000000000000000000..06fc364dd4bbafefaf8665630cff414f338458ed --- /dev/null +++ b/cassandra/build.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash + +bash wynurz.sh java +bash wynurz.sh cassandra \ No newline at end of file diff --git a/czr_pythons/Vagrantfile b/czr_pythons/Vagrantfile deleted file mode 100644 index f06be010ee98e58c7a8c29cb5c26b2a86121d17d..0000000000000000000000000000000000000000 --- a/czr_pythons/Vagrantfile +++ /dev/null @@ -1,54 +0,0 @@ - -Vagrant.configure("2") do |config| - config.vm.box = "debian/contrib-jessie64" - - config.vm.provision "shell", inline: <<-SHELL - apt-get update - apt-get install -y curl python python-pip python-dev python-setuptools build-essential git libffi-dev libyaml-dev libev4 libev-dev - pip install --upgrade pip==1.5.6 - pip install --upgrade setuptools==5.5.1 - - # Oracle Java JRE - apt-get install -y debconf-utils - echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" > /etc/apt/sources.list.d/webupd8team-java.list - echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" >> /etc/apt/sources.list.d/webupd8team-java.list - apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886 - apt-get update - echo debconf shared/accepted-oracle-license-v1-1 select true | debconf-set-selections - apt-get install -y oracle-java8-installer - - # Install Apache Cassandra - echo "deb http://debian.datastax.com/community stable main" > /etc/apt/sources.list.d/cassandra.sources.list - curl -L http://debian.datastax.com/debian/repo_key | apt-key add - - apt-get update - apt-get install -y cassandra=3.0.9 dsc30 cassandra-tools - - # Install RabbitMQ - apt-get install -y rabbitmq-server=3.3.5-1.1 - - service rabbitmq-server stop - - # Install ZooKeeper - apt-get install -y zookeeper zookeeperd - - service zookeeper stop - sleep 20 # wait for cassandra... #todo fix - service cassandra stop # cassandra takes long to init - rm -rf /var/lib/cassandra/* - - # Python modules - pip install cassandra-driver kazoo CoolAMQP requests futures six monotonic nose mock - - # Minify - apt-get clean - dd if=/dev/zero of=/EMPTY bs=1M - rm -f /EMPTY - rm -rf /tmp/* - # udev rules - rm /etc/udev/rules.d/70-persistent-net.rules || true - mkdir /etc/udev/rules.d/70-persistent-net.rules || true - rm -rf /dev/.udev/ || true - rm /lib/udev/rules.d/75-persistent-net-generator.rules || true - - SHELL -end diff --git a/czr_pythons/build.sh b/czr_pythons/build.sh new file mode 100644 index 0000000000000000000000000000000000000000..49a3b98569b6335192f2121c2488952001cbf276 --- /dev/null +++ b/czr_pythons/build.sh @@ -0,0 +1,35 @@ +#!/usr/bin/env bash +apt-get install -y curl python python-pip python-dev python-setuptools build-essential git libffi-dev libyaml-dev libev4 libev-dev +pip install --upgrade pip==1.5.6 +pip install --upgrade setuptools==5.5.1 + + + +# Oracle Java JRE +apt-get install -y debconf-utils +echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" > /etc/apt/sources.list.d/webupd8team-java.list +echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" >> /etc/apt/sources.list.d/webupd8team-java.list +apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886 +apt-get update +echo debconf shared/accepted-oracle-license-v1-1 select true | debconf-set-selections +apt-get install -y oracle-java8-installer + +# Install Apache Cassandra +echo "deb http://debian.datastax.com/community stable main" > /etc/apt/sources.list.d/cassandra.sources.list +curl -L http://debian.datastax.com/debian/repo_key | apt-key add - +apt-get update +apt-get install -y cassandra=3.0.9 dsc30 cassandra-tools + +# Install RabbitMQ +apt-get install -y rabbitmq-server=3.3.5-1.1 + +service rabbitmq-server stop + +# Install ZooKeeper +apt-get install -y zookeeper zookeeperd + +service zookeeper stop +bash assaassinate_cassandra.sh + +# Python modules +pip install cassandra-driver kazoo CoolAMQP requests futures six monotonic nose mock diff --git a/czr_pythons_pg/Vagrantfile b/czr_pythons_pg/Vagrantfile deleted file mode 100644 index 874c4e6db60dddc6178dd21fb0ccb59ed3fbffda..0000000000000000000000000000000000000000 --- a/czr_pythons_pg/Vagrantfile +++ /dev/null @@ -1,62 +0,0 @@ - -Vagrant.configure("2") do |config| - config.vm.box = "debian/contrib-jessie64" - - config.vm.provision "shell", inline: <<-SHELL - apt-get update - apt-get install -y curl python python-pip python-dev python-setuptools build-essential git libffi-dev libyaml-dev libev4 libev-dev libpq-dev - pip install --upgrade pip==1.5.6 - pip install --upgrade setuptools==5.5.1 - pip install --upgrade cffi - - # Oracle Java JRE - apt-get install -y debconf-utils - echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" > /etc/apt/sources.list.d/webupd8team-java.list - echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" >> /etc/apt/sources.list.d/webupd8team-java.list - apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886 - apt-get update - echo debconf shared/accepted-oracle-license-v1-1 select true | debconf-set-selections - apt-get install -y oracle-java8-installer - - # Install Apache Cassandra - echo "deb http://debian.datastax.com/community stable main" > /etc/apt/sources.list.d/cassandra.sources.list - curl -L http://debian.datastax.com/debian/repo_key | apt-key add - - apt-get update - apt-get install -y cassandra=3.0.9 dsc30 cassandra-tools - - # Install RabbitMQ - apt-get install -y rabbitmq-server=3.3.5-1.1 - - service rabbitmq-server stop - - # Install ZooKeeper - apt-get install -y zookeeper zookeeperd - - service zookeeper stop - sleep 20 # wait for cassandra... #todo fix - service cassandra stop # cassandra takes long to init - rm -rf /var/lib/cassandra/* - - # PgSQL 9.4 - apt-get install -y postgresql-9.4 - echo "host all all 0.0.0.0/0 md5" >> /etc/postgresql/9.4/main/pg_hba.conf - echo "listen_addresses = '*'" >> /etc/postgresql/9.4/main/postgresql.conf - sudo -u postgres psql --c "ALTER USER postgres WITH PASSWORD 'postgres';" - systemctl stop postgresql.service - - # Python modules - pip install cassandra-driver kazoo CoolAMQP requests futures six monotonic nose mock coverage psycopg2cffi wheel - - # Minify - apt-get clean - dd if=/dev/zero of=/EMPTY bs=1M - rm -f /EMPTY - rm -rf /tmp/* - # udev rules - rm /etc/udev/rules.d/70-persistent-net.rules || true - mkdir /etc/udev/rules.d/70-persistent-net.rules || true - rm -rf /dev/.udev/ || true - rm /lib/udev/rules.d/75-persistent-net-generator.rules || true - - SHELL -end diff --git a/czr_pythons_pg/build.sh b/czr_pythons_pg/build.sh new file mode 100644 index 0000000000000000000000000000000000000000..6e91c75f640abf2c77d9f6436ae2669663799b87 --- /dev/null +++ b/czr_pythons_pg/build.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env bash +apt-get install -y curl python python-pip python-dev python-setuptools build-essential git libffi-dev libyaml-dev libev4 libev-dev libpq-dev +pip install --upgrade pip==1.5.6 +pip install --upgrade setuptools==5.5.1 +pip install --upgrade cffi + + +bash boxen/cassandra/build.sh +bash wynurz.sh zookeeeper +bash wynurz.sh rabbitmq +bash wynurz.sh postgresql + +pip install cassandra-driver kazoo CoolAMQP requests futures six monotonic nose mock coverage psycopg2cffi wheel diff --git a/make-gitlab-ci.py b/make-gitlab-ci.py new file mode 100644 index 0000000000000000000000000000000000000000..126f8787a1e12535cc15e652b144fef8b927f11d --- /dev/null +++ b/make-gitlab-ci.py @@ -0,0 +1,43 @@ +# coding=UTF-8 + +from __future__ import print_function, absolute_import, division +import os +import os.path + +if __name__ == '__main__': + dirs = [dir for dir in os.listdir('.') if os.path.isdir(dir)] + boxes = [box for box in dirs if os.path.exists(os.path.join(box, 'Vagrantfile'))] + + with open('.gitlab-ci.yml', 'wb') as ci: + ci.write(b''' +variables: + PREFIX: henrietta/ +.job_template: &box_build_job + stage: build + tags: + - vagrant + - develop19216822423 + script: + - cd $BOX + - vagrant up + - vagrant package --out $BOX.box + - mv -f $BOX.box /var/www/html/dev/vagrant/$BOX.box + - vagrant box remove $PREFIX/$BOX + - vagrant box add $PREFIX/$BOX file:///var/www/html/dev/vagrant/$BOX.box + - cd .. + after_script: + - vagrant destroy -f + +''') + + for box in boxes: + ci.write(b''' +build_%s: + <<: *box_build_job + variables: + BOX: %s + only: + - master + - /^%s\-(.*)$/ + +''' % (box, box, box)) \ No newline at end of file diff --git a/nodejs4/build.sh b/nodejs4/build.sh new file mode 100644 index 0000000000000000000000000000000000000000..dbd2351e72b706fada441894ab67e5a5b4dec407 --- /dev/null +++ b/nodejs4/build.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env bash + +bash wynurz.sh node4 +npm cache clean +npm install -g --unsafe-perm bower gulp diff --git a/nodejs5_jdk_adk25/Vagrantfile b/nodejs5_jdk_adk25/Vagrantfile deleted file mode 100644 index 27a7b5bceeb27547c4608819c4006bd171fcc67e..0000000000000000000000000000000000000000 --- a/nodejs5_jdk_adk25/Vagrantfile +++ /dev/null @@ -1,52 +0,0 @@ - -Vagrant.configure("2") do |config| - config.vm.box = "debian/contrib-jessie64" - - config.vm.provider "virtualbox" do |v| - v.memory = 1260 - v.cpus = 3 - end - - config.vm.provision "shell", inline: <<-SHELL - apt-get update - apt-get install -y curl git build-essential unzip python zipalign - - wget -O - https://deb.nodesource.com/setup_5.x | bash - - apt-get install -y nodejs - npm install -g --unsafe-perm bower gulp cordova@6.3.1 karma - - cd /home/vagrant - wget -nv http://dev.dms-serwis.com.pl/misc/jdk-8u121-linux-x64.tar.gz - tar xzf jdk-8u121-linux-x64.tar.gz - rm -f jdk-8u121-linux-x64.tar.gz - update-alternatives --install /usr/bin/java java /home/vagrant/jdk1.8.0_121/bin/java 100 - update-alternatives --install /usr/bin/javac javac /home/vagrant/jdk1.8.0_121/bin/javac 100 - update-alternatives --install /usr/bin/jar jar /home/vagrant/jdk1.8.0_121/bin/jar 100 - update-alternatives --install /usr/bin/jarsigner jarsigner /home/vagrant/jdk1.8.0_121/bin/jarsigner 100 - echo """ -export PATH=\\$PATH:/home/vagrant/platform-tools:/home/vagrant/build-tools/25.0.1:/home/vagrant/tools -export ANDROID_HOME=/home/vagrant -""" >> /home/vagrant/.bashrc - - wget -nv http://dev.dms-serwis.com.pl/misc/tools_r25.2.3-linux.zip - unzip tools_r25.2.3-linux.zip - rm -f tools_r25.2.3-linux.zip - echo y | ./tools/bin/sdkmanager "build-tools;25.0.1" "build-tools;24.0.0" "platforms;android-25" "platforms;android-24" "platforms;android-23" "platform-tools" "extras;android;m2repository" "extras;google;m2repository" "extras;google;google_play_services" - - chown -R vagrant:vagrant /home/vagrant - chown -R vagrant:vagrant /home/vagrant/.bashrc - - # Minify - apt-get clean - dd if=/dev/zero of=/EMPTY bs=1M - rm -f /EMPTY - rm -rf /tmp/* - - # udev rules - rm /etc/udev/rules.d/70-persistent-net.rules || true - mkdir /etc/udev/rules.d/70-persistent-net.rules || true - rm -rf /dev/.udev/ || true - rm /lib/udev/rules.d/75-persistent-net-generator.rules || true - - SHELL -end diff --git a/nodejs5_jdk_adk25/build_as_vagrant.sh b/nodejs5_jdk_adk25/build_as_vagrant.sh new file mode 100644 index 0000000000000000000000000000000000000000..e91e95d3153b7d7ca979bfa02098f2bb4704713b --- /dev/null +++ b/nodejs5_jdk_adk25/build_as_vagrant.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +cd ~ + +sudo apt-get install -y unzip wget tar + +echo """ +export PATH=\\$PATH:/home/vagrant/platform-tools:/home/vagrant/build-tools/25.0.1:/home/vagrant/tools +export ANDROID_HOME=/home/vagrant +""" >> /home/vagrant/.bashrc +source /home/vagrant/.bashrc + +(bash wynurz.sh node5 && +npm install -g --unsafe-perm bower gulp cordova@6.3.1 karma) & + +(wget -nv http://dev.dms-serwis.com.pl/misc/tools_r25.2.3-linux.zip && + unzip tools_r25.2.3-linux.zip && + rm -f tools_r25.2.3-linux.zip) & + +wget -nv http://dev.dms-serwis.com.pl/misc/jdk-8u121-linux-x64.tar.gz +tar xzf jdk-8u121-linux-x64.tar.gz +rm -f jdk-8u121-linux-x64.tar.gz +update-alternatives --install /usr/bin/java java /home/vagrant/jdk1.8.0_121/bin/java 100 +update-alternatives --install /usr/bin/javac javac /home/vagrant/jdk1.8.0_121/bin/javac 100 +update-alternatives --install /usr/bin/jar jar /home/vagrant/jdk1.8.0_121/bin/jar 100 +update-alternatives --install /usr/bin/jarsigner jarsigner /home/vagrant/jdk1.8.0_121/bin/jarsigner 100 + +wait %2 + +echo y | ./tools/bin/sdkmanager "build-tools;25.0.1" "build-tools;24.0.0" "platforms;android-25" "platforms;android-24" "platforms;android-23" "platform-tools" "extras;android;m2repository" "extras;google;m2repository" "extras;google;google_play_services" + +wait %1 + +(npm cache clean && +) $ + +$(bash wynurz.sh jdk && +bash wynurz.sh adt) $ + + + + + echo y | ./tools/bin/sdkmanager "build-tools;25.0.1" "build-tools;24.0.0" "platforms;android-25" "platforms;android-24" "platforms;android-23" "platform-tools" "extras;android;m2repository" "extras;google;m2repository" "extras;google;google_play_services" + + + diff --git a/run.sh b/run.sh new file mode 100644 index 0000000000000000000000000000000000000000..e59f247ad6eafbc19cf744c630af6be1e3976e2e --- /dev/null +++ b/run.sh @@ -0,0 +1,9 @@ +#!/usr/bin/env bash + +shutdown -h +30 "Timeout on VM creation" + +if [ ! -f "build.sh" ]; then + sudo -H -u vagrant bash build_as_vagrant.sh +else + bash build.sh +fi \ No newline at end of file diff --git a/wynurz.sh b/wynurz.sh new file mode 100644 index 0000000000000000000000000000000000000000..d72cb65aaefd6d58dd4fb2553e038c97d6f84ac4 --- /dev/null +++ b/wynurz.sh @@ -0,0 +1,73 @@ +#!/usr/bin/env bash + +if [ $1 == "java" ]; then + # Oracle Java JRE + apt-get install -y debconf-utils + echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" > /etc/apt/sources.list.d/webupd8team-java.list + echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" >> /etc/apt/sources.list.d/webupd8team-java.list + apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886 + apt-get update + echo debconf shared/accepted-oracle-license-v1-1 select true | debconf-set-selections + apt-get install -y oracle-java8-installer +fi + + +if [ $1 == "javacass" ]; then + bash wynurz.sh java + bash wynurz.sh cassandra +fi + +if [ $1 == "node4" ]; then + apt-get install -y curl git build-essential unzip + curl -sL https://deb.nodesource.com/setup_4.x | bash - + apt-get install -y nodejs +fi + +if [ $1 == "node5" ]; then + apt-get install -y curl git build-essential unzip + curl -sL https://deb.nodesource.com/setup_5.x | bash - + apt-get install -y nodejs +fi + +if [ $1 == "jdk" ]; then + cd /home/vagrant + + rm -f jdk-8u121-linux-x64.tar.gz + + +fi + + +if [ $1 == "cassandra" ]; then + # Install Apache Cassandra + echo "deb http://debian.datastax.com/community stable main" > /etc/apt/sources.list.d/cassandra.sources.list + curl -L http://debian.datastax.com/debian/repo_key | apt-key add - + apt-get update + apt-get install -y cassandra=3.0.9 dsc30 cassandra-tools + + $(sleep 30 && + service cassandra stop && + killall java; + killall cassandra; + rm -rf /var/lib/cassandra/*) $ +fi + +if [ $1 == "zookeeper" ]; then + apt-get install -y zookeeper zookeeperd + (service zookeeper stop && + sleep 20 && + service zookeeper stop) & +fi + +if [ $1 == "rabbitmq" ]; then + apt-get install -y rabbitmq-server=3.3.5-1.1 + service rabbitmq-server stop & +fi + +if [ $1 == "postgresql" ]; then + apt-get install -y postgresql-9.4 + (echo "host all all 0.0.0.0/0 md5" >> /etc/postgresql/9.4/main/pg_hba.conf && + echo "listen_addresses = '*'" >> /etc/postgresql/9.4/main/postgresql.conf && + sudo -u postgres psql --c "ALTER USER postgres WITH PASSWORD 'postgres';" && + systemctl stop postgresql.service) & +fi \ No newline at end of file