Skip to content

Commit cf14fd2

Browse files
committed
Merge branch 'main' into remove_aws_lambda
2 parents 75e8778 + a817268 commit cf14fd2

267 files changed

Lines changed: 12572 additions & 11058 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.cfnlintrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
ignore_checks:
22
- W3002
3+
- E2002

.devcontainer/Dockerfile

Lines changed: 11 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1,86 +1,15 @@
1-
FROM mcr.microsoft.com/devcontainers/base:ubuntu
2-
3-
# provide DOCKER_GID via build args if you need to force group id to match host
4-
ARG DOCKER_GID
5-
ARG TARGETARCH
6-
ENV TARGETARCH=${TARGETARCH}
7-
8-
ARG ASDF_VERSION
9-
COPY .tool-versions.asdf /tmp/.tool-versions.asdf
10-
11-
# Anticipate and resolve potential permission issues with apt
12-
RUN mkdir -p /tmp && chmod 1777 /tmp
13-
14-
RUN apt-get update \
15-
&& export DEBIAN_FRONTEND=noninteractive \
16-
&& apt-get -y dist-upgrade \
17-
&& apt-get -y install --no-install-recommends htop vim curl git build-essential \
18-
libffi-dev libssl-dev libxml2-dev libxslt1-dev libjpeg8-dev libbz2-dev \
19-
zlib1g-dev unixodbc unixodbc-dev libsecret-1-0 libsecret-1-dev libsqlite3-dev \
20-
jq apt-transport-https ca-certificates gnupg-agent \
21-
software-properties-common bash-completion python3-pip make libbz2-dev \
22-
libreadline-dev libsqlite3-dev wget llvm libncurses5-dev libncursesw5-dev \
23-
xz-utils tk-dev liblzma-dev netcat-traditional libyaml-dev
24-
25-
# Download correct AWS CLI for arch
26-
RUN if [ "$TARGETARCH" = "arm64" ] || [ "$TARGETARCH" = "aarch64" ]; then \
27-
wget -O /tmp/awscliv2.zip "https://awscli.amazonaws.com/awscli-exe-linux-aarch64.zip"; \
28-
else \
29-
wget -O /tmp/awscliv2.zip "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip"; \
30-
fi && \
31-
unzip /tmp/awscliv2.zip -d /tmp/aws-cli && \
32-
/tmp/aws-cli/aws/install && \
33-
rm /tmp/awscliv2.zip && rm -rf /tmp/aws-cli
34-
35-
# Download correct SAM CLI for arch
36-
RUN if [ "$TARGETARCH" = "arm64" ] || [ "$TARGETARCH" = "aarch64" ]; then \
37-
wget -O /tmp/aws-sam-cli.zip "https://github.com/aws/aws-sam-cli/releases/latest/download/aws-sam-cli-linux-arm64.zip"; \
38-
else \
39-
wget -O /tmp/aws-sam-cli.zip "https://github.com/aws/aws-sam-cli/releases/latest/download/aws-sam-cli-linux-x86_64.zip"; \
40-
fi && \
41-
unzip /tmp/aws-sam-cli.zip -d /tmp/aws-sam-cli && \
42-
/tmp/aws-sam-cli/install && \
43-
rm /tmp/aws-sam-cli.zip && rm -rf /tmp/aws-sam-cli
44-
45-
# Install ASDF
46-
RUN ASDF_VERSION=$(awk '!/^#/ && NF {print $1; exit}' /tmp/.tool-versions.asdf) && \
47-
wget -O /tmp/asdf.tar.gz https://github.com/asdf-vm/asdf/releases/download/v${ASDF_VERSION}/asdf-v${ASDF_VERSION}-linux-amd64.tar.gz; \
48-
tar -xvzf /tmp/asdf.tar.gz; \
49-
mv asdf /usr/bin
1+
ARG IMAGE_NAME=node_24_python_3_14
2+
ARG IMAGE_VERSION=latest
3+
FROM ghcr.io/nhsdigital/eps-devcontainers/${IMAGE_NAME}:${IMAGE_VERSION}
504

5+
USER root
516
# specify DOCKER_GID to force container docker group id to match host
527
RUN if [ -n "${DOCKER_GID}" ]; then \
53-
if ! getent group docker; then \
54-
groupadd -g ${DOCKER_GID} docker; \
55-
else \
56-
groupmod -g ${DOCKER_GID} docker; \
57-
fi && \
58-
usermod -aG docker vscode; \
8+
if ! getent group docker; then \
9+
groupadd -g ${DOCKER_GID} docker; \
10+
else \
11+
groupmod -g ${DOCKER_GID} docker; \
12+
fi && \
13+
usermod -aG docker vscode; \
5914
fi
60-
61-
USER vscode
62-
63-
ENV PATH="/home/vscode/.asdf/shims/:$PATH"
64-
RUN \
65-
echo 'PATH="/home/vscode/.asdf/shims/:$PATH"' >> ~/.bashrc; \
66-
echo '. <(asdf completion bash)' >> ~/.bashrc; \
67-
echo '# Install Ruby Gems to ~/gems' >> ~/.bashrc; \
68-
echo 'export GEM_HOME="$HOME/gems"' >> ~/.bashrc; \
69-
echo 'export PATH="$HOME/gems/bin:$PATH"' >> ~/.bashrc;
70-
71-
# Install ASDF plugins
72-
RUN asdf plugin add python && \
73-
asdf plugin add poetry https://github.com/asdf-community/asdf-poetry.git && \
74-
asdf plugin add shellcheck https://github.com/luizm/asdf-shellcheck.git && \
75-
asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git && \
76-
asdf plugin add direnv && \
77-
asdf plugin add actionlint && \
78-
asdf plugin add ruby https://github.com/asdf-vm/asdf-ruby.git
79-
80-
WORKDIR /workspaces/eps-prescription-status-update-api
81-
ADD .tool-versions /workspaces/eps-prescription-status-update-api/.tool-versions
82-
ADD .tool-versions /home/vscode/.tool-versions
83-
84-
# install python before poetry to ensure correct python version is used
85-
RUN asdf install python && \
86-
asdf install
15+

