Skip to content

Commit 89c6674

Browse files
Merge branch 'main' into fix/csrf
2 parents f5f596c + d8b4729 commit 89c6674

File tree

24 files changed

+128
-86
lines changed

24 files changed

+128
-86
lines changed

.github/ansible/production/nest.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,18 @@
3535
dest: ~/cspell/Makefile
3636
mode: '0644'
3737

38+
- name: Ensure docs directory exists
39+
ansible.builtin.file:
40+
path: ~/docs
41+
state: directory
42+
mode: '0755'
43+
44+
- name: Copy docs makefile
45+
ansible.builtin.copy:
46+
src: '{{ github_workspace }}/docs/Makefile'
47+
dest: ~/docs/Makefile
48+
mode: '0644'
49+
3850
- name: Ensure frontend directory exists
3951
ansible.builtin.file:
4052
path: ~/frontend

.github/ansible/staging/nest.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,18 @@
3535
dest: ~/cspell/Makefile
3636
mode: '0644'
3737

38+
- name: Ensure docs directory exists
39+
ansible.builtin.file:
40+
path: ~/docs
41+
state: directory
42+
mode: '0755'
43+
44+
- name: Copy docs makefile
45+
ansible.builtin.copy:
46+
src: '{{ github_workspace }}/docs/Makefile'
47+
dest: ~/docs/Makefile
48+
mode: '0644'
49+
3850
- name: Ensure frontend directory exists
3951
ansible.builtin.file:
4052
path: ~/frontend

backend/apps/github/graphql/nodes/release.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ class ReleaseNode(BaseNode):
1313

1414
author = graphene.Field(UserNode)
1515
project_name = graphene.String()
16+
repository_name = graphene.String()
1617
url = graphene.String()
1718

1819
class Meta:
@@ -29,6 +30,10 @@ def resolve_project_name(self, info):
2930
"""Return project name."""
3031
return self.repository.project.name.lstrip(OWASP_ORGANIZATION_NAME)
3132

33+
def resolve_repository_name(self, info):
34+
"""Return repository name."""
35+
return self.repository.name
36+
3237
def resolve_url(self, info):
3338
"""Return release URL."""
3439
return self.url

backend/apps/github/graphql/nodes/user.py

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -13,34 +13,11 @@ class RepositoryType(graphene.ObjectType):
1313
owner_key = graphene.String()
1414

1515

16-
class IssueType(graphene.ObjectType):
17-
"""GitHub issue type."""
18-
19-
created_at = graphene.Float()
20-
comments_count = graphene.Int()
21-
repository = graphene.Field(RepositoryType)
22-
title = graphene.String()
23-
url = graphene.String()
24-
25-
26-
class ReleaseType(graphene.ObjectType):
27-
"""GitHub release type."""
28-
29-
is_pre_release = graphene.Boolean()
30-
name = graphene.String()
31-
published_at = graphene.Float()
32-
repository = graphene.Field(RepositoryType)
33-
tag_name = graphene.String()
34-
url = graphene.String()
35-
36-
3716
class UserNode(BaseNode):
3817
"""GitHub user node."""
3918

4019
created_at = graphene.Float()
41-
issues = graphene.List(IssueType)
4220
issues_count = graphene.Int()
43-
releases = graphene.List(ReleaseType)
4421
releases_count = graphene.Int()
4522
updated_at = graphene.Float()
4623
url = graphene.String()
@@ -65,18 +42,10 @@ def resolve_created_at(self, info):
6542
"""Resolve created at."""
6643
return self.idx_created_at
6744

68-
def resolve_issues(self, info):
69-
"""Resolve issues."""
70-
return self.idx_issues
71-
7245
def resolve_issues_count(self, info):
7346
"""Resolve issues count."""
7447
return self.idx_issues_count
7548

76-
def resolve_releases(self, info):
77-
"""Resolve releases."""
78-
return self.idx_releases
79-
8049
def resolve_releases_count(self, info):
8150
"""Resolve releases count."""
8251
return self.idx_releases_count

