Prepare for initial public release

pull/63/head
Robur 1 year ago
parent b43c6f4d79
commit fb9391fe61
  1. 3
      CHANGES.md
  2. 17
      README.md
  3. 9
      builder-web.opam
  4. 2
      packaging/debian/control

@ -0,0 +1,3 @@
# v0.1.0 (2021-11-12)
* Initial public release

@ -1,7 +1,8 @@
# Builder-web - a web frontend for reproducible builds
Builder-web takes in submissions of builds, typically from [builder](https://github.com/roburio/builder/), and displays the produced artifacts in a way that makes it easy to compare checksums and build status.
Produced binaries can be downloaded and run by users.
Produced binaries can be downloaded and executed.
[builds.robur.coop](https://builds.robur.coop/) itself runs builder-web.
## Overview
@ -12,9 +13,14 @@ Users can:
* Get an overview of *jobs* - a job is typically script or opam package that is run and builds an artifact,
* Browse all *builds* of a job - each job may have multiple builds, that are executed periodically by builder
* Browse individual *build* and download artifacts and build information for reproducing the same binary.
Each build has a single binary as output - which checksum is recorded and can be searched for. The build information (opam acpackges, environment variables, host system packages) can be compared, and they may differ even if the checksum of the binary is identical.
* Compare two builds, observing the differences in used opam packages, environment variables, and system packages.
* Search for the SHA-256 hash of a binary to view a build that resulted in that binary.
The build artifacts are stored on the filesystem, its metadata is stored in the database.
## Installation
Installing from source can be done with opam: `opam install builder-web`.
We also provide [reproducible binary packages](https://builds.robur.coop/job/builder-web/).
## Setup
@ -22,11 +28,14 @@ Builder-web consists of a binary `builder-web` that runs a web server on port 30
These values can be changed with the `--port` and `--host` flags respectively.
See `builder-web --help` for more information.
Service scripts for FreeBSD and systemd are provided.
The web server expects a sqlite3 database in its data directory.
An empty database can be created with `builder-db migrate`.
## Database migrations
The sqlite3 database builder-web uses contains versioning information.
On every schema change the database schema version is updated, and migration and rollback scripts are provided.
The tool for database migrations is `builder-migrations`.
See the `--help` output for each migration for further details.
See the `builder-migrations --help` output for each migration for further details.

@ -15,7 +15,9 @@ build: [
]
depends: [
"builder"
"ocaml" {>= "4.10.0"}
"dune" {>= "2.7.0"}
"builder" {>= "0.2.0"}
"dream" {>= "1.0.0~alpha2"}
"cstruct" {>= "6.0.0"}
"bos"
@ -47,3 +49,8 @@ depends: [
]
synopsis: "Web interface for builder"
description: """
Builder-web takes in submissions of builds, typically from [builder](https://github.com/roburio/builder/), and displays the produced artifacts in a way that makes it easy to compare checksums and build status.
Produced binaries can be downloaded and executed.
[builds.robur.coop](https://builds.robur.coop/) itself runs builder-web.
"""

@ -1,5 +1,5 @@
Package: builder-web
Version: 0.0.1-%%VERSION_NUM%%
Version: %%VERSION_NUM%%
Section: unknown
Priority: optional
Maintainer: Robur Team <team@robur.coop>

Loading…
Cancel
Save