docs: wrote part of new usage section

Jef Roosens 2022-06-09 09:32:41 +02:00
parent 6b5d5582f7
commit e8cbdee0a2
Signed by: Jef Roosens
GPG Key ID: B75D4F293C7052DB
5 changed files with 63 additions and 6 deletions

View File

@ -7,7 +7,7 @@ theme = 'hugo-book'
# Book configuration
disablePathToLower = true
# Doesn't work with docs as subdir
enableGitInfo = false
enableGitInfo = true
# Needed for mermaid/katex shortcodes
[markup]
@ -29,7 +29,7 @@ enableGitInfo = false
[menu]
[[menu.after]]
name = "API Documentation"
name = "HTTP API Docs"
url = "https://rustybever.be/docs/vieter/api/"
weight = 10
[[menu.after]]
@ -37,8 +37,8 @@ enableGitInfo = false
url = "https://rustybever.be/man/vieter/vieter.1.html"
weight = 20
[[menu.after]]
name = "Source"
url = "https://git.rustybever.be/Chewing_Bever/docs"
name = "Git"
url = "https://git.rustybever.be/vieter/vieter"
weight = 30
[[menu.after]]
name = "Hugo Theme"
@ -70,14 +70,14 @@ enableGitInfo = false
# Set source repository location.
# Used for 'Last Modified' and 'Edit this page' links.
BookRepo = 'https://git.rustybever.be/vieter/vieter/docs'
BookRepo = 'https://git.rustybever.be/vieter/vieter'
# (Optional, default 'commit') Specifies commit portion of the link to the page's last modified
# commit hash for 'doc' page type.
# Requires 'BookRepo' param.
# Value used to construct a URL consisting of BookRepo/BookCommitPath/<commit-hash>
# Github uses 'commit', Bitbucket uses 'commits'
# BookCommitPath = 'commit'
BookCommitPath = 'src/commit'
# Enable "Edit this page" links for 'doc' page type.
# Disabled by default. Uncomment to enable. Requires 'BookRepo' param.

View File

@ -53,11 +53,26 @@ services:
- 'VIETER_DEFAULT_ARCH=x86_64'
- 'VIETER_MAX_CONCURRENT_BUILDS=2'
- 'VIETER_GLOBAL_SCHEDULE=0 3'
volumes:
- '/var/run/docker.sock:/var/run/docker.sock'
volumes:
data:
```
If you do not require the build system, the repository server can be used
independently as well.
{{< hint info >}}
**Note**
Builds are executed on the cron daemon's system using the host's Docker daemon.
A cron daemon on a specific architecture will only build packages for that
specific architecture. Therefore, if you wish to build packages for both
`x86_64` & `aarch64`, you'll have to deploy two cron daemons, one on each
architecture. Afterwards, any Git repositories enabled for those two
architectures will build on both.
{{< /hint >}}
## Binary
On the

View File

@ -0,0 +1,4 @@
# Usage
This section describes how to use the various parts of Vieter. It assumes you
have a Vieter repository server up and running.

View File

@ -0,0 +1,38 @@
# Pacman repository
The part of Vieter that users will interact with the most is the Pacman
repository aka `vieter server`.
## Design overview
A Vieter repository server has support for multiple repositories, with each
repository containing packages for multiple architectures.
If you wish to use these repositories on your system, add the following to
`/etc/pacman.conf` for each repository you wish to use:
```
[repo-name]
Server = https://example.com/$repo/$arch
SigLevel = Optional
```
Here, `$repo` & `$arch` are not variables you have to fill in yourself. Rather,
Pacman will substitute these when reading the config file. `$repo` is replaced
by the name between the square brackets (in this case `repo-name`), & `$arch`
is replaced by your system's architecture, e.g. `x86_64`. Of course, you can
also fill in these values manually yourself, e.g. if you wish to use a
different name inside the square brackets.
Important to note is that, when two repositories contain a package with the
same name, Pacman will choose the one from the repository that's highest up in
the `pacman.conf` file. Therefore, if you know your repository has packages
with the same name as ones from the official repositories, it might be better
to place the repository below the official repositories to avoid overwriting
official packages.
## Publishing packages
Packages can be easily published using a single HTTP POST request. Check out
the [HTTP API docs](https://rustybever.be/docs/vieter/api/) for more info on
these routes, including example cURL commands.