Lifecycle

create a site

// workspace is the site that the user is publishing
cWorkspace = { 
    domain: domain.domain
    job: {
        jobId: "-1",
        status: JobStatus.SUBMITTED,
        workspace: wsId,
        created: -1,
    },
}

DomainsService.create
WorkspaceModel.create

create a domain

Add domain to domain table

create {
    ...
}

hooks

onGithubHook { 
    hooksService.onGithubHook
}
jobsService.create

job create

Writes message into SQS

create { 
    ...
}