summaryrefslogtreecommitdiff
path: root/pkg/config/lib/bzr
diff options
context:
space:
mode:
authorNicolas Paul <n@nc0.fr>2023-06-01 11:38:29 +0200
committerNicolas Paul <n@nc0.fr>2023-06-01 11:38:29 +0200
commit9d0ba6d46d7101199bf65b00145e149d3fcf1d2a (patch)
tree7acb56051f01db0aaca4c8161e8599fc6dc6e852 /pkg/config/lib/bzr
parentff455f41831572e705580162fada56f1f194bd0c (diff)
Add Launchpad's Bazaar hosting support
Signed-off-by: Nicolas Paul <n@nc0.fr>
Diffstat (limited to 'pkg/config/lib/bzr')
-rw-r--r--pkg/config/lib/bzr/bzr.star39
1 files changed, 39 insertions, 0 deletions
diff --git a/pkg/config/lib/bzr/bzr.star b/pkg/config/lib/bzr/bzr.star
index 2376f18..e53a089 100644
--- a/pkg/config/lib/bzr/bzr.star
+++ b/pkg/config/lib/bzr/bzr.star
@@ -2,7 +2,46 @@
_BAZAAR = "bzr"
+_LAUNCHPAD_DEFAULT_INSTANCE = "https://bazaar.launchpad.net"
+_LAUNCHPAD_DEFAULT_REV = "head:"
+_LAUNCHPAD_DEFAULT_BRANCH = "trunk"
+
+def _launchpad(
+ name,
+ user,
+ repo,
+ branch = _LAUNCHPAD_DEFAULT_BRANCH,
+ rev = _LAUNCHPAD_DEFAULT_REV,
+ instance = _LAUNCHPAD_DEFAULT_INSTANCE):
+ """Register a module hosted on Launchpad.
+
+ Args:
+ name (str): The name of the module.
+ user (str): The ID of the user.
+ repo (str): The name of the repository.
+ branch (str): The name of the branch.
+ Defaults to `bzr.LAUNCHPAD_DEFAULT_BRANCH`.
+ rev (str): The revision number.
+ Defaults to `bzr.LAUNCHPAD_DEFAULT_REV`.
+ instance (str): The name of the instance.
+ Defaults to `bzr.LAUNCHPAD_DEFAULT_INSTANCE`.
+ """
+
+ return module(
+ name = name,
+ vcs = _BAZAAR,
+ repo = "%s/~%s/%s/%s" % (instance, user, repo, branch),
+ dir = "%s/~%s/%s/%s/files/%s{/dir}" %
+ (instance, user, repo, branch, rev),
+ file = "%s/~%s/%s/%s/view/%s{/dir}/{file}#L{line}" %
+ (instance, user, repo, branch, rev),
+ )
+
bzr = make_module(
"bzr",
BAZAR = _BAZAAR,
+ LAUNCHPAD_DEFAULT_INSTANCE = _LAUNCHPAD_DEFAULT_INSTANCE,
+ LAUNCHPAD_DEFAULT_REV = _LAUNCHPAD_DEFAULT_REV,
+ LAUNCHPAD_DEFAULT_BRANCH = _LAUNCHPAD_DEFAULT_BRANCH,
+ launchpad = _launchpad,
)