#20046 closed task (fixed)
Update start page link macOS download link
Reported by: | Stereo | Owned by: | stoecker |
---|---|---|---|
Priority: | major | Milestone: | 21.03 |
Component: | Installer MacOS | Version: | |
Keywords: | macos | Cc: |
Description
When we do a 20.10 release, we should update the link for the macOS download on the home page to the new builds at
https://github.com/openstreetmap/josm/releases/latest/download/JOSM-macOS-java15.zip
The link 404s for now. https://github.com/openstreetmap/josm/actions will show the build process. Running all the tests and building a release takes about 25 minutes (but I have ideas to separate tests and builds for 20.11).
Attachments (0)
Change History (51)
comment:1 by , 4 years ago
comment:2 by , 4 years ago
A release version of JOSM needs to be built on github.
This is currently decided like this:
if [[ "$josm_revision" == `curl --silent https://josm.openstreetmap.de/tested` ]]; then sed -i .bak '/Is-Local-Build/d' resources/REVISION echo "josm_prerelease=false" >> $GITHUB_ENV else echo "josm_prerelease=true" >> $GITHUB_ENV
In plain language: if my revision is what https://josm.openstreetmap.de/tested returns, I'm not a pre-release.
I'm not familiar with how /tested
works, but hope that it will be automatically updated when the milestone completes, long before the git mirror syncs?
comment:3 by , 4 years ago
It can happen long after, as we decide manually to promote a build as the new "tested". From a few minutes to sometimes a few days.
comment:4 by , 4 years ago
Oh no! Then the shell script will never evaluate to true, and a re-build has to be triggered when a commit gets tagged as tested.
I'll think about it, but we might be able to use the git tags to do it.
comment:5 by , 4 years ago
Can't we just use GitHub API to perform the release from JOSM server side? This would be the best.
comment:8 by , 4 years ago
Replying to Stereo:
What happens on the server when a release gets made?
All the required stuff to get everything up to date on JOSM website. If we can call GitHub API we can update the scripts on server side to perform the release there as well.
comment:9 by , 4 years ago
Milestone: | 20.11 → 20.12 |
---|---|
Owner: | changed from | to
I've put in a link to my own 'release' build for 20.11. For 20.12, Don-vip and I are working on automating it.
comment:10 by , 4 years ago
Milestone: | 20.12 → 21.01 |
---|
comment:11 by , 4 years ago
Milestone: | 21.01 → 21.02 |
---|
comment:12 by , 4 years ago
Depends on #20146. For now, the links point to my latest build in my fork.
comment:13 by , 4 years ago
Milestone: | 21.02 → 21.01 |
---|
comment:16 by , 4 years ago
Steps now:
- Finish the three other tickets for 21.02
- Mark the last commit as 'tested' once those three are closed
- @stoecker babysits the process a bit to make sure that the 'stable' re-build gets triggered on GitHub.
- Once a release is built, the links on the wiki get updated to point to https://github.com/openstreetmap/josm/releases/latest/download/JOSM-macOS-java15.zip (which then won't be a 404), or the apache redirect gets updated to point to that - dealer's choice.
- Close this ticket
comment:18 by , 4 years ago
Other tickets are done but there is an i18n issue in Russian I couldn't fix yesterday from Launchpad UI :(
comment:22 by , 4 years ago
comment:23 by , 4 years ago
It didn't, maybe because the GUI tests get stuck and the previous CI run was still running.
Can someone with the appropriate permissions on the server re-trigger the rebuild and maybe check the logs?
comment:24 by , 4 years ago
Milestone: | 21.02 → 21.03 |
---|---|
Priority: | normal → major |
I've done a release on my github for now.
comment:25 by , 4 years ago
Aaargh: Error rebuilding MacOS: Wide character in subroutine entry at /home/josm/josmcron.pl line 206
Why didn't that happen in the tests?
follow-up: 27 comment:26 by , 4 years ago
I don't know, you ran those tests :p. Hope that's not my code?
Can you try giving the github job a kick with your script now?
comment:27 by , 4 years ago
Replying to Stereo:
I don't know, you ran those tests :p. Hope that's not my code?
Can you try giving the github job a kick with your script now?
Done. Thought it seems this will take some iterations until it works automatically.
comment:29 by , 4 years ago
If confirmed #20598 will require an hotfix. So we have a chance to test again.
comment:30 by , 4 years ago
I improved the code a bit so it tries the individual steps more than once.
follow-up: 33 comment:32 by , 4 years ago
Hmm, any error messages in the response? You should be able to re-trigger any action runs, it won't squash the release.
I'm thinking that the build action and the test action should really be separate, so that a release action doesn't run for 6 hours if a test action hangs.
comment:33 by , 4 years ago
Replying to Stereo:
Hmm, any error messages in the response? You should be able to re-trigger any action runs, it won't squash the release.
Pretty sure. But I didn't log them last time :-)
I'm thinking that the build action and the test action should really be separate, so that a release action doesn't run for 6 hours if a test action hangs.
Sounds sensible. Go on... :-)
comment:35 by , 4 years ago
Then we'll also have to update https://github.com/homebrew/homebrew-cask/blob/master/Casks/josm.rb - it includes the version number, so there won't be a 404.
I'll try JOSM-macOS-java16.zip to make sure nothing's borken.
comment:36 by , 4 years ago
comment:37 by , 4 years ago
@stoecker what happens behind the scenes before /tested
gets updated and the github action gets re-launched? Did you end up running the git mirror script as a post-commit hook?
follow-up: 41 comment:40 by , 4 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Works automatically now.
It triggers a rerun as long as there is no $rev-tested release entry. If the rerun fails later it is not retried. Hope that's ok. When java version changes again, the josmcron.pl needs to be adapted or it wont find the file.
GitHub process should be improved, but that's another ticket. Together with the failing CI stuff. BTW why do we have CI at all on GitHub as we use Jenkins?
Can someone tell me where on GitHub I see the state of the triggered rerun when it still runs?
follow-up: 42 comment:41 by , 4 years ago
comment:42 by , 4 years ago
comment:43 by , 4 years ago
You'll see the actions that are running in https://github.com/openstreetmap/josm/actions . So far, nothing since 17589 was pushed a few hours ago.
I suppose the status of all jobs can also be seen at https://api.github.com/repos/openstreetmap/josm/actions/runs
follow-up: 46 comment:45 by , 4 years ago
Can the re-run be triggered on github again? What are the errors, if any?
comment:46 by , 4 years ago
Replying to Stereo:
Can the re-run be triggered on github again?
Either manually or by deleting the unfinished release on GitHub.
What are the errors, if any?
How should I know? Errors I know about are handled.
follow-up: 48 comment:47 by , 4 years ago
Could you please see what requests it makes, so we can see why r17580 isn't being re-built as stable?
Want us to have a debugging session together? I'm free until 7.
comment:48 by , 4 years ago
comment:49 by , 4 years ago
Because I'm an idiot who didn't see https://github.com/openstreetmap/josm/releases/tag/17580-tested ? :D
Replying to Stereo:
What needs to be done to get a proper link?