Skip to content

Commit 6d79bd3

Browse files
authored
Merge branch 'develop' into #4037-JasperPinkus-credits
2 parents f9bf6ed + 7a8b0f1 commit 6d79bd3

17 files changed

Lines changed: 306 additions & 13 deletions

File tree

.ebextensions/03_ssh_keys.config

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
files:
2+
"/tmp/add_authorized_keys.sh":
3+
mode: "000755"
4+
owner: root
5+
group: root
6+
content: |
7+
#!/bin/bash
8+
AUTHORIZED_KEYS="/home/ec2-user/.ssh/authorized_keys"
9+
mkdir -p /home/ec2-user/.ssh
10+
touch "$AUTHORIZED_KEYS"
11+
chown ec2-user:ec2-user /home/ec2-user/.ssh
12+
chmod 700 /home/ec2-user/.ssh
13+
14+
add_key() {
15+
local key="$1"
16+
if ! grep -qF "$key" "$AUTHORIZED_KEYS"; then
17+
echo "$key" >> "$AUTHORIZED_KEYS"
18+
fi
19+
}
20+
21+
# Chris Pyle
22+
add_key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMqV5gwot3utGLPGpAPWr8znU1cjMn1RE7jN8htvaOMt aws-eb"
23+
24+
# Sean Walker
25+
add_key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICf1UhVM+65hiKahvdvEj20ohDu+bZVS+btVFJTtg0oP seanwalker@Seans-MacBook-Pro-2.local"
26+
27+
chown ec2-user:ec2-user "$AUTHORIZED_KEYS"
28+
chmod 600 "$AUTHORIZED_KEYS"
29+
30+
commands:
31+
add_authorized_keys:
32+
command: "/tmp/add_authorized_keys.sh"
33+
ignoreErrors: false

infrastructure/modules/elasticbeanstalk/variables.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ variable "solution_stack_name" {
1414
description = "Elastic Beanstalk solution stack name"
1515
type = string
1616
# Find the latest: aws elasticbeanstalk list-available-solution-stacks
17-
default = "64bit Amazon Linux 2023 v4.7.4 running Docker"
17+
default = "64bit Amazon Linux 2023 v4.11.0 running Docker"
1818
}
1919

2020
variable "vpc_id" {

infrastructure/modules/monitoring/main.tf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -357,6 +357,10 @@ resource "aws_cloudwatch_metric_alarm" "eb_memory_high" {
357357
Environment = var.environment
358358
Project = var.project_name
359359
}
360+
361+
lifecycle {
362+
ignore_changes = [metric_query]
363+
}
360364
}
361365

362366
#############

infrastructure/modules/network/main.tf

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,14 @@ resource "aws_security_group" "eb_instance" {
164164
security_groups = [aws_security_group.alb.id]
165165
}
166166

