summaryrefslogtreecommitdiff
path: root/pkg/config/lib/git
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/config/lib/git')
-rw-r--r--pkg/config/lib/git/git.go67
-rw-r--r--pkg/config/lib/git/git.star212
2 files changed, 0 insertions, 279 deletions
diff --git a/pkg/config/lib/git/git.go b/pkg/config/lib/git/git.go
deleted file mode 100644
index 500b29d..0000000
--- a/pkg/config/lib/git/git.go
+++ /dev/null
@@ -1,67 +0,0 @@
-// Copyright Nicolas Paul (2023)
-//
-// * Nicolas Paul
-//
-// This software is a computer program whose purpose is to allow the hosting
-// and sharing of Go modules using a personal domain.
-//
-// This software is governed by the CeCILL license under French law and
-// abiding by the rules of distribution of free software. You can use,
-// modify and/ or redistribute the software under the terms of the CeCILL
-// license as circulated by CEA, CNRS and INRIA at the following URL
-// "http://www.cecill.info".
-//
-// As a counterpart to the access to the source code and rights to copy,
-// modify and redistribute granted by the license, users are provided only
-// with a limited warranty and the software's author, the holder of the
-// economic rights, and the successive licensors have only limited
-// liability.
-//
-// In this respect, the user's attention is drawn to the risks associated
-// with loading, using, modifying and/or developing or reproducing the
-// software by the user in light of its specific status of free software,
-// that may mean that it is complicated to manipulate, and that also
-// therefore means that it is reserved for developers and experienced
-// professionals having in-depth computer knowledge. Users are therefore
-// encouraged to load and test the software's suitability as regards their
-// requirements in conditions enabling the security of their systems and/or
-// data to be ensured and, more generally, to use and operate it in the
-// same conditions as regards security.
-//
-// The fact that you are presently reading this means that you have had
-// knowledge of the CeCILL license and that you accept its terms.
-// Package git provides Starlark macros to declare modules hosted on Git
-// repositories.
-
-package git
-
-import (
- _ "embed"
- "go.nc0.fr/svgu/pkg/config/lib/prelude"
- "go.starlark.net/starlark"
- "go.starlark.net/starlarkstruct"
- "sync"
-)
-
-var (
- once = sync.Once{}
- git = starlark.StringDict{}
- //go:embed git.star
- gitFile string
- gitErr error
-)
-
-// LoadGitModule loads the git module.
-func LoadGitModule(t *starlark.Thread) (starlark.StringDict, error) {
- once.Do(func() {
- env := starlark.StringDict{
- "module": starlark.NewBuiltin("module",
- prelude.InternModule),
- "make_module": starlark.NewBuiltin("mod",
- starlarkstruct.MakeModule),
- }
- git, gitErr = starlark.ExecFile(t, "git.star", gitFile, env)
- })
-
- return git, gitErr
-}
diff --git a/pkg/config/lib/git/git.star b/pkg/config/lib/git/git.star
deleted file mode 100644
index 8e39b31..0000000
--- a/pkg/config/lib/git/git.star
+++ /dev/null
@@ -1,212 +0,0 @@
-# Copyright Nicolas (2023)
-#
-# * Nicolas Paul
-#
-# This software is a computer program whose purpose is to allow the hosting
-# and sharing of Go modules using a personal domain.
-#
-# This software is governed by the CeCILL license under French law and
-# abiding by the rules of distribution of free software. You can use,
-# modify and/ or redistribute the software under the terms of the CeCILL
-# license as circulated by CEA, CNRS and INRIA at the following URL
-# "http://www.cecill.info".
-#
-# As a counterpart to the access to the source code and rights to copy,
-# modify and redistribute granted by the license, users are provided only
-# with a limited warranty and the software's author, the holder of the
-# economic rights, and the successive licensors have only limited
-# liability.
-#
-# In this respect, the user's attention is drawn to the risks associated
-# with loading, using, modifying and/or developing or reproducing the
-# software by the user in light of its specific status of free software,
-# that may mean that it is complicated to manipulate, and that also
-# therefore means that it is reserved for developers and experienced
-# professionals having in-depth computer knowledge. Users are therefore
-# encouraged to load and test the software's suitability as regards their
-# requirements in conditions enabling the security of their systems and/or
-# data to be ensured and, more generally, to use and operate it in the
-# same conditions as regards security.
-#
-# The fact that you are presently reading this means that you have had
-# knowledge of the CeCILL license and that you accept its terms.
-
-# Utilities to index Go modules hosted on Git repositories.
-
-_GIT = "git"
-
-# https://github.com/github/renaming
-_GITHUB_DEFAULT_INSTANCE = "https://github.com"
-_GITHUB_DEFAULT_REF = "main"
-
-def _github(
- name,
- user,
- repo,
- ref = _GITHUB_DEFAULT_REF,
- instance = _GITHUB_DEFAULT_INSTANCE):
- """Register a module hosted on GitHub.
-
- Args:
- name (str): The name of the module.
- user (str): The name of the user or organization.
- repo (str): The name of the repository.
- ref (str): The name of the ref.
- Defaults to `git.GITHUB_DEFAULT_REF`.
- instance (str): The name of the instance.
- Defaults to `git.GITHUB_DEFAULT_INSTANCE`.
- """
-
- return module(
- name = name,
- vcs = _GIT,
- repo = "%s/%s/%s" % (instance, user, repo),
- dir = "%s/%s/%s/tree/%s{/dir}" % (instance, user, repo, ref),
- file = "%s/%s/%s/blob/%s{/dir}/{file}#L{line}" %
- (instance, user, repo, ref),
- )
-
-_SOURCEHUT_DEFAULT_INSTANCE = "https://git.sr.ht"
-_SOURCEHUT_DEFAULT_REF = "master"
-
-# TODO(nc0): See the status for organizations and groups, as they are expected
-# to use another symbol than `~`.
-def _sourcehut(
- name,
- user,
- repo,
- ref = _SOURCEHUT_DEFAULT_REF,
- instance = _SOURCEHUT_DEFAULT_INSTANCE):
- """Register a module hosted on Source Hut's Git hosting.
-
- Args:
- name (str): The name of the module.
- user (str): The name of the user or organization.
- repo (str): The name of the repository.
- ref (str): The name of the ref.
- Defaults to `git.SOURCEHUT_DEFAULT_REF`.
- instance (str): The name of the instance.
- Defaults to `git.SOURCEHUT_DEFAULT_INSTANCE`.
- """
-
- return module(
- name = name,
- vcs = _GIT,
- repo = "%s/~%s/%s" % (instance, user, repo),
- dir = "%s/~%s/%s/tree/%s{/dir}" %
- (instance, user, repo, ref),
- file = "%s/~%s/%s/tree/%s/item{/dir}/{file}#L{line}" %
- (instance, user, repo, ref),
- )
-
-# https://about.gitlab.com/blog/2021/03/10/new-git-default-branch-name/
-_GITLAB_DEFAULT_INSTANCE = "https://gitlab.com"
-_GITLAB_DEFAULT_REF = "main"
-
-def _gitlab(
- name,
- user,
- repo,
- ref = _GITLAB_DEFAULT_REF,
- instance = _GITLAB_DEFAULT_INSTANCE):
- """Register a module hosted on GitLab.
-
- Args:
- name (str): The name of the module.
- user (str): The name of the user or organization.
- repo (str): The name of the repository.
- ref (str): The name of the ref.
- Defaults to `git.GITLAB_DEFAULT_REF`.
- instance (str): The name of the instance.
- Defaults to `git.GITLAB_DEFAULT_INSTANCE`.
- """
-
- return module(
- name = name,
- vcs = _GIT,
- repo = "%s/%s/%s" % (instance, user, repo),
- dir = "%s/%s/%s/-/tree/%s{/dir}" % (instance, user, repo, ref),
- file = "%s/%s/%s/-/blob/%s{/dir}/{file}#L{line}" %
- (instance, user, repo, ref),
- )
-
-# https://confluence.atlassian.com/bitbucketserver/setting-a-system-wide-default-branch-name-1021220665.html
-_BITBUCKET_DEFAULT_INSTANCE = "https://bitbucket.org"
-_BITBUCKET_DEFAULT_REF = "master"
-
-def _bitbucket(
- name,
- workspace,
- repo,
- ref = _BITBUCKET_DEFAULT_REF,
- instance = _BITBUCKET_DEFAULT_INSTANCE):
- """Register a module hosted on Bitbucket.
-
- By default, we use https://bitbucket.org, however you usually need to
- change it with your username and workspace, following:
-
- https://<username>@bitbucket.org/<workspace>
-
- Args:
- name (str): The name of the module.
- workspace (str): The ID of the workspace.
- repo (str): The name of the repository.
- ref (str): The name of the ref.
- Defaults to `git.BITBUCKET_DEFAULT_REF`.
- instance (str): The name of the instance.
- Defaults to `git.BITBUCKET_DEFAULT_INSTANCE`.
- """
-
- return module(
- name = name,
- vcs = _GIT,
- repo = "%s/%s/%s" % (instance, workspace, repo),
- dir = "%s/%s/%s/src/%s{/dir}" % (instance, workspace, repo, ref),
- file = "%s/%s/%s/src/%s{/dir}/{file}#{file}-{line}" %
- (instance, workspace, repo, ref),
- )
-
-_GITILES_DEFAULT_REF = "master"
-
-def _gitiles(
- name,
- instance,
- repo,
- ref = _GITILES_DEFAULT_REF):
- """Register a module hosted a Gitiles (Gerrit) installation.
-
- Args:
- name (str): The name of the module.
- instance (str): The Gitiles instance URL.
- repo (str): The repository path.
- ref (str): The name of the ref.
- Defaults to `git.GITILES_DEFAULT_REF`.
- """
-
- return module(
- name = name,
- vcs = _GIT,
- repo = "%s/%s" % (instance, repo),
- dir = "%s/%s/+/refs/heads/%s{/dir}" % (instance, repo, ref),
- file = "%s/%s/+/refs/heads/%s{/dir}/{file}#{line}" %
- (instance, repo, ref),
- )
-
-git = make_module(
- "git",
- GIT = _GIT,
- GITHUB_DEFAULT_INSTANCE = _GITHUB_DEFAULT_INSTANCE,
- GITHUB_DEFAULT_REF = _GITHUB_DEFAULT_REF,
- SOURCEHUT_DEFAULT_INSTANCE = _SOURCEHUT_DEFAULT_INSTANCE,
- SOURCEHUT_DEFAULT_REF = _SOURCEHUT_DEFAULT_REF,
- GITLAB_DEFAULT_INSTANCE = _GITLAB_DEFAULT_INSTANCE,
- GITLAB_DEFAULT_REF = _GITLAB_DEFAULT_REF,
- BITBUCKET_DEFAULT_INSTANCE = _BITBUCKET_DEFAULT_INSTANCE,
- BITBUCKET_DEFAULT_REF = _BITBUCKET_DEFAULT_REF,
- GITILES_DEFAULT_REF = _GITILES_DEFAULT_REF,
- github = _github,
- sourcehut = _sourcehut,
- gitlab = _gitlab,
- bitbucket = _bitbucket,
- gitiles = _gitiles,
-)