backend/apps/github/graphql/queries/issue.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,12 @@ class IssueQuery(BaseQuery):
1313

1414
recent_issues = graphene.List(
1515
IssueNode,
16-
limit=graphene.Int(default_value=15),
16+
limit=graphene.Int(default_value=5),
1717
distinct=graphene.Boolean(default_value=False),
1818
login=graphene.String(required=False),
1919
)
2020

21-
def resolve_recent_issues(root, info, limit=15, distinct=False, login=None):
21+
def resolve_recent_issues(root, info, limit, distinct=False, login=None):
2222
"""Resolve recent issues with optional filtering.
2323
2424
Args:

backend/apps/github/graphql/queries/pull_request.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ class PullRequestQuery(BaseQuery):
1313

1414
recent_pull_requests = graphene.List(
1515
PullRequestNode,
16-
limit=graphene.Int(default_value=6),
16+
limit=graphene.Int(default_value=5),
1717
distinct=graphene.Boolean(default_value=False),
1818
login=graphene.String(required=False),
1919
)

backend/apps/github/graphql/queries/release.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,18 +13,20 @@ class ReleaseQuery(BaseQuery):
1313

1414
recent_releases = graphene.List(
1515
ReleaseNode,
16-
limit=graphene.Int(default_value=15),
16+
limit=graphene.Int(default_value=6),
1717
distinct=graphene.Boolean(default_value=False),
18+
login=graphene.String(required=False),
1819
)
1920

20-
def resolve_recent_releases(root, info, limit=15, distinct=False):
21+
def resolve_recent_releases(root, info, limit, distinct=False, login=None):
2122
"""Resolve recent releases with optional distinct filtering.
2223
2324
Args:
2425
root (Any): The root query object.
2526
info (ResolveInfo): The GraphQL execution context.
2627
limit (int): Maximum number of releases to return.
2728
distinct (bool): Whether to return unique releases per author and repository.
29+
login (str): Optional GitHub username for filtering releases.
2830
2931
Returns:
3032
QuerySet: Queryset containing the filtered list of releases.
@@ -36,6 +38,11 @@ def resolve_recent_releases(root, info, limit=15, distinct=False):
3638
published_at__isnull=False,
3739
).order_by("-published_at")
3840

41+
if login:
42+
queryset = queryset.filter(
43+
author__login=login,
44+
)
45+
3946
if distinct:
4047
latest_release_per_author = (
4148
queryset.filter(author_id=OuterRef("author_id"))

backend/apps/owasp/graphql/queries/snapshot.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,17 @@ class SnapshotQuery(BaseQuery):
2323
def resolve_snapshot(root, info, key):
2424
"""Resolve snapshot by key."""
2525
try:
26-
return Snapshot.objects.get(key=key)
26+
return Snapshot.objects.get(
27+
key=key,
28+
status=Snapshot.Status.COMPLETED,
29+
)
2730
except Snapshot.DoesNotExist:
2831
return None
2932

3033
def resolve_snapshots(root, info, limit):
3134
"""Resolve snapshots."""
32-
return Snapshot.objects.order_by("-created_at")[:limit]
35+
return Snapshot.objects.filter(
36+
status=Snapshot.Status.COMPLETED,
37+
).order_by(
38+
"-created_at",
39+
)[:limit]

backend/tests/apps/github/graphql/nodes/release_test.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ def test_meta_configuration(self):
2424
"name",
2525
"project_name",
2626
"published_at",
27+
"repository_name",
2728
"tag_name",
2829
"url",
2930
}

backend/tests/apps/github/graphql/nodes/user_test.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,11 @@ def test_meta_configuration(self):
2525
"following_count",
2626
"id",
2727
"issues_count",
28-
"issues",
2928
"location",
3029
"login",
3130
"name",
3231
"public_repositories_count",
3332
"releases_count",
34-
"releases",
3533
"updated_at",
3634
"url",
3735
}

0 commit comments

Comments
 (0)