Skip to content

Instantly share code, notes, and snippets.

@johnnydecimal
Last active December 15, 2019 02:41
Show Gist options
  • Save johnnydecimal/ee9a7270a110af23cdc356f2b95c745e to your computer and use it in GitHub Desktop.
Save johnnydecimal/ee9a7270a110af23cdc356f2b95c745e to your computer and use it in GitHub Desktop.
Generated by XState Viz: https://xstate.js.org/viz
// v1.2.0 2019-12-15
const engineRoom = Machine({
id: 'application',
type: 'parallel',
states: {
Application: {
initial: 'start',
states: {
start: {
on: {
'DISCOVER_APPLICATION [32.61]': 'Application discovered [32․41]',
},
},
'Application discovered [32․41]': {
on: {
'No application owner found [33.63]':
'ABRG determining owner [33․42]',
'Not approved to proceed [44.61]': 'Retire application [71․41]',
'Approved to proceed [44.62]': 'Approved to proceed [33․44]',
},
},
'ABRG determining owner [33․42]': {
on: {
'Business owner determined [33.64]':
'Application discovered [32․41]',
'Not approved to proceed [44.61]': 'Retire application [71․41]',
},
},
'Approved to proceed [33․44]': {
on: {
'Testing & remediation complete [51.61]':
'Testing & remediation complete [51․41]',
'Retire application [71.62]': 'Retire application [71․41]',
},
},
'Retire application [71․41]': {
on: {
'Application retired [71.61]': 'Application retired [71․42]',
},
},
'Application retired [71․42]': {
type: 'final',
},
'Testing & remediation complete [51․41]': {
type: 'final',
},
},
},
Job: {
initial: 'Smoke-testing [55․41]',
states: {
'Smoke-testing [55․41]': {
on: {
'Smoke-test successful [55.61]': 'TDV testing [56․42]',
'Smoke-test failed [55.62]': 'Remediating [52․41]',
},
},
'TDV testing [56․42]': {
on: {
'TDV test successful [56.63]': 'BDV testing [56․43]',
'TDV test N/A [56.65]': 'BDV testing [56․43]',
'TDV test failed [56.67]': 'Remediating [52․41]',
},
},
'BDV testing [56․43]': {
on: {
'BDV test successful [56.64]': 'Recording test approvals [55․43]',
'BDV test N/A [56.66]': 'Recording test approvals [55․43]',
'BDV test failed [56.68]': 'Remediating [52․41]',
},
},
'Remediating [52․41]': {
on: {
'Remediation completed [52.61]': 'Smoke-testing [55․41]',
'Remediation completed, SRA void [52.62]':
'Assessing security risk [43․41]',
'Remediation failed [52.63]': 'Retire application [71․41]',
},
},
'Assessing security risk [43․41]': {
on: {
'Risk acceptable [43.61]': 'Smoke-testing [55․41]',
'Risk unacceptable [43.62]': 'Retire application [71․41]',
},
},
'Recording test approvals [55․43]': {
on: {
'Test approval recorded [55.64]': 'Deploying to production [61․42]',
},
},
'Deploying to production [61․42]': {
on: {
'Deployed to production [61.61]': 'Deployed to production [61․43]',
},
},
'Retire application [71․41]': {
type: 'final',
},
'Deployed to production [61․43]': {
type: 'final',
},
},
},
},
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment