Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions backend/apps/github/graphql/nodes/release.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ class ReleaseNode(BaseNode):

author = graphene.Field(UserNode)
project_name = graphene.String()
url = graphene.String()

class Meta:
model = Release
Expand All @@ -27,3 +28,7 @@ class Meta:
def resolve_project_name(self, info):
"""Return project name."""
return self.repository.project.name.lstrip(OWASP_ORGANIZATION_NAME)

def resolve_url(self, info):
"""Return release URL."""
return self.url
5 changes: 5 additions & 0 deletions backend/apps/github/models/release.py
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,11 @@ def summary(self):
"""Return release summary."""
return f"{self.tag_name} on {self.published_at.strftime('%b %d, %Y')}"

@property
def url(self):
"""Return release URL."""
return f"{self.repository.url}/releases/tag/{self.tag_name}"

def from_github(self, gh_release, author=None, repository=None):
"""Update instance based on GitHub release data."""
field_mapping = {
Expand Down
1 change: 1 addition & 0 deletions backend/tests/github/graphql/nodes/release_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ def test_meta_configuration(self):
"project_name",
"published_at",
"tag_name",
"url",
}
assert set(ReleaseNode._meta.fields) == expected_fields

Expand Down
3 changes: 2 additions & 1 deletion frontend/src/api/queries/homeQueries.ts
Original file line number Diff line number Diff line change
Expand Up @@ -37,18 +37,19 @@ export const GET_MAIN_PAGE_DATA = gql`
avatarUrl
login
name
url
}
}
recentReleases(limit: 5) {
author {
avatarUrl
login
name
}
isPreRelease
name
publishedAt
tagName
url
}
sponsors {
imageUrl
Expand Down