Prepopulating a Local Artifact Repository

On occasion it can be useful to have/control/prepopulate a local repository of entity installers [1].

The following command (run from ~/) may be used to sync Cloudsoft's fallback repository to the local ~/.brooklyn/repository/ folder:

wget --directory-prefix=".brooklyn/repository/" --no-parent --relative --no-host-directories --reject="index.html*" --cut-dirs=2 --recursive -e robots=off --user-agent="Brooklyn Repository Sync"

Brooklyn's default search behaviour for installation artifacts is as follows:

  1. The local ~/.brooklyn/repository/ folder.
  2. The entity's installer's public download url (or an overridden url if one has been specified).
  3. Cloudsoft's fallback repository.

Cloudsoft's fallback repository [2] contains many of the installation artifacts used by current Brooklyn entities.

It is intended to prevent problems occurring when the public url for an installer changes (e.g. when several new versions of MySQL have been released). It is provided on an as-is and as-available basis.

If you use this command to create a local repository, please respect the --user-agent. In future this will allow Cloudsoft to easily filter repository syncing behaviour from fallback behaviour, allowing out-of-date entities to be more easily identified and updated.

  1. For example, when establishing a local cache or enterprise golden source, or when developing Brooklyn while offline, in planes, trains and automobiles, or other such situations of exemplary derring-do [3].
  3. This one time, Cloudsoft ran a team hackathon in a castle in the remote Highlands of Scotland. Remote Highlands != reliable big pipe internet.