Skip to content

Commit bd7943e

Browse files
author
Richard Bangay
committed
bump peer dependency cross-spawn to a patched version. Update CDK as part of the process
1 parent 1eade1e commit bd7943e

File tree

3 files changed

+220
-219
lines changed

3 files changed

+220
-219
lines changed

cdk/lib/manage-frontend.ts

+42-33
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,12 @@ import type { GuAsgCapacity } from '@guardian/cdk/lib/types';
1313
import type { App } from 'aws-cdk-lib';
1414
import { Duration } from 'aws-cdk-lib';
1515
import { CfnDashboard } from 'aws-cdk-lib/aws-cloudwatch';
16-
import { InstanceClass, InstanceSize, InstanceType } from 'aws-cdk-lib/aws-ec2';
16+
import {
17+
InstanceClass,
18+
InstanceSize,
19+
InstanceType,
20+
UserData,
21+
} from 'aws-cdk-lib/aws-ec2';
1722
import { Protocol } from 'aws-cdk-lib/aws-elasticloadbalancingv2';
1823
import { LogGroup, RetentionDays } from 'aws-cdk-lib/aws-logs';
1924
import { CfnRecordSet } from 'aws-cdk-lib/aws-route53';
@@ -45,38 +50,42 @@ export class ManageFrontend extends GuStack {
4550
default: `/${this.stage}/${this.stack}/${app}/serverRavenDSN`,
4651
});
4752

48-
// intentionally removed tabs from the following string for bash's sake!
49-
const userData = `#!/bin/bash -ev
50-
# get runnable tar from S3
51-
aws --region ${this.region} s3 cp s3://membership-dist/${this.stack}/${this.stage}/${app}/manage-frontend.zip /tmp
52-
mkdir /etc/gu
53-
unzip /tmp/manage-frontend.zip -d /etc/gu/dist/
54-
# add user
55-
groupadd manage-frontend
56-
useradd -r -s /usr/bin/nologin -g manage-frontend manage-frontend
57-
touch /var/log/manage-frontend.log
58-
chown -R manage-frontend:manage-frontend /etc/gu
59-
chown manage-frontend:manage-frontend /var/log/manage-frontend.log
60-
# write out systemd file
61-
cat >/etc/systemd/system/manage-frontend.service <<EOL
62-
[Service]
63-
ExecStart=/usr/bin/node /etc/gu/dist/server.js
64-
Restart=always
65-
StandardOutput=syslog
66-
StandardError=syslog
67-
SyslogIdentifier=manage-frontend
68-
User=manage-frontend
69-
Group=manage-frontend
70-
Environment=STAGE=${this.stage}
71-
Environment=CLIENT_DSN=${clientRavenDSN.valueAsString}
72-
Environment=SERVER_DSN=${serverRavenDSN.valueAsString}
73-
[Install]
74-
WantedBy=multi-user.target
75-
EOL
76-
# RUN
77-
systemctl enable manage-frontend
78-
systemctl start manage-frontend
79-
/opt/cloudwatch-logs/configure-logs application ${this.stack} ${this.stage} ${app} /var/log/manage-frontend.log`;
53+
const userData = UserData.forLinux();
54+
userData.addCommands(
55+
[
56+
`#!/bin/bash -ev`,
57+
`# get runnable tar from S3`,
58+
`aws --region ${this.region} s3 cp s3://membership-dist/${this.stack}/${this.stage}/${app}/manage-frontend.zip /tmp`,
59+
`mkdir /etc/gu`,
60+
`unzip /tmp/manage-frontend.zip -d /etc/gu/dist/`,
61+
`# add user`,
62+
`groupadd manage-frontend`,
63+
`useradd -r -s /usr/bin/nologin -g manage-frontend manage-frontend`,
64+
`touch /var/log/manage-frontend.log`,
65+
`chown -R manage-frontend:manage-frontend /etc/gu`,
66+
`chown manage-frontend:manage-frontend /var/log/manage-frontend.log`,
67+
`# write out systemd file`,
68+
`cat >/etc/systemd/system/manage-frontend.service <<EOL`,
69+
`[Service]`,
70+
`ExecStart=/usr/bin/node /etc/gu/dist/server.js`,
71+
`Restart=always`,
72+
`StandardOutput=syslog`,
73+
`StandardError=syslog`,
74+
`SyslogIdentifier=manage-frontend`,
75+
`User=manage-frontend`,
76+
`Group=manage-frontend`,
77+
`Environment=STAGE=${this.stage}`,
78+
`Environment=CLIENT_DSN=${clientRavenDSN.valueAsString}`,
79+
`Environment=SERVER_DSN=${serverRavenDSN.valueAsString}`,
80+
`[Install]`,
81+
`WantedBy=multi-user.target`,
82+
`EOL`,
83+
`# RUN`,
84+
`systemctl enable manage-frontend`,
85+
`systemctl start manage-frontend`,
86+
`/opt/cloudwatch-logs/configure-logs application ${this.stack} ${this.stage} ${app} /var/log/manage-frontend.log`,
87+
].join('\n'),
88+
);
8089

8190
const logGroup = new LogGroup(this, 'ManageFrontendLogGroup', {
8291
logGroupName: `support-manage-frontend-${this.stage}`,

cdk/package.json

+5-5
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,18 @@
1212
"deploy-code": "cdk deploy --path-metadata false --version-reporting false ManageFrontend-CODE"
1313
},
1414
"devDependencies": {
15-
"@guardian/cdk": "50.10.6",
15+
"@guardian/cdk": "61.1.0",
1616
"@guardian/eslint-config-typescript": "1.0.7",
1717
"@guardian/prettier": "1.0.0",
1818
"@types/jest": "^27.5.0",
1919
"@types/node": "18.7.14",
20-
"aws-cdk": "2.87.0",
21-
"aws-cdk-lib": "2.87.0",
22-
"constructs": "10.2.69",
20+
"aws-cdk": "2.172.0",
21+
"aws-cdk-lib": "2.172.0",
22+
"constructs": "10.4.2",
2323
"eslint": "^8.23.0",
2424
"jest": "^27.5.1",
2525
"prettier": "^2.7.1",
26-
"source-map-support": "^0.5.20",
26+
"source-map-support": "0.5.21",
2727
"ts-jest": "^27.1.4",
2828
"ts-node": "^10.9.1",
2929
"typescript": "~4.7.4"

0 commit comments

Comments
 (0)