| 
									
										
										
										
											2022-09-27 08:32:11 +01:00
										 |  |  | kind: pipeline
 | 
					
						
							|  |  |  | type: docker
 | 
					
						
							|  |  |  | name: deploy
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | steps:
 | 
					
						
							|  |  |  | - name: submodules
 | 
					
						
							| 
									
										
										
										
											2022-09-27 21:28:59 +01:00
										 |  |  |   image: archlinux
 | 
					
						
							| 
									
										
										
										
											2022-09-27 08:32:11 +01:00
										 |  |  |   commands: 
 | 
					
						
							| 
									
										
										
										
											2022-09-27 21:28:59 +01:00
										 |  |  |   - pacman -Sy --noconfirm git >/dev/null
 | 
					
						
							| 
									
										
										
										
											2022-09-27 08:32:11 +01:00
										 |  |  |   - git submodule update --init --recursive
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-27 22:13:58 +01:00
										 |  |  | - name: build
 | 
					
						
							|  |  |  |   image: archlinux
 | 
					
						
							|  |  |  |   environment:
 | 
					
						
							|  |  |  |     PYTHON_ENV: python python-pipenv python-setuptools
 | 
					
						
							|  |  |  |   when:
 | 
					
						
							|  |  |  |     branch:
 | 
					
						
							|  |  |  |     - drone
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   commands:
 | 
					
						
							|  |  |  |     # set up python
 | 
					
						
							|  |  |  |     - pacman -Sy --noconfirm make $PYTHON_ENV > /dev/null
 | 
					
						
							|  |  |  |     - pipenv install
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     # build site
 | 
					
						
							|  |  |  |     - make all
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-27 08:32:11 +01:00
										 |  |  | - name: deploy
 | 
					
						
							| 
									
										
										
										
											2022-09-27 22:40:49 +01:00
										 |  |  |   image: ubuntu
 | 
					
						
							| 
									
										
										
										
											2022-09-27 08:32:11 +01:00
										 |  |  |   environment:
 | 
					
						
							|  |  |  |     HOST:
 | 
					
						
							|  |  |  |       from_secret: host
 | 
					
						
							|  |  |  |     USER:
 | 
					
						
							|  |  |  |       from_secret: user
 | 
					
						
							|  |  |  |     SSH_KEY:
 | 
					
						
							|  |  |  |       from_secret: ssh_key
 | 
					
						
							|  |  |  |   when:
 | 
					
						
							|  |  |  |     branch:
 | 
					
						
							|  |  |  |     - drone
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   commands:
 | 
					
						
							| 
									
										
										
										
											2022-09-27 22:08:23 +01:00
										 |  |  |     # install deps
 | 
					
						
							| 
									
										
										
										
											2022-09-27 22:40:49 +01:00
										 |  |  |     - apt-get update -qq > /dev/null
 | 
					
						
							|  |  |  |     - apt-get install ssh rsync -qq > /dev/null
 | 
					
						
							| 
									
										
										
										
											2022-09-27 08:32:11 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     #  configure ssh
 | 
					
						
							|  |  |  |     - eval $(ssh-agent -s)
 | 
					
						
							|  |  |  |     - mkdir -p ~/.ssh
 | 
					
						
							|  |  |  |     - echo "$SSH_KEY" > ~/.ssh/id_rsa
 | 
					
						
							|  |  |  |     - chmod 600 ~/.ssh/id_rsa
 | 
					
						
							|  |  |  |     - ssh-add
 | 
					
						
							|  |  |  |     - echo "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     # run operations on remote host
 | 
					
						
							| 
									
										
										
										
											2022-09-27 22:52:04 +01:00
										 |  |  |     - host="$${USER}@$${HOST}"
 | 
					
						
							|  |  |  |     - host_dir="/var/www/$${HOST}"
 | 
					
						
							|  |  |  |     - backup_dir="~/backups/$${HOST}/$${HOST}-$${DRONE_STAGE_STARTED}"
 | 
					
						
							|  |  |  |     - echo "${host_dir} -> ${backup_dir}"
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     - ssh $host "ls ${host_dir}"
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |       #- ssh $host 'echo "$host_dir -> $backup_dir"'
 | 
					
						
							|  |  |  |       # - ssh $host "mkdir -p $backup_dir"
 | 
					
						
							|  |  |  |       # - ssh $host "rsync -rP $host_dir/* $backup_dir"
 | 
					
						
							|  |  |  |       #- ssh $host "mkdir -p $backup_dir"
 | 
					
						
							|  |  |  |       #- ssh $host "rsync -rP /var/www/${HOST}/* ${DRONE_STAGE_STARTED}"
 | 
					
						
							|  |  |  |       #- ssh $host "ls site" 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-27 22:24:16 +01:00
										 |  |  |       #- ssh 
 | 
					
						
							|  |  |  |       #- ssh "$${USER}@$${HOST}" "[[ ! -d ~/gemini/content ]] || rm -r ~/gemini/content"
 | 
					
						
							|  |  |  |       #- rsync -rP content "$${USER}@$${HOST}:gemini"
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-27 08:32:11 +01:00
										 |  |  | 
 |