You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
TomboFry 1e638526b1
Add mini-dashboard
10 months ago
src Add mini-dashboard 10 months ago
.env.template Use TomboDB to store queue history 10 months ago
.eslintignore Add eslint config 1 year ago
.eslintrc.json Ignore template literals in eslint 10 months ago
.gitignore Add DATA_DIR environment variable 10 months ago
.npmrc Add Tombo's stdlib library for errors 10 months ago
README.md Add JSON-RPC section to README 10 months ago
nodemon.json Decrease nodemon delay 1 year ago
package-lock.json Update packages to latest version 10 months ago
package.json Update packages to latest version 10 months ago

README.md

Tombo Configurator

For automatically deploying custom services when pushing to git services. Think of it like a self-hosted GitHub Actions service.

Requirements

  • nodejs (LTS or latest version, idk)
  • git installed to your PATH

Configuration

Inside a .tombo directory should reside a deployment.json file, which contains all the necessary setup for your deployment (hence the name).

Example

{
	"deployments": { // Where the deployments live
		"build-and-deploy": { // Name of the deployment, can be anything
			"directory": "/mnt/files/software", // Where the software on your system lives
			"branches": [ // List of branches this deployment applies to
				"master",
				"develop"
			],
			"commands": [ // List of commands to run, in order
				"npm install",
				"npm run build",
				"npm start"
			]
		}
	}
}

RESTful API

Utilises various git platforms' webhooks. When something is pushed, a POST request is made to the API. Assuming you have a valid deployment configuration file, it will be retrieved and passed to the queue for further processing.

JSON-RPC Queue Manager

After the configuration file has been validated, and the push event has been added to the queue, your repo will have git clone or git pull run on the server where tombo-configurator is hosted to grab the latest version of your code on the provided branch. It will run any commands within the directory specified in order to start your application.