Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
0621f94
DI-476 Hotfix - Remove publicname change ability (#405)
mabe13 Jun 22, 2022
8d1cbb0
DI-489 Hotfix bug fixes release 1-0-4 (#412)
mabe13 Jun 28, 2022
1d5cb1f
Release 2.0.0 into Live (#440)
JackPlowman Jul 20, 2022
d3d1e0a
DI-544 Fixed hash bug for Specified Open Times (#467)
SLClayton Aug 17, 2022
998a44f
DI-574 Allow Cloudwatch Alarms to read KMS Keys (Release 2.2) (#506)
JackPlowman Sep 5, 2022
6775f2f
Release/3.0 (#538)
JackPlowman Oct 17, 2022
9ccc4cd
Hotfix 3.1 (#550)
JackPlowman Oct 19, 2022
850b27a
Release Hotfix 3.2 (DI-653) (#556)
JackPlowman Oct 31, 2022
8e5ec54
Release/4.0 (#561)
JackPlowman Nov 1, 2022
6ed412d
Release/5.0 (#571)
JackPlowman Nov 3, 2022
a7fe7b7
Release/6.0 (#596)
JackPlowman Jan 10, 2023
a8a407a
Release/7.0 (#602)
JackPlowman Jan 25, 2023
12ce283
Release/8.0 (#624)
JackPlowman Feb 6, 2023
2398809
Release/9.0 (#629)
JackPlowman Feb 13, 2023
fad279a
Release/10.0 (#635)
JackPlowman Feb 20, 2023
2cd1899
Release/11.0 (#652)
JackPlowman Mar 27, 2023
20ea7bd
Release/12.0 (#671)
JackPlowman Apr 25, 2023
f90a651
Release/14.0 (#699)
JackPlowman Jun 1, 2023
8e681be
Release/15.0 (#735)
mabe13 Jun 19, 2023
4442de2
Release/16.0 (#775)
mabe13 Aug 3, 2023
c3516b9
Release/16.1 - Hotfix (#781)
mabe13 Aug 8, 2023
d01913e
Release Shared Resources Two (#793)
JackPlowman Aug 16, 2023
83da498
Release/17.0 (#803)
JackPlowman Aug 25, 2023
c057b4b
Release 17.1 Remove Reliance on RDS Instances (#808)
JackPlowman Aug 29, 2023
a26f457
Release/18.0 (#852)
JackPlowman Sep 21, 2023
519c4b1
Release/18.1 (#862)
JackPlowman Oct 10, 2023
21f2ebc
Release Shared Resources Three (#856)
JackPlowman Oct 12, 2023
6453198
Release/19.0 (#916)
JackPlowman Nov 10, 2023
4d43baa
Release/20.0 (#938)
JackPlowman Nov 23, 2023
c011173
Release/21.0 (#950)
mabe13 Dec 11, 2023
4cdc7cf
Release/22.0 (#959)
JackPlowman Dec 14, 2023
c75d7e0
Release/23.0 (#979)
JackPlowman Dec 28, 2023
1c329da
Release/24.0 (#996)
JackPlowman Feb 1, 2024
38f6426
Release/25.0 (#1003)
mabe13 Apr 4, 2024
38df3eb
Release/25.1 (#1014)
mabe13 Apr 9, 2024
b347953
Release Shared Resources Six (#1026)
mabe13 May 28, 2024
a34a326
Release 26.0 (#1031)
Tomdango Sep 24, 2024
7442128
Release/27.0 (#1036)
nsindhu26 Dec 18, 2024
e206407
Release/27.1 (#1039)
nsindhu26 Jan 14, 2025
bd99f32
Release/28.0 (#1043)
ajmu1 Feb 11, 2025
5c61eee
Release/shared resources nine (#1047)
ajmu1 Mar 14, 2025
3fe5a6a
Release shared resources nine one (reroll) (#1055)
mabe13 May 23, 2025
013bc14
Temp file for github actions checks
mabe13 Jun 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions application/.coveragerc → .coveragerc
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,6 @@ omit =
**/__init__.py
tests/*
**/tests/*
application/dos_db_handler/*.py
**/conftest.py
branch = True
3 changes: 3 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,6 @@ indent_style = tab

[*.py]
indent_size = 4

[*.md]
indent_size = unset
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Release Branch Pull Request

## Description of Changes

Please include a summary of the change
26 changes: 26 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE/task_pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Task Branch Pull Request

**<https://nhsd-jira.digital.nhs.uk/browse/{{ .BRANCH_NUMBER }}>**

## Description of Changes

Please include a summary of the change

## Type of change

Delete not appropriate

- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing functionality to not work as expected)
- Refactoring (non-breaking change which improves the structure of the code)

## Development Checklist

- [ ] I have performed a self-review of my own code
- [ ] Tests have added that prove my fix is effective or that my feature works (Integration tests)
- [ ] I have updated Dependabot to include my changes (if applicable)

## Code Reviewer Checklist

- [ ] I can confirm the changes have been tested or approved by a tester
22 changes: 22 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE/test_pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Test Branch Pull Request

## What branch do these tests check?

-

## Description of changes/tests

Why do these tests need to exist?/When should the test be run?

## Development Checklist

- [ ] The tests are tagged correctly
- [ ] The tests will be run in the development pipeline
- [ ] The tests are stable and pass
- [ ] I have used reusable functions and classes where possible

## Code Reviewer Checklist

- [ ] I am confident the tests are stable and have passed
- [ ] I am confident the tests will be run in the development pipeline
- [ ] I believe the tests developed in a way which makes them reusable and maintainable
34 changes: 34 additions & 0 deletions .github/SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Security

NHS England takes security and the protection of private data extremely seriously. If you believe you have found a vulnerability or other issue which has compromised or could compromise the security of any of our systems and/or private data managed by our systems, please do not hesitate to contact us using the methods outlined below.

## Table of Contents

- [Security](#security)
- [Table of Contents](#table-of-contents)
- [Reporting a vulnerability](#reporting-a-vulnerability)
- [Email](#email)
- [NCSC](#ncsc)
- [General Security Enquiries](#general-security-enquiries)

## Reporting a vulnerability

Please note, email is our preferred method of receiving reports.

### Email

If you wish to notify us of a vulnerability via email, please include detailed information on the nature of the vulnerability and any steps required to reproduce it.

You can reach us at:

- [cybersecurity@nhs.net](cybersecurity@nhs.net)

### NCSC

You can send your report to the National Cyber Security Centre, who will assess your report and pass it on to NHS England if necessary.

You can report vulnerabilities here: [https://www.ncsc.gov.uk/information/vulnerability-reporting](https://www.ncsc.gov.uk/information/vulnerability-reporting)

## General Security Enquiries

If you have general enquiries regarding our cyber security, please reach out to us at [cybersecurity@nhs.net](cybersecurity@nhs.net)
66 changes: 66 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
version: 2
updates:
# Maintain dependencies for GitHub Actions
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
target-branch: "develop"

# Maintain dependencies for Python (Works recursively in application directories)
- package-ecosystem: "pip"
directory: "/application"
schedule:
interval: "monthly"
target-branch: "develop"
versioning-strategy: increase-if-necessary

# Docker Dependencies
- package-ecosystem: "docker"
directory: "/build/docker/lambda"
schedule:
interval: "daily"
target-branch: "develop"

- package-ecosystem: "docker"
directory: "/build/docker/tester"
schedule:
interval: "daily"
target-branch: "develop"

# Terraform Dependencies
- package-ecosystem: "terraform"
directory: "/infrastructure/modules/s3"
schedule:
interval: "monthly"
target-branch: "develop"

- package-ecosystem: "terraform"
directory: "/infrastructure/stacks/api-key"
schedule:
interval: "monthly"
target-branch: "develop"

- package-ecosystem: "terraform"
directory: "/infrastructure/stacks/blue-green-link"
schedule:
interval: "monthly"
target-branch: "develop"

- package-ecosystem: "terraform"
directory: "/infrastructure/stacks/shared-resources"
schedule:
interval: "monthly"
target-branch: "develop"

- package-ecosystem: "terraform"
directory: "/infrastructure/stacks/application"
schedule:
interval: "monthly"
target-branch: "develop"

- package-ecosystem: "terraform"
directory: "/infrastructure/stacks/development-and-deployment-tools"
schedule:
interval: "monthly"
target-branch: "develop"
46 changes: 2 additions & 44 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,45 +1,3 @@
## Link to JIRA Ticket
# Warning

-

## Description

Please include a summary of the change

### Noteworthy Changes

- These are changes the reviewer should look out for

## Type of change

Delete not appropriate

- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing functionality to not work as expected)
- This change requires a documentation update

## Testing

Please tick the testing that has been completed

- [ ] Unit tests
- [ ] Integration tests

## Developer Checklist

- [ ] I have performed a self-review of my own code
- [ ] I have run the [code formatting checks](../README.md#code-quality)
- [ ] I have run the [code quality checks](../README.md#code-quality)
- [ ] New code meets [standards](https://nhsd-confluence.digital.nhs.uk/display/DI/DI+Ways+of+Working) agreed by the team
- [ ] Unit test code coverage is at or above 80%
- [ ] New and existing unit tests pass locally with my changes
- [ ] Tests have added that prove my fix is effective or that my feature works (Integration tests)
- [ ] I have made corresponding changes to the documentation
- [ ] I have cleaned down my environment (if created)

## Code Reviewer Checklist

- [ ] I have run the unit tests and they run correctly
- [ ] I can confirm the changes have been tested or approved by a tester
- [ ] I can confirm no remaining infrastructure is left over from this branch
Please don't modify this description yet it will be populated once you create the pull request.
19 changes: 19 additions & 0 deletions .github/workflows/check-pull-request-checklist.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: "Check Pull Request Checklist"

on:
pull_request:
types: [opened, ready_for_review, edited, synchronize, reopened]

permissions:
contents: read
pull-requests: read

jobs:
pull-request-checklist:
runs-on: ubuntu-latest
steps:
- uses: mheap/require-checklist-action@v2
with:
requireChecklist: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
75 changes: 62 additions & 13 deletions .github/workflows/code-quality.yml
Original file line number Diff line number Diff line change
@@ -1,38 +1,87 @@
name: "Check code format and quality"

on:
push:
branches: [master]
branches: [develop, main]
pull_request:
types: [opened, synchronize, reopened]
types: [opened, ready_for_review, synchronize, reopened]

permissions:
contents: read

jobs:
check-code-quality:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check text files format
run: |
build/automation/etc/githooks/scripts/editorconfig-pre-commit.sh
- name: Check Python files format
- name: Tester Build
run: |
make python-linting
- name: Check Terraform files format
make tester-build
- name: Check Python Unit Test Coverage
run: |
build/automation/etc/githooks/scripts/terraform-format-pre-commit.sh
- name: Create coverage report
run: |
make tester-build coverage-report
make coverage-report
- uses: sonarsource/sonarcloud-github-action@master
# SEE: https://github.com/SonarSource/sonarcloud-github-action
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
with:
projectBaseDir: ./application
projectBaseDir: .
args: >
-Dsonar.sources=application,infrastructure,scripts,test,build/docker
-Dsonar.organization=nhsd-exeter
-Dsonar.projectKey=uec-dos-int
-Dsonar.coverage.exclusions=tests/**,**/tests/**
-Dsonar.coverage.exclusions=tests/**,**/tests/**,infrastructure,application/dos_db_handler/**,test/**,scripts/**,application/conftest.py
-Dsonar.python.coverage.reportPaths=coverage.xml
-Dsonar.python.version=3.9
-Dsonar.python.version=3.12
-Dsonar.exclusions=application/**/tests/**

check-markdown-code-quality:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check Markdown format
uses: DavidAnson/markdownlint-cli2-action@v13
with:
config: .github/workflows/configs/markdownlint/.markdownlint.json
- name: Check Markdown links
uses: gaurav-nelson/github-action-markdown-link-check@v1
with:
use-quiet-mode: "yes"
config-file: .github/workflows/configs/markdownlint/markdown-check-links.json
base-branch: develop
check-modified-files-only: "yes"

check-prose:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check prose
uses: errata-ai/vale-action@reviewdog
with:
fail_on_error: true

check-python-code-quality:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Tester Build
run: |
make tester-build
- name: Run Python Linting & Formatting
run: |
make python-run-ruff-checks
- name: Check for Python Dead Code
run: |
make python-check-dead-code
18 changes: 18 additions & 0 deletions .github/workflows/code-secrets.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: "Check code for Secrets"

on: push

permissions:
contents: read

jobs:
check-code-secrets:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check if code contains any secrets
run: make git-config git-secrets-scan-repo-files
- name: Checkov Secret Scanner
run: make checkov-secret-scanning
28 changes: 20 additions & 8 deletions .github/workflows/code-security.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,26 @@
name: "Check code for secrets"
on: push
name: "Check code for Security Vulnerabilities"

on:
push:
branches: [develop, master]
pull_request:
types: [opened, synchronize, reopened]

permissions:
contents: read

jobs:
check-code-security:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check if code contains any secrets
run: |
make \
git-config \
git-secrets-scan-repo-files
- name: Check if code contains any Terraform Security Vulnerabilities
run: make terraform-security
- name: Checkov Security and Best Practices - Docker
run: make -s docker-best-practices
- name: Checkov Security and Best Practices - Terraform
run: make -s terraform-best-practices
- name: Checkov Security and Best Practices - Github Actions
run: make -s github-actions-best-practices
Loading
Loading