mirror of
				https://gitlab.crans.org/bde/nk20-scripts
				synced 2025-11-04 08:32:10 +01:00 
			
		
		
		
	Compare commits
	
		
			5 Commits
		
	
	
		
			notes_repo
			...
			borg_backu
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					abd5af9ad2 | ||
| 
						 | 
					472c9c33ce | ||
| 
						 | 
					6149f11e53 | ||
| 
						 | 
					08455e6e60 | ||
| 
						 | 
					b17780e5e9 | 
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@@ -33,6 +33,7 @@ coverage
 | 
			
		||||
 | 
			
		||||
# Local data
 | 
			
		||||
secrets.py
 | 
			
		||||
*/.env_borg
 | 
			
		||||
*.log
 | 
			
		||||
 | 
			
		||||
# Virtualenv
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
# Copyright (C) 2018-2021 by BDE ENS Paris-Saclay
 | 
			
		||||
# Copyright (C) 2018-2024 by BDE ENS Paris-Saclay
 | 
			
		||||
# SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
 | 
			
		||||
from datetime import date
 | 
			
		||||
@@ -10,7 +10,7 @@ from member.models import Club, Membership
 | 
			
		||||
 | 
			
		||||
class Command(BaseCommand):
 | 
			
		||||
    help = "Get mailing list registrations from the last wei. " \
 | 
			
		||||
           "Usage: manage.py extract_ml_registrations -t {events,art,sport} -t {fr, en} -y {0, 1, ...}. " \
 | 
			
		||||
           "Usage: manage.py extract_ml_registrations -t {events,art,sport} -l {fr, en} -y {0, 1, ...}. " \
 | 
			
		||||
           "You can write this into a file with a pipe, then paste the document into your mail manager."
 | 
			
		||||
 | 
			
		||||
    def add_arguments(self, parser):
 | 
			
		||||
@@ -53,8 +53,11 @@ class Command(BaseCommand):
 | 
			
		||||
            return
 | 
			
		||||
 | 
			
		||||
        if options["type"] == "art":
 | 
			
		||||
            nb=0
 | 
			
		||||
            for user in User.objects.filter(profile__ml_art_registration=True).all():
 | 
			
		||||
                self.stdout.write(user.email)
 | 
			
		||||
                nb+=1
 | 
			
		||||
            self.stdout.write(str(nb))
 | 
			
		||||
            return
 | 
			
		||||
 | 
			
		||||
        if options["type"] == "sport":
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										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
 | 
			
		||||
export $(cat .env_borg | xargs)
 | 
			
		||||
 | 
			
		||||
# Create temporary backups directory
 | 
			
		||||
mkdir -p /tmp/note-backups
 | 
			
		||||
date=$(date +%Y-%m-%d)
 | 
			
		||||
# Backup database and save it as tar archive
 | 
			
		||||
sudo -u postgres pg_dump -F t note_db > "/tmp/note-backups/$date.sql"
 | 
			
		||||
# Compress backup as gzip
 | 
			
		||||
gzip "/tmp/note-backups/$date.sql"
 | 
			
		||||
scp "/tmp/note-backups/$date.sql.gz" "club-bde@zamok.crans.org:backup/$date.sql.gz"
 | 
			
		||||
 | 
			
		||||
# Backup database
 | 
			
		||||
sudo -u postgres pg_dump -F t note_db > $BACKUP_FILE
 | 
			
		||||
 | 
			
		||||
# Keep the last 30 backups
 | 
			
		||||
borg prune --keep-last 30
 | 
			
		||||
 | 
			
		||||
# Save backup
 | 
			
		||||
borg create --compression lz4 ::backup-{now} $BACKUP_FILE
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user