README.md: update

This commit is contained in:
Antoine Martin 2024-08-25 22:33:12 -04:00
parent 9c896c5d85
commit 4cb43c883c
Signed by: ayakael
GPG key ID: D62A472A4AA7D541

View file

@ -1,20 +1,35 @@
# ilot.io # ilot.io
Upstream: https://lab.ilot.io/ilot/ilot.io Upstream: https://forge.ilot.io/ilot/ilot.io
![Build Status](https://lab.ilot.io/ilot/ilot.io/badges/main/pipeline.svg) ![Build Status](https://forge.ilot.io/ilot/ilot.io/badges/workflows/pages.yaml/badge.svg)
![Push Status](https://forge.ilot.io/ilot/ilot.io/badges/workflows/deploy.yaml/badge.svg)
## Description ## Forgejo Actions
This repository contains the source code to the [ilot.io](https://ilot.io) This project's static Pages are built by Forgejo Actions, following the steps
website. defined in [`.forgejo/workflows/pages.yaml`](.forgejo/workflows/pages.yaml).
That builds this website using ikiwiki, and pushes the build artifacts to the
`public` branch.
## GitLab CI The `public` branch has its own workflow following steps defined in
[`forgejo/workflows/deploy.yaml`](.forgejo/workflows/deploy.yaml)
that uploads the artifacts to a remote HTTP server for deployment in
production. This workflow is automatically updated from `main` so that `public`
should never be manually modified.
This project's static Pages are built by [GitLab CI][ci], following the steps The deployment is done by a simple remote git push via SSH to a non-bare repo
defined in [`.gitlab-ci.yml`](.gitlab-ci.yml): where `git config receive.denyCurrentBranch` is set as `updateInstead`. This
allows this repo to be checked out as `public`, allowing it to be a root for
your favorite HTTP server.
We are using a theme based on The following secrets are expected to be set for operation:
[Bootstrap 3](https://lab.ilot.io/ilot/ikiwiki-bootstrap-ilot) using submodules. * PAGES_PRIVKEY: SSH private key that is used to push to the HTTP server's git
repo
* PAGES_TOKEN: Forgejo application token used to push to `public` branch.
The following variables are expected to be set for operation:
* PAGES_TARGET: SSH target for HTTP server's git repo, following this format:
user@example.net:/path/to/http/repo
## Building locally ## Building locally
@ -25,9 +40,9 @@ To work locally with this project, you'll have to follow the steps below:
* [mac][] * [mac][]
* [linux][] * [linux][]
* [source][] * [source][]
1. Clone the submodules: `git submodule init && git submodule update`
1. Generate the website: `ikiwiki --setup ikiwiki.setup` 1. Generate the website: `ikiwiki --setup ikiwiki.setup`
1. Start http-server: `./test-server.sh` 1. Start http-server: `./test-server.sh`
1. Preview your project: open 127.0.0.1:8080 in your browser
Read more at ikiwiki's [documentation][]. Read more at ikiwiki's [documentation][].
@ -37,7 +52,7 @@ Read more at ikiwiki's [documentation][].
2. Checkout the forked repository. 2. Checkout the forked repository.
- `git clone ssh://git@lab.ilot.io/$USER/ilot.io` - `git clone ssh://git@forge.ilot.io/$USER/ilot.io`
- `cd ilot.io` - `cd ilot.io`
3. Make your changes. 3. Make your changes.
@ -60,11 +75,8 @@ Read more at ikiwiki's [documentation][].
8. Once the tests in the merge-request pass, and reviewers are happy, your changes 8. Once the tests in the merge-request pass, and reviewers are happy, your changes
will be merged. will be merged.
[ci]: https://about.gitlab.com/gitlab-ci/
[ikiwiki]: https://ikiwiki.info/ [ikiwiki]: https://ikiwiki.info/
[source]: https://ikiwiki.info/install/ [source]: https://ikiwiki.info/install/
[linux]: https://ikiwiki.info/setup/ [linux]: https://ikiwiki.info/setup/
[mac]: https://ikiwiki.info/tips/ikiwiki_on_mac_os_x/ [mac]: https://ikiwiki.info/tips/ikiwiki_on_mac_os_x/
[documentation]: https://ikiwiki.info/ [documentation]: https://ikiwiki.info/
[userpages]: https://docs.gitlab.com/ce/user/project/pages/introduction.html#user-or-group-pages
[projpages]: https://docs.gitlab.com/ce/user/project/pages/introduction.html#project-pages