Claim additional payments for teaching - First-line support developer runbook
The audience for this document is a developer working on first-line support, who may not have worked on this service before. It explains how to perform some tasks that you might get asked to do.
Support tasks
I want to open the service for a new academic year
See new-academic-year.md.
If you want to do one of these tasks and you don’t have what you need, see the first-line support onboarding list.
I want to make a bug fix and deploy it
You will need
-
permissions to open a pull request in the repository
-
credentials for DfE’s Cloud Infrastructure platform and membership of an Active Directory group that allows you to perform a release — here’s how to check:
-
Log in to https://portal.azure.com with your
@digital.education.gov.ukemail address. -
Search for
s189-teacher-services-cloud-production. -
Click “My permissions”.
-
If you see something like
You are a member of the group 's189 SRTL delivery team ()' which has been assigned the role 'Reader' (type BuiltInRole) and has access to s189-teacher-services-cloud-production
then you have what you need.
-
You may need
- credentials for DfE Sign-in pre-production, if you’re investigating a bug in
the
/adminsite — seedfe-sign-in.md
Steps
-
Set up the app locally. See
README.md#setting-up-the-app-locally.If you need to try out something in the
/adminsite locally, see how to set up DfE Sign-in locally. -
Fix the bug.
-
Describe the fix in
CHANGELOG.md. -
Open a pull request into
master. -
Deploy a review app by adding the 'Deploy' tag to your PR and get it reviewed.
-
Merge the pull request.
I want to pull some data from the production database
You will need
- credentials for the project’s Azure infrastructure
Steps
- Make a Privileged Identity Management (PIM) request, to gain the elevated
permissions required to access production resources. See
privileged-identity-management-requests.md. - Ask another developer to approve the PIM request.
- Start a Rails console. See
README.md#accessing-production-data-with-a-live-rails-console.
I want to investigate an error
You may need
- access to the production Logit.io stack for the service, to view the web and worker logs
- access Sentry, to view details of exceptions
How to do it
- To view logs (web, worker, container), see
logging.md. - To view details of exceptions, see the Sentry
I want to export data for the “school check email”
Someone from DfE will probably ask us to do this at least once a month whilst there is a claim window open, which is around September – March.
You will need
-
credentials for DfE’s G Suite - i.e. an
@digital.education.gov.ukemail address -
credentials for DfE’s Cloud Infrastructure platform and membership of an Active Directory group that allows you to connect to a production container — here’s how to check:
-
Log in to https://portal.azure.com with your
@digital.education.gov.ukemail address. -
Search for
s189-teacher-services-cloud-production. -
Click “My permissions”.
-
If you see something like
You are a member of the group 's189 SRTL delivery team ()' which has been assigned the role 'Reader' (type BuiltInRole) and has access to s189-teacher-services-cloud-production
then you have what you need.
-
How to do it
Follow the steps in school-check-data.md. The
“relevant service operator” which that document refers to is probably the person
who raised the support ticket.
I want to remove the 'downloaded' state from a payroll run so it can be downloaded again
You will need
- credentials for the project’s Azure infrastructure
Steps
-
Make a Privileged Identity Management (PIM) request, to gain the elevated permissions required to access production resources. See
privileged-identity-management-requests.md. -
Ask another developer to approve the PIM request.
-
Start a Rails console. See
README.md#accessing-production-data-with-a-live-rails-console. -
Identify the latest
PayrollRunobject (double check that the dates are as expected), setdownloaded_atanddownloaded_by_idtoniland save the object:payroll = PayrollRun.last payroll.downloaded_at = nil payroll.downloaded_by_id = nil payroll.save
I want to restart the worker container instance
You will need
- credentials for the project’s Azure infrastructure
Steps
- Make a Privileged Identity Management (PIM) request, to gain the elevated
permissions required to access production resources. See
privileged-identity-management-requests.md. - Ask another developer to approve the PIM request.
Then run:
kubectl -n srtl-production rollout restart deployment claim-additional-payments-for-teaching-production-worker
If you need more detailed information about the rollout status, you can describe the deployment:
kubectl -n srtl-test describe deployment
claim-additional-payments-for-teaching-production-worker