From 28d1eb4ad3031e51dd90546a3fa05e87ae63dd89 Mon Sep 17 00:00:00 2001 From: Thedro Neely Date: Mon, 1 Jul 2019 19:11:49 -0400 Subject: drone: Add .drone.yml --- .drone.yml | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 .drone.yml diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..1d2ea4b --- /dev/null +++ b/.drone.yml @@ -0,0 +1,104 @@ +kind: pipeline +name: build-package-deploy + +steps: +- name: build + image: composer:1.8.6 + commands: + - composer -V + - composer install + +- name: secrets + image: alpine:3.10 + commands: + - mv AppConfigBuild.php AppConfig.php + +- name: synchronize + image: alpine:3.10 + environment: + SSH_KEY: + from_secret: ssh_key + SSH_KEY_PASSWORD: + from_secret: ssh_key_password + SERVER_IP: + from_secret: server_ip + SERVER_USER: + from_secret: server_user + commands: + - apk add openssh + - echo "$SSH_KEY" > ssh-key && chmod 600 ssh-key + - eval $(ssh-agent) + - echo "$SSH_KEY_PASSWORD" | ssh-add ssh-key + + - > + scp -r -o stricthostkeychecking=no -vT -i ssh-key + $SERVER_USER@$SERVER_IP:/srv/http/edwinmattiacci.com/bootstrap/comments/comments + bootstrap/comments/ + + - ls -la bootstrap/comments/comments/threads + +- name: minify + image: alpine:3.10 + commands: + - wget https://github.com/tdewolff/minify/releases/download/v2.5.0/minify_2.5.0_linux_amd64.tar.gz + - tar -xvf minify_2.5.0_linux_amd64.tar.gz + - ./minify --version + - ./minify public/css/app.css > public/css/app.min.$(date +%d%m%Y%H%M).css + - ./minify public/dist/bar-ui.css > public/dist/bar-ui-css.min.$(date +%d%m%Y%H%M).css + - ./minify public/dist/bar-ui.js > public/dist/bar-ui-js.min.$(date +%d%m%Y%H%M).js + + - sed -i "s|app.css|$(find public/css -name "app.min*" | awk -F/ '{print $NF}')|" views/partials/header.common.php + - sed -i "s|bar-ui.css|$(find public/dist -name "bar-ui-css*" | awk -F/ '{print $NF}')|" views/partials/header.common.php + - sed -i "s|bar-ui.js|$(find public/dist -name "bar-ui-js*" | awk -F/ '{print $NF}')|" views/partials/footer.php + +- name: prepare + image: alpine:3.10 + commands: + - sed -i 's|/posts/|https://www.edwinmattiacci.com/posts/|' generators/hugo/config.toml + - head -1 generators/hugo/config.toml + - mkdir public/posts + - cd generators/hugo && ln -s ../../public/posts/ public + +- name: hugo + image: alpine:3.10 + commands: + - apk add hugo + - hugo version + - cd generators/hugo && hugo + - cd ../../ && cp public/posts/sitemap.xml public/sitemap.xml + +- name: deploy + image: alpine:3.10 + environment: + SSH_KEY: + from_secret: ssh_key + SSH_KEY_PASSWORD: + from_secret: ssh_key_password + SERVER_IP: + from_secret: server_ip + SERVER_USER: + from_secret: server_user + commands: + - apk add openssh + - echo "$SSH_KEY" > ssh-key && chmod 600 ssh-key + - eval $(ssh-agent) + - echo "$SSH_KEY_PASSWORD" | ssh-add ssh-key + - > + tar -czf edwinmattiacci.tar.gz assets bootstrap controllers + generators model public vendor views AppConfig.php composer.json + composer.lock + - > + scp -r -o stricthostkeychecking=no -vT -i ssh-key + edwinmattiacci.tar.gz $SERVER_USER@$SERVER_IP:/srv/deploys/edwinmattiacci.com/ + + - > + ssh -o stricthostkeychecking=no -vT -i ssh-key $SERVER_USER@$SERVER_IP + 'export DATE=$(date +%H%M-%d%m-%Y) && + cd /srv/deploys/edwinmattiacci.com && + mkdir edwinmattiacci.com-$DATE && + tar -xvf edwinmattiacci.tar.gz -C edwinmattiacci.com-$DATE && + rm edwinmattiacci.tar.gz && + ln -s edwinmattiacci.com-$DATE edwinmattiacci.com-deploy-$DATE && + mv -Tf edwinmattiacci.com-deploy-$DATE edwinmattiacci.com-deploy && + chown nginx:nginx -R edwinmattiacci.com-deploy && + ls -la' -- cgit v1.2.3