167+
ingress {
168+
description = "SSH access"
169+
from_port = 22
170+
to_port = 22
171+
protocol = "tcp"
172+
cidr_blocks = ["0.0.0.0/0"]
173+
}
174+
167175
egress {
168176
description = "Allow all outbound traffic"
169177
from_port = 0

infrastructure/scripts/ssh-to-eb.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ echo "🔌 Connecting to EB instance..."
5858
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
5959
echo ""
6060
echo "Instance: $INSTANCE_IP ($INSTANCE_ID)"
61+
echo "Direct SSH: ssh -i $KEY_PATH_EXPANDED ec2-user@$INSTANCE_IP"
6162
echo "User: ec2-user"
6263
echo ""
6364
echo "Useful commands once connected:"

src/backend/src/prisma-query-args/projects.query-args.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,12 @@ export const getProjectPreviewQueryArgs = (organizationId: string) =>
100100
abbreviation: true,
101101
teams: {
102102
select: {
103+
teamType: {
104+
select: {
105+
teamTypeId: true,
106+
name: true
107+
}
108+
},
103109
teamId: true,
104110
teamName: true
105111
}
@@ -132,6 +138,12 @@ export const getProjectOverviewQueryArgs = (organizationId: string) =>
132138
abbreviation: true,
133139
teams: {
134140
select: {
141+
teamType: {
142+
select: {
143+
teamTypeId: true,
144+
name: true
145+
}
146+
},
135147
teamId: true,
136148
teamName: true
137149
}

src/backend/src/services/organizations.services.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -410,7 +410,7 @@ export default class OrganizationsService {
410410
throw new NotFoundException('Organization', organizationId);
411411
}
412412

413-
return organization.featuredProjects.map(projectPreviewTransformer);
413+
return organization.featuredProjects.filter((p) => !p.wbsElement.dateDeleted).map(projectPreviewTransformer);
414414
}
415415

416416
/**

src/backend/src/transformers/projects.transformer.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,19 @@ export const projectPreviewTransformer = (project: Prisma.ProjectGetPayload<Proj
117117
duration: calculateDuration(project.workPackages),
118118
startDate: calculateProjectStartDate(project.workPackages),
119119
abbreviation: project.abbreviation ?? undefined,
120+
teamTypes: Array.from(
121+
project.teams
122+
.reduce((acc, team) => {
123+
if (team.teamType) {
124+
acc.set(team.teamType.teamTypeId, {
125+
name: team.teamType.name,
126+
teamTypeId: team.teamType.teamTypeId
127+
});
128+
}
129+
return acc;
130+
}, new Map<string, { name: string; teamTypeId: string }>())
131+
.values()
132+
),
120133
teams: project.teams,
121134
workPackages: project.workPackages.map((wp) => ({
122135
...wp,

src/frontend/src/pages/CalendarPage/CalendarWeekView.tsx

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -405,7 +405,11 @@ const CalendarWeekView: React.FC<CalendarWeekViewProps> = ({
405405
enterDelay={0}
406406
leaveDelay={200}
407407
title={
408-
<Box onMouseEnter={() => setTooltipHovered(true)} onMouseLeave={() => setTooltipHovered(false)}>
408+
<Box
409+
onMouseEnter={() => setTooltipHovered(true)}
410+
onMouseLeave={() => setTooltipHovered(false)}
411+
onMouseDown={(e) => e.stopPropagation()}
412+
>
409413
<EventClickContent
410414
event={event}
411415
eventTypes={allEventTypes}
@@ -513,7 +517,11 @@ const CalendarWeekView: React.FC<CalendarWeekViewProps> = ({
513517
enterDelay={0}
514518
leaveDelay={200}
515519
title={
516-
<Box onMouseEnter={() => setTooltipHovered(true)} onMouseLeave={() => setTooltipHovered(false)}>
520+
<Box
521+
onMouseEnter={() => setTooltipHovered(true)}
522+
onMouseLeave={() => setTooltipHovered(false)}
523+
onMouseDown={(e) => e.stopPropagation()}
524+
>
517525
<EventClickContent
518526
event={event}
519527
eventTypes={allEventTypes}
@@ -590,7 +598,11 @@ const CalendarWeekView: React.FC<CalendarWeekViewProps> = ({
590598
enterDelay={0}
591599
leaveDelay={200}
592600
title={
593-
<Box onMouseEnter={() => setTooltipHovered(true)} onMouseLeave={() => setTooltipHovered(false)}>
601+
<Box
602+
onMouseEnter={() => setTooltipHovered(true)}
603+
onMouseLeave={() => setTooltipHovered(false)}
604+
onMouseDown={(e) => e.stopPropagation()}
605+
>
594606
<TaskClickContent task={task} onClose={() => setLockedTooltipEventId(null)} />
595607
</Box>
596608
}

src/frontend/src/pages/CreditsPage/CreditsPage.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ const CreditsPage: React.FC = () => {
7676
{ name: 'Martin Hema', color: '#9125cc' },
7777
{ name: 'Shree Singhal', color: '#ff7ca4' },
7878
{ name: 'Isaac Levine', color: '#6a3941' },
79+
{ name: 'Pooja Ramakrishnan', color: '#9125cc' },
7980
{ name: 'Andrew Tsai', color: '#3281a8' },
8081
{ name: 'Ahnaf Inkiad', color: '#ab38b5' },
8182
{ name: 'Aaryan Jain', color: '#e53774' },
@@ -122,6 +123,7 @@ const CreditsPage: React.FC = () => {
122123
{ name: 'Raghav Mathur', color: '#009933' },
123124
{ name: 'Anika Sharma', color: '#ff0000' },
124125
{ name: 'William (Jack) Turner', color: '#ff5733' },
126+
{ name: 'Natasha Joshi', color: '#00f7ffff' },
125127
{
126128
name: 'Samson Ajayi',
127129
color: '6a0dad',
@@ -371,7 +373,8 @@ const CreditsPage: React.FC = () => {
371373
},
372374
{ name: 'Josh Len', color: '#000000ff' },
373375
{ name: 'Grace Theobald', color: '#537c2c' },
374-
{ name: 'Jasper Pinkus', color: '#276221' }
376+
{ name: 'Jasper Pinkus', color: '#276221' },
377+
{ name: 'Sara Johnson', color: '#ffff99' }
375378
];
376379

377380
const snark = ['Add your name!', "Shouldn't you do it yourself?", 'Seriously', 'go', 'do', 'it'];

0 commit comments

Comments
 (0)