Skip to content

Conversation

@rxu17
Copy link
Contributor

@rxu17 rxu17 commented Oct 24, 2025

Problem:

We build the Genome Nexus annotator.jar file used in our main genie maf processing pipeline manually following instructions here: https://sagebionetworks.jira.com/wiki/spaces/APGD/pages/3016687662/Updating+Genome+Nexus+Annotator+and+Dependencies#Updating-the-annotator.jar

This creates room for human error as well as no guarantee in the reproducible environment that we are using each time we manually rebuild

Solution:

Create a github actions workflow for building the annotator.jar now that we have all of the main factors down. This will ensure consistent environment each time the annotator.jar is built.

This workflow is meant to be triggered manually whenever we have a new commit hash for the genome-nexus-pipeline that we want to use to rebuild our annotator.jar, we'd go to this workflow and user input the commit hash.

The goal eventually is to also add in user defined inputs for the maven and java versions as well as those are the most subject to change 2nd to the commit hash but due to the known github bug, this will have to wait.

Testing:

  • Integration tests pass
  • Result of annotated test data matches previous test data (No differences found!)
  • Run on actual prod data example and make sure result matches previous annotated data for that center (test on WAKE)

Copy link
Member

@thomasyu888 thomasyu888 left a comment

Choose a reason for hiding this comment

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

🔥 this is really nice! Great work here.

@rxu17 rxu17 marked this pull request as ready for review October 24, 2025 21:50
@rxu17 rxu17 requested a review from a team as a code owner October 24, 2025 21:50
env:
# versions for dependencies used in annotator.jar build
MAVEN_VERSION: '3.9.9'
COMMIT_HASH: 2e67ebd08cf7c26bf1f55f2baf4b73ac36531119
Copy link
Contributor

Choose a reason for hiding this comment

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

Can this be set to something like: COMMIT_HASH: ${{ github.event.inputs.commit_hash || 'default_value' }} so there is only one place to hold the commit_hash?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks! I think I forgot the 'default_value' last time and that's why it didn't work

Copy link
Contributor Author

@rxu17 rxu17 Oct 27, 2025

Choose a reason for hiding this comment

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

Actually I remembered why it doesn't work. Right now it will only have that default that i setup if I ran it through the github actions UI but because of the bug I mentioned, we can't test that until later so I just have the

workflow_dispatch:
Collapse commentComment on line R7rxu17 commented on Oct 24, 2025 rxu17on Oct 24, 2025ContributorAuthor
More actionsThere is a known bug with Github where the workflow dispatch doesn't show up unless you rename it (even then it's not guaranteed?): https://github.com/orgs/community/discussions/25219 even when your workflow is checked into the default branch of your repo. We can tackle once we get there but for now I'll make it so you can trigger this by a change to the github yaml file.
React
    inputs:
      commit_hash:
        description: "Genome Nexus pipeline commit hash to use for version of annotator.jar"
        required: true
        default: "2e67ebd08cf7c26bf1f55f2baf4b73ac36531119"

set up for later when we are able to implement the fix when it gets pushed to main but right now, just push a commit to trigger this workflow. Although now that I'm thinking about it, we probably want to update the commit hash via PR to build the annotator.jar instead of doing it via workflow_dispatch: because that doesn't save our default commit value that we pick if it changes (and eventually it will change)

@sonarqubecloud
Copy link

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.

3 participants