Skip to content

Additional Information

Bogdan Marc edited this page Sep 9, 2024 · 2 revisions

Coding standards

Rubocop should complete with no warnings.

Tests

Simply:

API_SERVICE_URL=http://localhost:8081 bundle exec rails test

Passing in the API_SERVICE_URL is required to ensure the tests run against the standard-reports-manager service running locally.

Issues

Please add issues to the shared issues list

Deployment

The detailed deployment mapping is described in deployment.yml. At the time of writing, using the new infrastructure, the deployment process is as follows:

  • commits to the dev-infrastructure branch will deploy the dev server
  • commits to the preprod branch will deploy the pre-production server
  • any commit on the prod branch will deploy the production server as a new release

If the commit is a "new" release, the deployment should be tagged with the same semantic version number matching the BREAKING.FEATURE.PATCH format, e.g. v1.2.3, the same as should be set in the /app/lib/version.rb; also, a short annotation summarising the updates should be included in the tag as well.

Once the production deployment has been completed and verified, please create a release on the repository using the same semantic version number. Utilise the Generate release notes from commit log option to create specific notes on the contained changes as well as the ability to diff agains the previous version.

entrypoint.sh features

  • Workaround to removing the PID lock of the Rails process in the event of the application crashing and not releasing the process.
  • Guards to ensure the required environment variables are set accordingly and trigger the build to fail noisily and log to the system.
  • Rails secret creation for SECRET_KEY_BASE assignment; see Runtime Configuration environment variables.