Hub administration

Users with Hub-level administration privileges will gain access to the Hub administration pages.

The "root" user you created when Bootstrapping your Hub has Hub-level administration privileges.

To access the Hub administration pages choose an option from the "Manage Hub" menu available at the top right of all Hub pages.

Hub Administrators

Any user granted the Hub administration role (see below) will have unfettered access to all Organisations, and all resources within those Organisations. It is equivalent to being granted the Owner role in all Organisations, without having to be a member of them.

For this reason Hazy recommends extreme care when assigning Users the Hub admin role.

Managing Organisations

Organisations allow you to isolate separate groups of Generators, Teams and Users from each other. This greatly increases the ability of the Hub's structure to match the internal structure of your organisation.

When you bootstrapped your Hub, you will have created an initial Organisation. For a lot of use cases this will be enough.

Adding an Organisation

To add an Organisation, click the "Add new organisation" from the "Organisations" page of the Hub admin section.

Organisations only require a name but you can add an optional description.

Editing an Organisation

The "Organisations" page of the Hub admin section lists all the Organisations on the Hub.

Use the "edit" button next to each Organisation to change its name and description.

You can also use this page to set the "slug" used as the "machine friendly" name of the Organisation within URLs.

Slugs should be lower case and only container the letters a-z, the numbers 0-9 and -.

Deleting an Organisation

To delete an Organisation click on its "edit" button then select "Delete".

   Deleting an Organisation will delete all Generators, Users, and Teams that it owns.

Managing Users

Managing Users as a Hub admin is much like managing Users as the Owner or Admin or an Organisation with some key differences:

  1. You can assign Users Hub-level admin rights.

  2. You will be able to add and remove users from all Organisations, not just those you are a member of.

User management is done from the "Users" page within the Hub admin section. Select "Users" from the "Manage Hub" pulldown available in the top right of every page (for Hub-administrators).

Adding and Editing Users

To add a new User, click "Add new User". To edit an existing User, click on the User's name in the User list.

Users require a name and email address.

You can also give or change each User's Hub administration role by using the "Hub permissions" pulldown. This has two available roles:

  • Hub User a normal User, someone with no Hub-level administration rights (though they may have admin rights at an organisation level)

  • Hub Admin a "super" User who is able to access the "Manage Hub" section and also has free access to all resources within the Hub.

You can also quickly edit a User's Organisation memberships using the "Grant access to Organisations" list. For each Organisation you wish the User to access, check the checkbox next to its name and assign the user a Role.

Managing Synthesisers

The Hub can act as a Docker Registry in order to distribute Synthesiser images within your Organisation using the same API credentials used to download Generator Models.

To do this each Hub hosts a set of Synthesiser images.

Some Synthesiser images may have been embedded into your Hub distribution at creation time but you are free to upload others using the "Synthesisers" page within the "Manage Hub" section.

Uploading a Synthesiser Image

To add a new Synthesiser image to the Hub's inbuilt Docker repository, you should upload an exported image in TAR (or gzipped TAR) format.

Hazy will either provide you with an already suitable archive or you can create your own using the Docker (or Podman) CLI:

# export a docker image to a compressed TARfile
docker save my-image:latest | gzip > my-image.tar.gz

Then within the Synthesisers page, click on "Choose files..", select your image archive (my-image.tar.gz in the example above) and click on "Upload".

Depending on the size of the archive file (which can be quite large) this upload may take a long time.

Once uploaded the Hub will import the image and you should see it added to the list.

The Hub does not, as yet, provide support for docker push.

Verifying Synthesiser Images

You can use the Docker (or Podman) CLI to pull images from the Hub manually.

To do this you will need your API Key. For the examples below we will use an API key of RDLTtDe5RBDF9O1LCfhSJAHv13wxeuXi78kqxgA8z3Q=.

Let's assume that your Hub is available on the URL https://hub.local

First we need to authenticate our docker daemon to the Hub:

$ docker login --username docker --password RDLTtDe5RBDF9O1LCfhSJAHv13wxeuXi78kqxgA8z3Q= https://hub.local

# if your Hub instance is running on a non-standard port, then you must include it in the url
$ docker login --username docker --password RDLTtDe5RBDF9O1LCfhSJAHv13wxeuXi78kqxgA8z3Q= https://hub.local:4000

now we can docker pull any synthesiser images available on the Hub. Let's say that our Hub shows project/privb:20201015T160309 as one of the images it has available:

$ docker pull hub.local/project/privb:20201015T160309

# now we can run the Synthesiser image as normal
$ docker run --rm hub.local/project/privb:20201015T160309

# if your Hub instance is running on a non-standard port, then you must include it in the image reference
$ docker pull hub.local:4000/project/privb:20201015T160309

If you're running your Hub over HTTP (not HTTPS) then you will need to do some additional configuration to tell Docker that you are happy to connect to the Hub registry over an insecure connection. See this page for details: https://docs.docker.com/registry/insecure/

Deleting Synthesiser Images

Click on the "Delete" button next to the image name.

Synthesiser images embedded into your Hub distribution by Hazy cannot be deleted.