Home

Awesome

Digital Paper Edit - Infrastructure

This is purely the infrastructural part to tie together the API and the client of Digital Paper Edit.

See here for overall project architecture info

<!-- [Link to API]() -->
EnvironmentURL
MockLocal dev - TBC
Inthttps://digital-paper-edit.int.tools.bbc.co.uk
Testhttps://digital-paper-edit.test.tools.bbc.co.uk
Livehttps://digital-paper-edit.live.tools.bbc.co.uk

See @bbc/digital-paper-edit-client/docs/ADR/2019-04-23-transcript-architecture.md for more info on the architecure and diagram.

System Architecture

Usage

The Makefile has instructions that will allow you to build your RPMS and release them. There are 3 Makefiles in this repository:

  1. Root level
  2. dpe-api
  3. dpe-client

The root level Makefile will allow you to package an RPM that will pull in dpe-client and dpe-api that is released into a yum repository in Cosmos. There is nothing else in there. This will be deployed to Cosmos via Jenkins to install and automatically start the services. It is still a WIP, and will not work as is - there still needs to be work done for accessing the Cosmos yum repo.

At the dpe-api and dpe-client Makefile, you can build the RPM that pulls in the NPM modules, that contain the logic.

These Makefile instructions will only work on BBC CentOS based machines, as it requires certain BBC specific dependencies.

Development

Dependencies

Both dpe-api and dpe-client services pull in a dependency from the BBC NPM.

dpe-api

The API Express is directly used without assignment.

dpe-client

Running

Locally

In both dpe-api and dpe-client run:

npm start

This will start the client at http://localhost:8080 and the api at http://localhost:5000.

Build

Cloudformation

You can build the AWS Stacks in infrastructure by running make all. This will install Python dependencies in your virtualenv folder and generate the templates.

Deployment

For BBC deployment the Jenkins job is still WIP, and will not work as is. If you want to update Cloudformation, you will need to do it manually here.

Licence

<!-- mention MIT Licence -->

See LICENCE

Legal Disclaimer

Despite using React and DraftJs, the BBC is not promoting any Facebook products or other commercial interest.