Valence - Update Server
This is a standalone update server for the Valence project.
- PHP 7.3+ with ext-sodium
- PostgreSQL 10 or newer
Install / Setup Instructions
Getting the Code
For best results, clone the Git repository.
git clone https://github.com/soatok/valence-updateserver cd valence-updateserver
Setting Up the Database
local/settings.php file with your database
credentials. A sample file looks like this:
<?php use Soatok\DholeCrypto\Keyring; $keyring = new Keyring(); return [ 'database' => [ 'dsn' => 'pgsql:host=localhost;dbname=valence', 'username' => 'username', 'password' => 'password', 'options' =>  ], 'quill' => [ 'url' => 'http://localhost:8080', 'client-id' => 'get from chronicle', 'server-public-key' => 'get from chronicle', 'client-secret-key' => 'generate later' ] ];
Once your database is configured, run
bin/setup to create the
necessary database tables.
You'll want to setup at least one Chronicle instance. You can get the source code and install instructions from Chronicle on Github.
To create a Chronicle keypair, run
Managing Your Valence Server
Creating Publisher Accounts
To create a new Publisher, you need to run the
command, like so:
Publisher names should be alphanumeric with dashes and underscores.
bin/create-project with the publisher name followed by the
project name, like so:
bin/create-publisher publisher-name new-project-name
Project names should be alphanumeric with dashes and underscores.
Creating Publisher Tokens
bin/grant-publisher-token to generate an access token for
publishers to run with the developer tools.
Creating Access Tokens
bin/grant-access. This is an interactive CLI script that will
prompt you for specific information.
Using the Update Server
Once you've setup your Valence Update Server and gotten familiar with its inner workings, you'll want to look at the developer tools.
You'll be mostly using that API to create, sign, and publish updates to your software projects.