Repository navigation
[Feat] Issue-1050 implement revamped release page backend - #1113
Open
SwarajKeshari wants to merge 10 commits into
Open
SwarajKeshari wants to merge 10 commits into
SwarajKeshari wants to merge 10 commits into
Conversation
…ith API parsing and retrieval routes
…nd RELEASE_TEMPLATE
… for new markdown formats
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
|
|
||
| - name: Install app dependencies | ||
| working-directory: packages/app | ||
| run: npm install --legacy-peer-deps |
|
|
||
| - name: Install app dependencies | ||
| working-directory: packages/app | ||
| run: npm install --legacy-peer-deps |
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Install dependencies | ||
| run: npm install mongoose --legacy-peer-deps |
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Install dependencies | ||
| run: npm install mongoose --legacy-peer-deps |
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.




Description
Closes #1050
This PR implements the backend support for the revamped OpenLogo release page.
What this PR includes
Local Testing
1. Test the frontend and backend together
The frontend and backend changes are available on separate branches. You can use Git worktrees to have both branches checked out simultaneously.
Backend
From your main OpenLogo worktree:
Then:
cd ../openlogo-backend pnpm installConfigure the required backend environment variables in:
Start the backend:
The backend should be available at:
Frontend
In the original OpenLogo worktree:
Install dependencies if required:
Configure the required frontend environment variables and start the frontend:
The frontend should be available at:
Make sure the frontend is configured to use the locally running backend at:
Once both applications are running, open the frontend and verify that the revamped release page renders properly.
The release page requires release data to be present in the local MongoDB database. Follow the steps below to seed the data.
2. Seed release data locally
The historical release seed script can be used to populate the configured MongoDB database.
From the repository root:
After seeding, verify that release versions are available through the API:
Then fetch a specific release:
Replace 0.8.0 with any version returned by the /api/releases/versions endpoint.
The seed script can also be used when populating the production database, with the appropriate production database configuration.
3. Test the release APIs
Get available release versions
GET /api/releases/versions
Example:
Get a specific release
GET /api/releases/:version
Example:
The release data returned by these APIs is read from MongoDB and is consumed by the revamped release page.
4. Testing the GitHub Release Sync Workflow
The GitHub Release synchronization workflow can be tested safely using a personal fork instead of creating test releases in the main repository.
4.1 Fork the Repository
Fork the OpenLogo repository and clone your fork locally. Push this backend branch to your fork if required.
4.2 Configure the Required Secrets
Create a separate database in MongoDB Atlas for testing the release synchronization workflow. This ensures that test releases do not affect the project's shared database.
Then, in your fork:
4.3 Create a Test Release
Create a GitHub Release in your fork using the release template format.
For example:
Use a valid PR number and GitHub username from your fork/repository when testing GitHub entity validation.
4.4 Publish the Release
Publish the release and verify the workflow execution from the Actions tab.
The workflow should:
5. Test validation failures
Create another release with an invalid format, for example:
Missing contributors field.
The workflow should fail with a validation error and should not insert the invalid release into the database.
Other invalid cases covered by the parser tests include:
What type of PR is this? (Check all applicable)
Checklist