Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix missing version suffix #4348

Merged
merged 4 commits into from
Jul 26, 2023
Merged

Fix missing version suffix #4348

merged 4 commits into from
Jul 26, 2023

Conversation

paullinator
Copy link
Member

@paullinator paullinator commented Jul 19, 2023

Have updateVersion.ts read the version file written by jenkins. gitVersionFile.ts is responsible for writing the file.

CHANGELOG

none

Dependencies

none

Requirements

If you have made any visual changes to the GUI. Make sure you have:

  • Tested on iOS device
  • Tested on Android device
  • Tested on small-screen device (iPod Touch)
  • Tested on large-screen device (tablet)

Copy link
Contributor

@swansontec swansontec left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see that all the logic from this file has moved into gitVersionFile.ts, so the change solves the immediate problem.

Unfortunately, this new architecture means there is no longer any documented way for third parties to build release versions of the app. We spent a lot of time and energ a year or two ago making sure there was a way to build the app without all our custom Jenkins infrastructure. Part of this design was the updateVersions.ts, which would auto-update the version info, independently of Jenkins. This is still documented in our README, even though it no longer works correctly (especially after this change).

So, we either need to update this script with some sort of fallback mode that third parties can use, or we need to update our README with the steps someone needs to get release-version.json up-to-date.

Feel free to create a task for this work, based on your chosen path & time estimate.

@paullinator
Copy link
Member Author

I see that all the logic from this file has moved into gitVersionFile.ts, so the change solves the immediate problem.

Unfortunately, this new architecture means there is no longer any documented way for third parties to build release versions of the app. We spent a lot of time and energ a year or two ago making sure there was a way to build the app without all our custom Jenkins infrastructure. Part of this design was the updateVersions.ts, which would auto-update the version info, independently of Jenkins. This is still documented in our README, even though it no longer works correctly (especially after this change).

So, we either need to update this script with some sort of fallback mode that third parties can use, or we need to update our README with the steps someone needs to get release-version.json up-to-date.

Feel free to create a task for this work, based on your chosen path & time estimate.

Actually this is a pretty easy change for external developers. gitVersionFile.ts just has to be called right before updateVersion.ts. I’ll update the docs.

Copy link
Contributor

@swansontec swansontec left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved with one teeny change.

Comment on lines 78 to -81
### Build release version of app

First, run `yarn update-version` to copy the `package.json` version into the native project files, and to assign a unique build number.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should delete the section header, now that it's empty.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's still relevant as it differentiates building a release version vs a debug version like the header above. Otherwise we'd have iOS, Android, iOS, Android all under the

Run the app in debug mode

header.

Have updateVersion.ts read the version file written by jenkins. gitVersionFile.ts is responsible for writing the file.
- Update package.json with additional gitVersionFile script
- Update deploy-config.sample.json with new params
@paullinator paullinator merged commit 9a3322b into develop Jul 26, 2023
2 checks passed
@paullinator paullinator deleted the paul/fixVersion branch July 26, 2023 05:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants