summaryrefslogtreecommitdiff
path: root/bootstrap-without-vcs.patch
diff options
context:
space:
mode:
authorB. Stack <bgstack15@gmail.com>2022-04-15 16:57:02 -0400
committerB. Stack <bgstack15@gmail.com>2022-04-15 16:57:02 -0400
commit9c00f7050567825bc089bec6991629fb49830394 (patch)
treec13d4e5ed3c52e8100cd9365309641554a721242 /bootstrap-without-vcs.patch
parentMerge branch 'b98.0-3-npgo' into 'b98.0-3' (diff)
downloadlibrewolf-fedora-ff-9c00f7050567825bc089bec6991629fb49830394.tar.gz
librewolf-fedora-ff-9c00f7050567825bc089bec6991629fb49830394.tar.bz2
librewolf-fedora-ff-9c00f7050567825bc089bec6991629fb49830394.zip
librewolf for fedora 99.0.1-1 rc1
Diffstat (limited to 'bootstrap-without-vcs.patch')
-rw-r--r--bootstrap-without-vcs.patch121
1 files changed, 121 insertions, 0 deletions
diff --git a/bootstrap-without-vcs.patch b/bootstrap-without-vcs.patch
new file mode 100644
index 0000000..289af12
--- /dev/null
+++ b/bootstrap-without-vcs.patch
@@ -0,0 +1,121 @@
+--- a/python/mozboot/mozboot/bootstrap.py
++++ b/python/mozboot/mozboot/bootstrap.py
+@@ -548,11 +548,9 @@ def current_firefox_checkout(env, hg: Optional[Path] = None):
+
+ if not len(path.parents):
+ break
++ path = path.parent
+
+- raise UserError(
+- "Could not identify the root directory of your checkout! "
+- "Are you running `mach bootstrap` in an hg or git clone?"
+- )
++ return ("local", Path.cwd())
+
+
+ def update_git_tools(git: Optional[Path], root_state_dir: Path):
+--- a/python/mozversioncontrol/mozversioncontrol/__init__.py
++++ b/python/mozversioncontrol/mozversioncontrol/__init__.py
+@@ -684,6 +684,29 @@ class GitRepository(Repository):
+ self._run("config", name, value)
+
+
++class LocalRepository(Repository):
++
++ def __init__(self, path):
++ super(LocalRepository, self).__init__(path, tool="true")
++
++ @property
++ def head_ref(self):
++ return ""
++
++ def get_outgoing_files(self):
++ return []
++
++ def get_changed_files(self):
++ return []
++
++ def get_tracked_files_finder(self):
++ files = [os.path.relpath(os.path.join(dp, f), self.path).replace("\\","/") for dp, dn, fn in os.walk(self.path) for f in fn]
++ files.sort()
++ return FileListFinder(files)
++
++
++
++
+ def get_repository_object(path: Optional[Union[str, Path]], hg="hg", git="git"):
+ """Get a repository object for the repository at `path`.
+ If `path` is not a known VCS repository, raise an exception.
+@@ -697,7 +720,7 @@ def get_repository_object(path: Optional[Union[str, Path]], hg="hg", git="git"):
+ elif (path / ".git").exists():
+ return GitRepository(path, git=git)
+ else:
+- raise InvalidRepoPath(f"Unknown VCS, or not a source checkout: {path}")
++ return LocalRepository(path)
+
+
+ def get_repository_from_build_config(config):
+@@ -721,6 +744,8 @@ def get_repository_from_build_config(config):
+ return HgRepository(Path(config.topsrcdir), hg=config.substs["HG"])
+ elif flavor == "git":
+ return GitRepository(Path(config.topsrcdir), git=config.substs["GIT"])
++ elif flavor == "local":
++ return LocalRepository(config.topsrcdir)
+ else:
+ raise MissingVCSInfo("unknown VCS_CHECKOUT_TYPE value: %s" % flavor)
+
+--- a/third_party/python/taskcluster_taskgraph/taskgraph/util/vcs.py
++++ b/third_party/python/taskcluster_taskgraph/taskgraph/util/vcs.py
+@@ -168,6 +168,43 @@ class GitRepository(Repository):
+ self.run("checkout", ref)
+
+
++class LocalRepository(Repository):
++ tool = "true"
++
++ @property
++ def head_ref(self):
++ return ""
++
++ def get_outgoing_files(self):
++ return []
++
++ def get_changed_files(self):
++ return []
++
++ def base_ref(self):
++ raise Exception("Unimplemented")
++
++ def branch(self):
++ raise Exception("Unimplemented")
++
++ def get_commit_message(self):
++ raise Exception("Unimplemented")
++
++ def get_url(self):
++ return ""
++
++ def update(self):
++ raise Exception("Unimplemented")
++
++ def working_directory_clean(self):
++ raise Exception("Unimplemented")
++
++ def get_tracked_files_finder(self):
++ files = [os.path.relpath(os.path.join(dp, f), self.path).replace("\\","/") for dp, dn, fn in os.walk(self.path) for f in fn]
++ files.sort()
++ return FileListFinder(files)
++
++
+ def get_repository(path):
+ """Get a repository object for the repository at `path`.
+ If `path` is not a known VCS repository, raise an exception.
+@@ -178,7 +215,7 @@ def get_repository(path):
+ elif os.path.exists(os.path.join(path, ".git")):
+ return GitRepository(path)
+
+- raise RuntimeError("Current directory is neither a git or hg repository")
++ return LocalRepository(path)
+
+
+ def find_hg_revision_push_info(repository, revision):
bgstack15