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
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.uk
email 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
/admin
site — 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
/admin
site 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 to the
dxw/dfe-claim
project in Rollbar, 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
dxw/dfe-claim
project in Rollbar.
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.uk
email 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.uk
email 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
PayrollRun
object (double check that the dates are as expected), setdownloaded_at
anddownloaded_by_id
tonil
and 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