Business Continuity and Disaster Recovery

Effective [date of publication]

AppTuneCraft: Automation & Site Cleanup, a Jira Cloud app built on Atlassian Forge
Marketplace listingNot listed yet. TuneCraft is not on the Atlassian Marketplace yet, and its app key will be added here when it is.
Forge app IDari:cloud:ecosystem::app/facece90-dfd5-4792-9bff-6a5bd061a341
VendorPlugincraft Software Inc., a company incorporated under the laws of Québec, Canada

The short version

  • TuneCraft runs entirely on Atlassian Forge. Atlassian runs the app's functions, stores its data and backs that data up, so most disruptions are Atlassian's to recover from, under Atlassian's own continuity and disaster recovery programs.
  • Plugincraft has no servers of its own and holds no copy of customer data.
  • Our part is to be able to ship a fix or withdraw a faulty version at any time, and to keep customers informed. Two owners with the same authority can each do that.

What the app depends on

DependencyWhat it doesWho recovers it
Atlassian Jira Cloud and ForgeRuns the app, stores its data (Forge SQL), runs its scheduled and queued jobs, keeps its logs, receives the automatic scan at the app's web trigger and sells licences.Atlassian
The private source repository and its build pipelineHolds the code, runs the automated checks and deploys new versions.Plugincraft
The build runnersRun the automated checks for each change.Plugincraft
The plugincraft.ca websiteHosts the manual, the trust pages and the terms.Plugincraft
EmailKeeps us in contact with customers and Atlassian.Plugincraft, with its provider
A customer's sender, if the customer turned on the automatic scanA script the customer runs, on its own systems or as a scheduled job in ScriptRunner Cloud, a script app from another publisher that the customer installed, that pushes the redacted scan into the app. If it stops, the app keeps the last scan and says the push is late.The customer

Recovery objectives

Scenarios and what we do

ScenarioWhat we do
Jira or Forge is down or slowFollow Atlassian's status page, tell affected customers when the app is affected, and check the app once Atlassian has recovered.
App data is lost or damaged on the platformRaise a support ticket with Atlassian within 21 days of the loss so it can restore the data. A Jira admin can also scan the site's automation again, from a new export or the next automatic scan, to rebuild the latest scan.
A release is faultyWithdraw it by deploying the last good version from the repository, or ship a fix, through the usual review.
The source repository or its provider is unavailableEach owner keeps a full copy of the repository. A version can be built and deployed to Forge from any copy, and the repository can be recreated elsewhere.
The build runners are downRestart them, or run the same checks on the other owner's computer. A fix is never deployed without them.
An owner's account or a deploy credential is compromisedRevoke it at once, replace the credential, check recent deploys and changes, and handle it as a security incident.
One owner is unavailableThe other owner has the same authority and access, and carries on.
The website is downRedeploy it from its repository.

Roles

The President of Plugincraft Software Inc. leads recovery, as the incident lead in Incident Response, or names the other owner to do so. Either owner may deploy a fix or withdraw a version.

Review and testing

We review this plan once a year, as part of the yearly security review, and after any significant change or disruption. Once a year we also run a short practice exercise of a disruption and record what we learned.