From a36a0838264f3761f06b17a23c7d177e3662a8a1 Mon Sep 17 00:00:00 2001 From: Jacob Cody Wimer Date: Tue, 9 Jan 2018 07:58:37 -0500 Subject: [PATCH 1/3] Moved files out of the root of the project to bin and deploy where they belong --- bin/fix-permissions.sh | 6 ++++++ bin/rails-dev-db-create.sh | 6 ++++++ bin/rails-dev-run.sh | 10 ++++++++++ bin/run-all-tests.sh | 6 ++++++ tmux.sh => bin/tmux.sh | 6 +++++- .../.rails-dev-Dockerfile.swp | Bin 12288 -> 12288 bytes deploy/deploy-prod.sh | 13 ++++++++----- deploy/deploy-test.sh | 11 ++++++----- deploy/docker-compose-prod-full-stack.yml | 10 ++++++---- .../rails-dev-Dockerfile | 0 .../rails-prod-Dockerfile | 0 .../rails-prod-create-image.sh | 6 ++---- fix-permissions.sh | 3 --- rails-dev-db.sh | 2 -- rails-dev.sh | 11 ----------- rails-worker-prod.sh | 16 ---------------- run-all-tests.sh | 2 -- 17 files changed, 55 insertions(+), 53 deletions(-) create mode 100755 bin/fix-permissions.sh create mode 100755 bin/rails-dev-db-create.sh create mode 100755 bin/rails-dev-run.sh create mode 100755 bin/run-all-tests.sh rename tmux.sh => bin/tmux.sh (60%) rename app/controllers/.schools_controller.rb.swp => deploy/.rails-dev-Dockerfile.swp (70%) rename rails-dev-Dockerfile => deploy/rails-dev-Dockerfile (100%) rename rails-prod-Dockerfile => deploy/rails-prod-Dockerfile (100%) rename rails-prod.sh => deploy/rails-prod-create-image.sh (58%) delete mode 100755 fix-permissions.sh delete mode 100755 rails-dev-db.sh delete mode 100755 rails-dev.sh delete mode 100755 rails-worker-prod.sh delete mode 100755 run-all-tests.sh diff --git a/bin/fix-permissions.sh b/bin/fix-permissions.sh new file mode 100755 index 0000000..a675e38 --- /dev/null +++ b/bin/fix-permissions.sh @@ -0,0 +1,6 @@ +#!/bin/bash +project_dir="$(dirname $( dirname $(readlink -f ${BASH_SOURCE[0]})))" + +USERNAME=$USER +sudo chown -R ${USERNAME}:${USERNAME} ${project_dir}/. +sudo chmod -R 774 ${project_dir}/. diff --git a/bin/rails-dev-db-create.sh b/bin/rails-dev-db-create.sh new file mode 100755 index 0000000..aa63596 --- /dev/null +++ b/bin/rails-dev-db-create.sh @@ -0,0 +1,6 @@ +#!/bin/bash +project_dir="$(dirname $( dirname $(readlink -f ${BASH_SOURCE[0]})))" + +cd ${project_dir} +rake db:setup +rake db:migrate RAILS_ENV=test diff --git a/bin/rails-dev-run.sh b/bin/rails-dev-run.sh new file mode 100755 index 0000000..52feef9 --- /dev/null +++ b/bin/rails-dev-run.sh @@ -0,0 +1,10 @@ +#!/bin/bash -e +project_dir="$(dirname $( dirname $(readlink -f ${BASH_SOURCE[0]})))" + +if [ $# != 1 ]; then + echo "Please enter docker image name for the rails development environment" + exit 1 +fi + +docker build -t $1 -f ${project_dir}/deploy/rails-dev-Dockerfile ${project_dir} +docker run -it -p 3000:3000 -v ${project_dir}:/rails $1 /bin/bash diff --git a/bin/run-all-tests.sh b/bin/run-all-tests.sh new file mode 100755 index 0000000..961a6e7 --- /dev/null +++ b/bin/run-all-tests.sh @@ -0,0 +1,6 @@ +#!/bin/bash +project_dir="$(dirname $( dirname $(readlink -f ${BASH_SOURCE[0]})))" + +cd ${project_dir} +rake db:migrate RAILS_ENV=test +rake test diff --git a/tmux.sh b/bin/tmux.sh similarity index 60% rename from tmux.sh rename to bin/tmux.sh index c51fc80..c928539 100755 --- a/tmux.sh +++ b/bin/tmux.sh @@ -1,4 +1,7 @@ #!/bin/bash +project_dir="$(dirname $( dirname $(readlink -f ${BASH_SOURCE[0]})))" + +cd ${project_dir} CURRENT_SESSION=wrestlingdev tmux new-session -d -s $CURRENT_SESSION tmux send-keys 'vim' 'C-m' @@ -6,7 +9,8 @@ tmux send-keys ':NERDTree' 'C-m' tmux rename-window rails-vim tmux new-window tmux rename-window rails -tmux send-keys 'bash rails-dev.sh wrestlingdev' 'C-m' +tmux send-keys 'bash bin/rails-dev-run.sh wrestlingdev' 'C-m' +tmux send-keys 'bash bin/rails-dev-db-create.sh' 'C-m' tmux new-window tmux rename-window rails-git tmux select-window -t 0 diff --git a/app/controllers/.schools_controller.rb.swp b/deploy/.rails-dev-Dockerfile.swp similarity index 70% rename from app/controllers/.schools_controller.rb.swp rename to deploy/.rails-dev-Dockerfile.swp index cd088789f6f0c16d2e45d1e3b250f69b887aa69b..95e684a66b8f6a2675103a245ac48d37805a0c5b 100644 GIT binary patch literal 12288 zcmeI2y>1jS5P%&-NeF@$a4u2=k@kG~K|~ah0vAvOmxGHg{0qFhzB?1Iy|KNCLP6+w z0iJ*dfQEvGJOK3RprZl_L`%c?Zu6rkQfgoFvwOR7DLr7xM%`ko32zjYkKQ4_t4~fi*+&H#jh4V`4F5I{u%;z~vMXn5_aj9Gc zt5Mw~tHO4q632GH1T=sKjxi*5;5YR84txW?0H1+Rz(-&k_yC0cya8~a0W^RH&;S}h184vZpaC?12L4k6R~vQ8 zVyRioT@T*C?%rxHFVN{)4L<5zY2Iu%7U+Y@;M?iSBSPluby}r^n21U z71@Cz+C(-r36u-JWZA_MLdVCc(lm0E70xo(<5sX|MhmGshRtWf%7n8evGMqxv8$8` zpD<+-uDr}d|8AQdnxzl>8xTp)(8}Qo6*@Oa5BG;YkUd71g{ONHaCDgp>U)AFMtd%` z2pfgL*17GUaAFXK!%jefy)`9c#&geALc?fnjV4NPT~^R0 z6;E9mxHTocm@cEZkSdLYb3%K`)lrr99@r+Vh6j1DO_8VEhoh2ft!9JTBHp|_Rh_9$ Fkw2`=^_Tzv literal 12288 zcmeI2O^6&t6vu0WA6Yd<6cs_CvI}NI#-3yoNNBQ>7#9_zE@Y#aWf^+9Yqs0;bWN(N zci1EvL@xosyP(mF2*!)xLA;6aq^JkQi+AxNLZV(`{8v|h&Ccv@0y!9|fge3n{rc6b z|9e%{%T{~Wi_bhq_c?nBKKBsv@#p)F|FvsBnSPWIp9d?td83cE3)u2TX5=+(*c7bC zWwS4sRB@Cn;lb+1pA?cYN7 zOz+;MTPG*B(fjT_Rx_|)tpZj7tAJI&Dqt0`3RnfK0#s})zu!T~58x|s9=r(_!5H{? z96rH$a0EO7T(B4H0gr%9;L>J7z5`!?_kjSCax7!H$ z5WEN81!sW|roa|(@mA;t&Ve4-2`0c5rg*r{)v|7`%KDKz+$%KDRwP>6i-Fs zby=cJXJxPG`CxUE&d~YN(&Kv zXzsuf>|_dyDc1~Shtp%C8>uN*C#*ry%!R&I{a|=TdEM2p?346)w#)=oB9+SY!W534 z(T?Cvg?e$!``PV&7%4{M2v4g}@N_A3R>z*F3I%gCJJ06y zL#D?N1$5@|QW{+%PL%j@8ZbFk8$rW02j&n}!wp!F`icc}91&%|O<~I&C_y1j$!0@k zs%3_o2|Y=VNk)Cd-S+$wk}6JR=m|9OZkH!iGL`ly7xB|Pn&wwdZPmQc@E5tWOGMpGU>KD6W)txafMyc}2qEX&N#wpl-sm(|edr^wlhq(kxWn7-oV6S8#GUWa3waW4Z(+O$NnERfd!(|ng6?5aVpLaGo`_fxBg?Y`%p1=Ohb!ef5 zj>83)?Kzn+reIz;TGdK5_vh-(^%AMCQR^%*dR}J!pPH@QH+MI)cHAhIkK($~yTynd z)XbiBcGppQpldAvlo^grH`YSChLIxba&xLp(6X(zp{?Gzuv6d_4O>{BMN6U5gUR+S zl<;t5wMBVQ&+Cjg>jCSo#Cs{l{)Q!z;T=&=4eE}3V>BDSOBY database.sql" echo "mysql -u guy -ppassword -h host database_name < database.sql" + +rm ${project_dir}/deploy/prod.env diff --git a/deploy/deploy-test.sh b/deploy/deploy-test.sh index 21116f5..c9a59bf 100755 --- a/deploy/deploy-test.sh +++ b/deploy/deploy-test.sh @@ -1,6 +1,7 @@ -cd .. -docker build -t wrestlingdev -f rails-prod-Dockerfile . -cd deploy -docker-compose -f docker-compose-test.yml kill -docker-compose -f docker-compose-test.yml up -d +#!/bin/bash +project_dir="$(dirname $( dirname $(readlink -f ${BASH_SOURCE[0]})))" + +docker build -t wrestlingdev -f ${project_dir}/deploy/rails-prod-Dockerfile ${project_dir} +docker-compose -f ${project_dir}/deploy/docker-compose-test.yml kill +docker-compose -f ${project_dir}/deploy/docker-compose-test.yml up -d echo Make sure your local mysql database has a wrestlingtourney db diff --git a/deploy/docker-compose-prod-full-stack.yml b/deploy/docker-compose-prod-full-stack.yml index 4bc765a..be57687 100644 --- a/deploy/docker-compose-prod-full-stack.yml +++ b/deploy/docker-compose-prod-full-stack.yml @@ -2,29 +2,31 @@ app: extends: file: docker-compose-common.yml service: app + image: wrestlingdev-prod links: - db restart: always - env_file: + env_file: - ./prod.env db: extends: file: docker-compose-common.yml service: db restart: always - env_file: + env_file: - ./prod.env worker: extends: file: docker-compose-common.yml service: worker + image: wrestlingdev-prod links: - db restart: always - env_file: + env_file: - ./prod.env command: bundle exec rake jobs:work RAILS_ENV=production - + memcached: extends: file: docker-compose-common.yml diff --git a/rails-dev-Dockerfile b/deploy/rails-dev-Dockerfile similarity index 100% rename from rails-dev-Dockerfile rename to deploy/rails-dev-Dockerfile diff --git a/rails-prod-Dockerfile b/deploy/rails-prod-Dockerfile similarity index 100% rename from rails-prod-Dockerfile rename to deploy/rails-prod-Dockerfile diff --git a/rails-prod.sh b/deploy/rails-prod-create-image.sh similarity index 58% rename from rails-prod.sh rename to deploy/rails-prod-create-image.sh index e03aa95..006f5f6 100755 --- a/rails-prod.sh +++ b/deploy/rails-prod-create-image.sh @@ -1,16 +1,14 @@ #!/bin/bash -e -docker pull ruby:2.2.3 - +project_dir="$(dirname $( dirname $(readlink -f ${BASH_SOURCE[0]})))" if [ $# != 1 ]; then echo "Please enter docker image name for the rails development environment" exit 1 fi -docker build -t $1 -f rails-prod-Dockerfile . +docker build -t $1 -f ${project_dir}/deploy/rails-prod-Dockerfile ${project_dir}/. #Kill and remove containers gracefully without error if none are running docker ps | grep "Exit" | awk '{print $1}' | while read -r id ; do docker kill $id done -docker run -h $HOSTNAME -d --restart=always --env-file $WRESTLINGDEV_ENV_FILE -v /etc/localtime:/etc/localtime -p 80:80 -p 443:443 $1 diff --git a/fix-permissions.sh b/fix-permissions.sh deleted file mode 100755 index 7578b9f..0000000 --- a/fix-permissions.sh +++ /dev/null @@ -1,3 +0,0 @@ -USERNAME=$USER -sudo chown -R ${USERNAME}:${USERNAME} . -sudo chmod -R 774 . diff --git a/rails-dev-db.sh b/rails-dev-db.sh deleted file mode 100755 index 7b59204..0000000 --- a/rails-dev-db.sh +++ /dev/null @@ -1,2 +0,0 @@ -rake db:setup -rake db:migrate RAILS_ENV=test diff --git a/rails-dev.sh b/rails-dev.sh deleted file mode 100755 index 03ed3f9..0000000 --- a/rails-dev.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash -e - -if [ $# != 1 ]; then - echo "Please enter docker image name for the rails development environment" - exit 1 -fi - -APPPATH="$(pwd)" - -docker build -t $1 -f rails-dev-Dockerfile . -docker run -it -p 3000:3000 -v ${APPPATH}:/rails $1 /bin/bash \ No newline at end of file diff --git a/rails-worker-prod.sh b/rails-worker-prod.sh deleted file mode 100755 index 3e75cc7..0000000 --- a/rails-worker-prod.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash -e -docker pull ruby:2.2.3 - -if [ $# != 1 ]; then - echo "Please enter docker image name for the rails development environment" - exit 1 -fi - -docker build -t $1 -f rails-prod-Dockerfile . - -#Kill and remove containers gracefully without error if none are running -docker ps | grep "Exit" | awk '{print $1}' | while read -r id ; do - docker kill $id -done - -docker run -h $HOSTNAME -d --restart=always --env-file $WRESTLINGDEV_ENV_FILE -v /etc/localtime:/etc/localtime $1 bundle exec rake jobs:work RAILS_ENV=production \ No newline at end of file diff --git a/run-all-tests.sh b/run-all-tests.sh deleted file mode 100755 index 7452d87..0000000 --- a/run-all-tests.sh +++ /dev/null @@ -1,2 +0,0 @@ -rake db:migrate RAILS_ENV=test -rake test \ No newline at end of file From ff4cb5254154401ee305c2312edd9dc2c0342810 Mon Sep 17 00:00:00 2001 From: Jacob Cody Wimer Date: Tue, 9 Jan 2018 07:59:49 -0500 Subject: [PATCH 2/3] Upgrade packages upon build for prod --- deploy/rails-prod-Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/deploy/rails-prod-Dockerfile b/deploy/rails-prod-Dockerfile index 5937155..b1b53a4 100644 --- a/deploy/rails-prod-Dockerfile +++ b/deploy/rails-prod-Dockerfile @@ -1,6 +1,7 @@ FROM ruby:2.4.2 RUN apt-get -qq update \ + && DEBIAN_FRONTEND=noninteractive apt-get -qq upgrade -y \ && DEBIAN_FRONTEND=noninteractive apt-get -qq install -y \ build-essential \ libssl-dev \ From 6d75d26f3b76c64fe83960a71c3d1e8d3372231b Mon Sep 17 00:00:00 2001 From: Jacob Cody Wimer Date: Wed, 10 Jan 2018 07:32:17 -0500 Subject: [PATCH 3/3] Copyright current year --- app/views/layouts/_footer.html.erb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/views/layouts/_footer.html.erb b/app/views/layouts/_footer.html.erb index 74ec69d..6b4673c 100644 --- a/app/views/layouts/_footer.html.erb +++ b/app/views/layouts/_footer.html.erb @@ -5,8 +5,8 @@
- © 2015 wrestlingdev.com + © <%= Time.now.year %> wrestlingdev.com - + - +