/content-publisher

Publishing application for GOV.UK

Primary LanguageRubyMIT LicenseMIT

Content Publisher

A unified publishing application for content on GOV.UK

Nomenclature

  • Content - Some text (and related fields) a user wants to publish
  • Revision - A version of a piece of content in a particular locale
  • Edition - A revision that is in the Publishing API
  • Document - All revisions of a piece of content in a particular locale

Technical documentation

This is a Ruby on Rails application, and should follow our Rails app conventions.

You can use the GOV.UK Docker environment to run the application and its tests with all the necessary dependencies. Follow the usage instructions to get started.

Use GOV.UK Docker to run any commands that follow.

Before running the app

The first time you run this application for development, enable debug and pre_release_features permissions:

bundle exec rake development_permissions

To enable them for your GOV.UK account add them to your account in Signon.

Running the test suite

Note: You will need to checkout govuk-helm-charts into your govuk repository in order to have local tests passing.

bundle exec rake

To run JavaScript tests (only):

# run JS tests in browser
yarn run jasmine:browser

# run JS tests on command line
yarn run jasmine:ci

Our test environment is setup to render 'real' error pages, instead of raising an exception. This can make it hard to debug a test failure, as the actual error won't appear in the test output. Instead, you can see it in log/test.log.

Further documentation

Licence

MIT License