Skip to main content

Application: specialist-publisher

Publishes specialist documents on GOV.UK

Ownership
#govuk-platform-health
Hosting
AWS, on the backend machine class
Continuously deployed?
No
Rake tasks
Integration, Staging or ⚠️ Production ⚠️

Relevant manual pages

Imported documents

Example pages published by specialist-publisher

README

Publishing App for Specialist Documents.

This application does not store documents in a database of its own. Instead it uses Publishing API to store and retrieve documents. MongoDB is used for storing local user records.

Formats can be flagged as pre-production. pre-production documents are only publishable on development and integration.

Live examples

Nomenclature

  • Format: Category of a Document. Format names are listed in the Live Examples section above and include MAIB Reports and CMA Cases.
  • Finder: Sometimes Formats are referred to as Finders. They are called ‘Finders’ because each one of them creates a finder on GOV.UK, e.g. https://www.gov.uk/raib-reports. The formats are served by Finder Frontend.
  • Document: Specialist Documents are created by Government editors and can be published to gov.uk. Documents differ from each other depending on their format. These differences are largely determined by what is contained in the schema of a format.
  • Schema: JSON files defining attributes for each format, including base_path, document_noun and document_type. It also contains the facets and their possible values for each document_type which are displayed by _form.html.erb.

Technical documentation

This is a Ruby on Rails app, 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

You may find that you can’t see any documents after replicating data. To fix this, you need to grant user permissions in this application:

bundle exec rake permissions:grant['Chris Patuzzo'] # Or whichever user you're logged in as.

Running the test suite

$ bundle exec rake

Further documentation