annotate third_party/mercurial/runtime.bzl @ 279:b3b547563ec7

Add Google connector service and agent wiki Implement the C/Seobeo Google Drive and Gmail connector with encrypted OAuth storage, Zenbu authentication, browser testing, AI tool discovery, chunked HTTP decoding, and Bazel coverage. Consolidate repository guidance into progressive wiki documentation and enforce arena-first allocation for new first-party C code. Co-authored-by: Copilot <[email protected]> Copilot-Session: 84c338fd-0939-4bb3-b7f3-1062eb213e5d
author MrJuneJune <me@mrjunejune.com>
date Mon, 17 Aug 2026 22:22:36 -0700
parents c5129452493e
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
249
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
1 def _mercurial_runtime_impl(ctx):
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
2 output = ctx.actions.declare_directory(ctx.label.name)
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
3 ctx.actions.run_shell(
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
4 inputs = [ctx.file.archive, ctx.file.launcher],
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
5 outputs = [output],
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
6 command = """
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
7 set -e
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
8 mkdir -p {output}/bin
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
9 unzip -q {archive} -d {output}
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
10 cp {output}/mercurial-7.2.3.dist-info/licenses/COPYING {output}/COPYING
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
11 cp {launcher} {output}/bin/hg
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
12 chmod 0555 {output}/bin/hg
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
13 chmod -R a-w {output}/hgdemandimport {output}/hgext {output}/mercurial
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
14 """.format(
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
15 archive = ctx.file.archive.path,
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
16 launcher = ctx.file.launcher.path,
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
17 output = output.path,
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
18 ),
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
19 progress_message = "Assembling pure-Python Mercurial runtime",
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
20 )
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
21 return [
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
22 DefaultInfo(
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
23 files = depset([output]),
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
24 runfiles = ctx.runfiles(files = [output]),
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
25 ),
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
26 ]
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
27
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
28 mercurial_runtime = rule(
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
29 implementation = _mercurial_runtime_impl,
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
30 attrs = {
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
31 "archive": attr.label(allow_single_file = True, mandatory = True),
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
32 "launcher": attr.label(allow_single_file = True, mandatory = True),
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
33 },
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
34 )