mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-04 05:53:43 +00:00 
			
		
		
		
	ruff: Fix SIM115 Use a context manager for opening files.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit 71ca928ec9)
			
			
This commit is contained in:
		
				
					committed by
					
						
						Tim Abbott
					
				
			
			
				
	
			
			
			
						parent
						
							9a38328617
						
					
				
				
					commit
					23934d5fc2
				
			@@ -66,25 +66,24 @@ puppet_env["FACTER_zulip_scripts_path"] = scripts_path
 | 
			
		||||
def noop_would_change(puppet_cmd: list[str]) -> bool:
 | 
			
		||||
    # --noop does not work with --detailed-exitcodes; see
 | 
			
		||||
    # https://tickets.puppetlabs.com/browse/PUP-686
 | 
			
		||||
    with tempfile.NamedTemporaryFile() as lastrun_file:
 | 
			
		||||
        try:
 | 
			
		||||
        lastrun_file = tempfile.NamedTemporaryFile()
 | 
			
		||||
            subprocess.check_call(
 | 
			
		||||
                # puppet_cmd may already contain --noop, but it is safe to
 | 
			
		||||
                # supply twice
 | 
			
		||||
                [*puppet_cmd, "--noop", "--lastrunfile", lastrun_file.name],
 | 
			
		||||
                env=puppet_env,
 | 
			
		||||
            )
 | 
			
		||||
        except subprocess.CalledProcessError:
 | 
			
		||||
            sys.exit(2)
 | 
			
		||||
 | 
			
		||||
        # Reopen the file since Puppet rewrote it with a new inode
 | 
			
		||||
        with open(lastrun_file.name) as lastrun:
 | 
			
		||||
            lastrun_data = yaml.safe_load(lastrun)
 | 
			
		||||
            resources = lastrun_data.get("resources", {})
 | 
			
		||||
            if resources.get("failed", 0) != 0:
 | 
			
		||||
                sys.exit(2)
 | 
			
		||||
            return resources.get("out_of_sync", 0) != 0
 | 
			
		||||
    except subprocess.CalledProcessError:
 | 
			
		||||
        sys.exit(2)
 | 
			
		||||
    finally:
 | 
			
		||||
        lastrun_file.close()
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
if not args.noop and not args.force:
 | 
			
		||||
 
 | 
			
		||||
@@ -24,7 +24,7 @@ def renumber_migration(conflicts: list[str], order: list[int], last_correct_migr
 | 
			
		||||
            stack.append(conflicts[i - 1][0:4])
 | 
			
		||||
        else:
 | 
			
		||||
            # Replace dependencies with the last correct migration
 | 
			
		||||
            file = fileinput.FileInput("zerver/migrations/" + conflicts[i - 1], inplace=True)
 | 
			
		||||
            with fileinput.FileInput("zerver/migrations/" + conflicts[i - 1], inplace=True) as file:
 | 
			
		||||
                for line in file:
 | 
			
		||||
                    print(re.sub(r"[\d]+(_[a-z0-9]+)+", last_correct_migration, line), end="")
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -2,6 +2,7 @@ import os
 | 
			
		||||
import re
 | 
			
		||||
import tempfile
 | 
			
		||||
from argparse import ArgumentParser, RawTextHelpFormatter
 | 
			
		||||
from contextlib import ExitStack
 | 
			
		||||
from typing import Any
 | 
			
		||||
 | 
			
		||||
from django.conf import settings
 | 
			
		||||
@@ -33,9 +34,10 @@ class Command(ZulipBaseCommand):
 | 
			
		||||
    @override
 | 
			
		||||
    def handle(self, *args: Any, **options: Any) -> None:
 | 
			
		||||
        timestamp = timezone_now().strftime(TIMESTAMP_FORMAT)
 | 
			
		||||
        with tempfile.TemporaryDirectory(
 | 
			
		||||
            prefix=f"zulip-backup-{timestamp}-",
 | 
			
		||||
        ) as tmp:
 | 
			
		||||
        with ExitStack() as stack:
 | 
			
		||||
            tmp = stack.enter_context(
 | 
			
		||||
                tempfile.TemporaryDirectory(prefix=f"zulip-backup-{timestamp}-")
 | 
			
		||||
            )
 | 
			
		||||
            os.mkdir(os.path.join(tmp, "zulip-backup"))
 | 
			
		||||
            members = []
 | 
			
		||||
            paths = []
 | 
			
		||||
@@ -121,10 +123,12 @@ class Command(ZulipBaseCommand):
 | 
			
		||||
 | 
			
		||||
            try:
 | 
			
		||||
                if options["output"] is None:
 | 
			
		||||
                    tarball_path = tempfile.NamedTemporaryFile(
 | 
			
		||||
                    tarball_path = stack.enter_context(
 | 
			
		||||
                        tempfile.NamedTemporaryFile(
 | 
			
		||||
                            prefix=f"zulip-backup-{timestamp}-",
 | 
			
		||||
                            suffix=".tar.gz",
 | 
			
		||||
                            delete=False,
 | 
			
		||||
                        )
 | 
			
		||||
                    ).name
 | 
			
		||||
                else:
 | 
			
		||||
                    tarball_path = options["output"]
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user