.devcontainer/devcontainer.json

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
1-
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
2-
// README at: https://github.com/devcontainers/templates/tree/main/src/ubuntu
31
{
4-
"name": "Ubuntu",
5-
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
2+
"name": "PSU",
63
"build": {
74
"dockerfile": "Dockerfile",
85
"context": "..",
96
"args": {
10-
"DOCKER_GID": "${env:DOCKER_GID:}"
11-
}
7+
"DOCKER_GID": "${env:DOCKER_GID:}",
8+
"IMAGE_NAME": "node_24_python_3_12",
9+
"IMAGE_VERSION": "v1.4.4",
10+
"USER_UID": "${localEnv:USER_ID:}",
11+
"USER_GID": "${localEnv:GROUP_ID:}"
12+
},
13+
"updateRemoteUserUID": false
1214
},
1315
"mounts": [
1416
"source=${env:HOME}${env:USERPROFILE}/.aws,target=/home/vscode/.aws,type=bind",
@@ -25,7 +27,7 @@
2527
"ms-python.flake8",
2628
"eamodio.gitlens",
2729
"github.vscode-pull-request-github",
28-
"orta.vscode-jest",
30+
"vitest-explorer",
2931
"42crunch.vscode-openapi",
3032
"mermade.openapi-lint",
3133
"christian-kohler.npm-intellisense",
@@ -36,7 +38,8 @@
3638
"streetsidesoftware.code-spell-checker",
3739
"timonwong.shellcheck",
3840
"mkhl.direnv",
39-
"github.vscode-github-actions"
41+
"github.vscode-github-actions",
42+
"sonarsource.sonarlint-vscode"
4043
],
4144
"settings": {
4245
"python.defaultInterpreterPath": "/workspaces/eps-prescription-status-update-api/.venv/bin/python",
@@ -46,26 +49,23 @@
4649
"python.testing.pytestEnabled": true,
4750
"pylint.enabled": false,
4851
"python.linting.flake8Enabled": true,
49-
"python.linting.enabled": true, // required to format on save
50-
"editor.formatOnPaste": false, // required
51-
"editor.formatOnType": false, // required
52-
"editor.formatOnSave": true, // optional
52+
"python.linting.enabled": true,
53+
"editor.formatOnPaste": false,
54+
"editor.formatOnType": false,
55+
"editor.formatOnSave": true,
5356
"editor.formatOnSaveMode": "file",
54-
"cSpell.words": ["fhir", "Formik", "pino", "serialisation"],
57+
"cSpell.words": [
58+
"fhir",
59+
"Formik",
60+
"pino",
61+
"serialisation"
62+
],
5563
"editor.defaultFormatter": "dbaeumer.vscode-eslint"
56-
5764
}
5865
}
5966
},
60-
"remoteEnv": { "LOCAL_WORKSPACE_FOLDER": "${localWorkspaceFolder}" },
61-
"updateRemoteUserUID": true,
62-
"postAttachCommand": "docker build -f https://raw.githubusercontent.com/NHSDigital/eps-workflow-quality-checks/refs/tags/v4.0.4/dockerfiles/nhsd-git-secrets.dockerfile -t git-secrets . && poetry run pre-commit install --install-hooks -f",
63-
"features": {
64-
"ghcr.io/devcontainers/features/docker-outside-of-docker:1": {
65-
"version": "latest",
66-
"moby": "true",
67-
"installDockerBuildx": "true"
68-
},
69-
"ghcr.io/devcontainers/features/github-cli:1": {}
70-
}
67+
"remoteEnv": {
68+
"LOCAL_WORKSPACE_FOLDER": "${localWorkspaceFolder}"
69+
},
70+
"features": {}
7171
}

.gitallowed

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,7 @@ console\.log\(`access token : \${access_token}`\)
1818
.*node_modules.*
1919
self.token = token
2020
.*poetry\.lock.*brotli.*platform_python_implementation.*
21+
password: ""
22+
token: "{{authorization_header_value}}"
23+
http://0\.0\.0\.0
24+
--host 0\.0\.0\.0

.github/CODEOWNERS

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# restrict access to approving workflow changes
2+
.github/workflows/ @NHSDigital/eps-admins

.github/actions/mark_jira_released/action.yml

Lines changed: 0 additions & 26 deletions
This file was deleted.

.github/actions/update_confluence_jira/action.yml

Lines changed: 0 additions & 89 deletions
This file was deleted.
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,3 +135,39 @@ FXD93
135135
FXH78
136136
FXV31
137137
FXW37
138+
FN288
139+
FH707
140+
FY790
141+
FL260
142+
FJT64
143+
FRM94
144+
FMY73
145+
FH462
146+
FMC15
147+
FFD48
148+
FM764
149+
FRX83
150+
FKG44
151+
FKJ53
152+
FGW87
153+
FML16
154+
FF205
155+
FFA60
156+
FA466
157+
FNK53
158+
FRH27
159+
FA092
160+
FXX59
161+
FPK87
162+
FD578
163+
FEC85
164+
FTR05
165+
FMM65
166+
FD333
167+
FEK19
168+
FJY69
169+
FE618
170+
FVR25
171+
FWD53
172+
FL139
173+
FAK27

0 commit comments

Comments
 (0)