Guest User

Untitled

a guest
Jan 30th, 2019
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.35 KB | None | 0 0
  1. image: lorisleiva/laravel-docker:latest
  2.  
  3. .init_ssh: &init_ssh |
  4. eval $(ssh-agent -s)
  5. echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
  6. mkdir -p ~/.ssh
  7. chmod 700 ~/.ssh
  8. [[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
  9.  
  10. # Replace the last line with the following lines if you'd rather
  11. # leave StrictHostKeyChecking enabled (replace yourdomain.com):
  12. #
  13. # ssh-keyscan yourdomain.com >> ~/.ssh/known_hosts
  14. # chmod 644 ~/.ssh/known_hosts
  15.  
  16. .change_file_permissions: &change_file_permissions |
  17. find . -type f -not -path "./vendor/*" -exec chmod 664 {} \;
  18. find . -type d -not -path "./vendor/*" -exec chmod 775 {} \;
  19.  
  20. .prepare_env_file: &prepare_env_file |
  21. cat > .env <<EOF
  22. APP_ENV="production"
  23. APP_KEY="$APP_KEY"
  24. APP_DEBUG=false
  25. APP_LOG_LEVEL="debug"
  26. APP_URL="$APP_URL"
  27. LOG_CHANNEL="stack"
  28. DB_CONNECTION="mysql"
  29. DB_HOST="$DB_HOST"
  30. DB_PORT=3306
  31. DB_DATABASE="$DB_DATABASE"
  32. DB_USERNAME="$DB_USERNAME"
  33. DB_PASSWORD="$DB_PASSWORD"
  34. SESSION_LIFETIME=120
  35. QUEUE_CONNECTION="database"
  36. MAIL_DRIVER="sparkpost"
  37. SPARKPOST_SECRET="$SPARKPOST_SECRET"
  38. MEDIA_DEFAULT_DISK="$MEDIA_DEFAULT_DISK"
  39. FILESYSTEM_DRIVER="$FILESYSTEM_DRIVER"
  40. AZURE_STORAGE_NAME="$AZURE_STORAGE_NAME"
  41. AZURE_STORAGE_KEY="$AZURE_STORAGE_KEY"
  42. AZURE_STORAGE_CONTAINER="$AZURE_STORAGE_CONTAINER"
  43. AFRICAS_TALKING_USERNAME="$AFRICAS_TALKING_USERNAME"
  44. AFRICAS_TALKING_KEY="$AFRICAS_TALKING_KEY"
  45. ADMIN_NOTIFICATION_EMAIL="$ADMIN_NOTIFICATION_EMAIL"
  46. ADMIN_NOTIFICATION_PHONE="$ADMIN_NOTIFICATION_PHONE"
  47. SENTRY_LARAVEL_DSN="$SENTRY_LARAVEL_DSN"
  48. EOF
  49.  
  50. # echo -e "APP_ENV=production
  51. # APP_KEY="$APP_KEY"
  52. # APP_DEBUG=false
  53. # APP_LOG_LEVEL=debug
  54. # APP_URL="$APP_URL"
  55. # LOG_CHANNEL=stack
  56. # DB_CONNECTION=mysql
  57. # DB_HOST="$DB_HOST"
  58. # DB_PORT=3306
  59. # DB_DATABASE="$DB_DATABASE"
  60. # DB_USERNAME="$DB_USERNAME"
  61. # DB_PASSWORD="$DB_PASSWORD"
  62. # SESSION_LIFETIME=120
  63. # QUEUE_CONNECTION=database
  64. # MAIL_DRIVER=sparkpost
  65. # SPARKPOST_SECRET="$SPARKPOST_SECRET"
  66. # MEDIA_DEFAULT_DISK="$MEDIA_DEFAULT_DISK"
  67. # FILESYSTEM_DRIVER="$FILESYSTEM_DRIVER"
  68. # AZURE_STORAGE_NAME="$AZURE_STORAGE_NAME"
  69. # AZURE_STORAGE_KEY="$AZURE_STORAGE_KEY"
  70. # AZURE_STORAGE_CONTAINER="$AZURE_STORAGE_CONTAINER"
  71. # AFRICAS_TALKING_USERNAME="$AFRICAS_TALKING_USERNAME"
  72. # AFRICAS_TALKING_KEY="$AFRICAS_TALKING_KEY"
  73. # ADMIN_NOTIFICATION_EMAIL="$ADMIN_NOTIFICATION_EMAIL"
  74. # ADMIN_NOTIFICATION_PHONE="$ADMIN_NOTIFICATION_PHONE"
  75. # SENTRY_LARAVEL_DSN="$SENTRY_LARAVEL_DSN"
  76. # " > .env
  77.  
  78. #composer:
  79. # stage: build
  80. # cache:
  81. # key: ${CI_COMMIT_REF_SLUG}-composer
  82. # paths:
  83. # - vendor/
  84. # script:
  85. # - *prepare_env_file
  86. # - composer install --prefer-dist --no-ansi --no-interaction --no-progress --no-scripts --ignore-platform-reqs
  87. # artifacts:
  88. # expire_in: 1 day
  89. # paths:
  90. # - vendor/
  91. # - .env
  92. # only:
  93. # - master
  94.  
  95. production:
  96. stage: deploy
  97. cache:
  98. key: ${CI_COMMIT_REF_SLUG}-composer
  99. paths:
  100. - vendor/
  101. script:
  102. - *init_ssh
  103. - *change_file_permissions
  104. - *prepare_env_file
  105. - composer install --prefer-dist --no-ansi --no-interaction --no-progress --no-scripts --ignore-platform-reqs
  106. - php artisan deploy <your domain> -s upload
  107. artifacts:
  108. expire_in: 1 day
  109. paths:
  110. - vendor/
  111. environment:
  112. name: production
  113. url: <Your domain - this is configured in gitlab environments>
  114. when: manual
  115. only:
  116. - master
Add Comment
Please, Sign In to add comment