annotate hg-web/repository_sync_test.sh @ 252:7a7581f040e8

[ui] Add scoped notification component Co-authored-by: Copilot <[email protected]>
author MrJuneJune <me@mrjunejune.com>
date Tue, 04 Aug 2026 11:57:16 -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 #!/usr/bin/env bash
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
2 set -Eeuo pipefail
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
3
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
4 if [[ -n "${RUNFILES_DIR:-}" ]]; then
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
5 source "$RUNFILES_DIR/bazel_tools/tools/bash/runfiles/runfiles.bash"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
6 elif [[ -n "${RUNFILES_MANIFEST_FILE:-}" ]]; then
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
7 runfiles_library="$(
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
8 grep -sm1 '^bazel_tools/tools/bash/runfiles/runfiles.bash ' \
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
9 "$RUNFILES_MANIFEST_FILE" | cut -d' ' -f2-
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
10 )"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
11 source "$runfiles_library"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
12 else
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
13 echo "Bazel runfiles are unavailable." >&2
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
14 exit 1
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
15 fi
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
16
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
17 hg_binary="$(rlocation _main/third_party/mercurial/runtime/bin/hg)"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
18 root="${TEST_TMPDIR:?}/repository-sync"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
19 source_repository="$root/source"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
20 production_repository="$root/production"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
21 bundle="$root/workspace.hg"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
22 mkdir -p "$root"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
23
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
24 HGRCPATH= "$hg_binary" init "$source_repository"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
25 printf 'base\n' > "$source_repository/file.txt"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
26 HGRCPATH= "$hg_binary" --cwd "$source_repository" add file.txt
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
27 HGRCPATH= "$hg_binary" --cwd "$source_repository" \
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
28 commit -u test -m base
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
29
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
30 HGRCPATH= "$hg_binary" clone \
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
31 "$source_repository" "$production_repository"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
32
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
33 printf 'workspace\n' >> "$source_repository/file.txt"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
34 HGRCPATH= "$hg_binary" --cwd "$source_repository" \
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
35 commit -u test -m workspace
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
36
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
37 printf 'production\n' >> "$production_repository/file.txt"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
38 HGRCPATH= "$hg_binary" --cwd "$production_repository" \
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
39 commit -u test -m production
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
40
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
41 HGRCPATH= "$hg_binary" --repository "$source_repository" \
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
42 bundle --all "$bundle"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
43 HGRCPATH= "$hg_binary" --repository "$production_repository" \
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
44 pull "$bundle"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
45
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
46 descriptions="$(
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
47 HGRCPATH= "$hg_binary" --repository "$production_repository" \
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
48 log -T '{desc}\n'
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
49 )"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
50 grep -qx workspace <<<"$descriptions"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
51 grep -qx production <<<"$descriptions"
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
52 [[ "$(
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
53 HGRCPATH= "$hg_binary" --repository "$production_repository" \
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
54 heads -T '.'
c5129452493e [deploy] Bundle Mercurial with hg-web
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
55 )" == ".." ]]