mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
Use gitnamespaces for efficient storage
Instead of using one Git repository per package, use a single large object storage for space efficiency. The refs of the individual package bases are divided using gitnamespaces(7) which allows for exposing each namespace as an independent repository easily. Also, git-serve is modified to create a branch for each package, allowing to browse the large repository with cgit. Helped-by: Florian Pritz <bluewind@xinu.at> Helped-by: Johannes Löthberg <johannes@kyriasis.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
This commit is contained in:
parent
ecfa27e406
commit
b44411fb53
9 changed files with 80 additions and 132 deletions
|
@ -9,18 +9,15 @@ afterwards.
|
|||
ALTER TABLE Users ADD COLUMN SSHPubKey VARCHAR(4096) NULL DEFAULT NULL;
|
||||
----
|
||||
|
||||
2. Create a new user and configure the sshd as described in INSTALL.
|
||||
2. Create a new user and configure Git/SSH as described in INSTALL.
|
||||
|
||||
3. Run gen-templates.py to initialize the Git repository template. Create a
|
||||
directory for the Git repositories and run init-repos.py to initialize them.
|
||||
|
||||
4. Reset the packager field of all package bases:
|
||||
3. Reset the packager field of all package bases:
|
||||
|
||||
----
|
||||
UPDATE PackageBases SET PackagerUID = NULL;
|
||||
----
|
||||
|
||||
5. Create a new table for package base co-maintainers:
|
||||
4. Create a new table for package base co-maintainers:
|
||||
|
||||
----
|
||||
CREATE TABLE PackageComaintainers (
|
||||
|
@ -34,4 +31,4 @@ CREATE TABLE PackageComaintainers (
|
|||
) ENGINE = InnoDB;
|
||||
----
|
||||
|
||||
6. (optional) Setup cgit to browse the Git repositories via HTTP.
|
||||
5. (optional) Setup cgit to browse the Git repositories via HTTP.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue