laravel-forge-js

1.0.0 • Public • Published

Forge JavaScript SDK

Unofficial JavaScript SDK for the Laravel Forge Api

Installation

With NPM:

npm install @fwartner/forge-js@1.0.0

With Yarn:

yarn add @fwartner/forge-js@1.0.0

Usage

The SDK harneses Promises and the Fetch Api to handle requests.

import Forge from 'forge-js'

let forge = new Forge(API_KEY)

// Get Servers
let servers;

forge.servers()
    .then(r => servers = r)

Availible Methods

Servers

forge.servers()
forge.server(serverId)
forge.rebootServer(serverId)

Services

MySQL

forge.rebootMysql(serverId)
forge.stopMysql(serverId)

Postgres

forge.rebootPostgres(serverId)
forge.stopPostgres(serverId)

NginX

forge.rebootNginx(serverId)
forge.stopNginx(serverId)
forge.siteNginxFile(serverId, siteId)
forge.updateSiteNginxFile(serverId, siteId, content)

Blackfire

forge.installBlackfire(serverId, data)
forge.removeBlackfire(serverId)

Papertrail

forge.installPapertrail(serverId, data)
forge.removePapertrail(serverId)

Daemons

forge.daemons(serverId)
forge.daemon(serverId, daemonId)
forge.createDaemon(serverId, data)
forge.restartDaemon(serverId, daemonId)
forge.deleteDaemon(serverId, daemonId)

Firewall Rules

forge.firewallRules(serverId)
forge.firewallRule(serverId, ruleId)
forge.createFirewallRule(serverId, data)
forge.deleteFirewallRule(serverId, ruleId)

Sites

forge.sites(serverId)
forge.site(serverId, siteId)
forge.createSite(serverId, data)
forge.updateSite(serverId, siteId, data)

// NOT FOUND IN API DOCS --- @TODO: CHECK OUT FORGE PHP SDK
// refreshSiteToken(serverId, siteId){}

forge.deleteSite(serverId, siteId)

Environment File

forge.siteEnvironmentFile(serverId, siteId)
forge.updateSiteEnvironmentFile(serverId, siteId, content)

Site Repositories and Deployments

forge.installGitRepositoryOnSite(serverId, siteId, data)
forge.destroySiteGitRepository(serverId, siteId)
forge.siteDeploymentScript(serverId, siteId)
forge.updateSiteDeploymentScript(serverId, siteId, content)
forge.enableQuickDeploy(serverId, siteId)
forge.disableQuickDeploy(serverId, siteId)
forge.deploySite(serverId, siteId)
forge.resetDeploymentState(serverId, siteId)
forge.siteDeploymentLog(serverId, siteId)

Installing Wordpress

forge.installWordPress(serverId, siteId, data)
forge.removeWordPress(serverId, siteId)

Updating Load balancing Configuration

forge.updateLoadBalancingConfiguration(serverId, siteId, data)

Workers

forge.workers(serverId, siteId)
forge.worker(serverId, siteId, workerId)
forge.createWorker(serverId, siteId, data)
forge.deleteWorker(serverId, siteId, workerId)
forge.restartWorker(serverId, siteId, workerId)

SSL Certificates

forge.certificates(serverId, siteId)
forge.certificate(serverId, siteId, certificateId)
forge.createCertificate(serverId, siteId, data)
forge.deleteCertificate(serverId, siteId, certificateId)
forge.getCertificateSigningRequest(serverId, siteId, certificateId)
forge.installCertificate(serverId, siteId, certificateId)
forge.activateCertificate(serverId, siteId, certificateId)
forge.obtainLetsEncryptCertificate(serverId, siteId, data)

MySQL

forge.mysqlDatabases(serverId)
forge.mysqlDatabase(serverId, databaseId)
forge.createMysqlDatabase(serverId, data)
forge.updateMysqlDatabase(serverId, databaseId, data)
forge.deleteMysqlDatabase(serverId, databaseId)

Users

forge.mysqlUsers(serverId)
forge.mysqlUser(serverId, userId)
forge.createMysqlUser(serverId, data)
forge.updateMysqlUser(serverId, userId, data)
forge.deleteMysqlUser(serverId, userId)

Contributions are welcome.

Readme

Keywords

none

Package Sidebar

Install

npm i laravel-forge-js

Weekly Downloads

4

Version

1.0.0

License

MIT

Unpacked Size

31.8 kB

Total Files

14

Last publish

Collaborators

  • fwartner