mirror of
				https://gitlab.crans.org/bde/nk20-scripts
				synced 2025-11-04 00:32:03 +01:00 
			
		
		
		
	borg backup
This commit is contained in:
		
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@@ -33,6 +33,7 @@ coverage
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# Local data
 | 
					# Local data
 | 
				
			||||||
secrets.py
 | 
					secrets.py
 | 
				
			||||||
 | 
					*/.env_borg
 | 
				
			||||||
*.log
 | 
					*.log
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Virtualenv
 | 
					# Virtualenv
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										3
									
								
								shell/.env_borg_example
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								shell/.env_borg_example
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
				
			|||||||
 | 
					BORG_PASSPHRASE='CHANGE_ME'
 | 
				
			||||||
 | 
					BORG_REPO='USER@SERVER:PATH'
 | 
				
			||||||
 | 
					BACKUP_FILE='PATH'
 | 
				
			||||||
@@ -1,9 +1,14 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					export $(cat .env_borg | xargs)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Create temporary backups directory
 | 
					# Create temporary backups directory
 | 
				
			||||||
mkdir -p /tmp/note-backups
 | 
					mkdir -p /tmp/note-backups
 | 
				
			||||||
date=$(date +%Y-%m-%d)
 | 
					
 | 
				
			||||||
# Backup database and save it as tar archive
 | 
					# Backup database
 | 
				
			||||||
sudo -u postgres pg_dump -F t note_db > "/tmp/note-backups/$date.sql"
 | 
					sudo -u postgres pg_dump -F t note_db > $BACKUP_FILE
 | 
				
			||||||
# Compress backup as gzip
 | 
					
 | 
				
			||||||
gzip "/tmp/note-backups/$date.sql"
 | 
					# Keep the last 30 backups
 | 
				
			||||||
scp "/tmp/note-backups/$date.sql.gz" "club-bde@zamok.crans.org:backup/$date.sql.gz"
 | 
					borg prune --keep-last 30
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Save backup
 | 
				
			||||||
 | 
					borg create --compression lz4 ::backup-{now} $BACKUP_FILE
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user