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

Update Documentation on Deploy without Docker #10623

Closed
JREastonMarks opened this issue Feb 13, 2024 · 13 comments · Fixed by #10655
Closed

Update Documentation on Deploy without Docker #10623

JREastonMarks opened this issue Feb 13, 2024 · 13 comments · Fixed by #10655
Assignees

Comments

@JREastonMarks
Copy link
Contributor

With the rollout of 6.0.0 we have a different methodology for deploying cBioPortal without Docker. The documentation for this is currently incomplete.

Some things that are know to be needed to address

  • Java Version
  • Execution after building
  • Importing Example Datasets
@JREastonMarks JREastonMarks self-assigned this Feb 13, 2024
@JREastonMarks JREastonMarks changed the title Update Documentatino on Deploy without Docker Update Documentation on Deploy without Docker Feb 14, 2024
@barykada90
Copy link

Hi Jeremy - do we have ETA for this? Is it only documentation or also the files (pom, jsp etc)?

@JREastonMarks
Copy link
Contributor Author

Working on the update right now.
It will probably come in two parts.
The first being the building of cBioPortal and deploying it.
The second being the data loading.

@barykada90 Would you be available to test those steps?

@barykada90
Copy link

Sure thing, happy to test!

@JREastonMarks
Copy link
Contributor Author

@barykada90
Copy link

@JREastonMarks - testing on both Win11 and Ubuntu:

Step 2 instructs copying application.properties to root but then maven is unable to find it when compiling as it's looking at src/main/resources path (because of the pom.xml entry)
(FYI application.properties file already has a predefined session.service.url value)
Step 3 - no information about environmental variable
Step 4 - typo "command"
Step 5 - entire paragraph about starting session is removed

Win11 - error and fail when trying to start the application (no authentication):
16:52:58.763 [main] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.boot.context.properties.ConfigurationPropertiesBindException: Error creating bean with name 'portalProperties': Could not bind properties to 'PortalProperties' : prefix=, ignoreInvalidFields=false, ignoreUnknownFields=true

I'll test Ubuntu next

@JREastonMarks
Copy link
Contributor Author

JREastonMarks commented Feb 20, 2024

Hi @barykada90,
Thank you for testing and the feedback.
Step 2 - I updated the command.
Step 3 - No environmental variables should be needed to build cBioPortal
Step 4 - Fixed that Typo
Step 5 - Sessions are no longer required for 6.X

Win11 Error - That looks almost like it couldn't find the application.properties file.

When you get a chance please take a look again.

@barykada90
Copy link

Thank you @JREastonMarks - amazing
I've tested on Ubuntu as it has the same error and had to fall back to Windows with some debugging.
The error was around the MySQL connection (I'm using 8.0.36 on ubuntu), so 2 things:

  1. the username and password in application.properties don't match with the instructions so that needs to be unified (STEP 2)
  2. MYSQL was crying for public key retrieval so pom.xml must be updated with an additional query string allowPublicKeyRetrieval=true (which has some security concerns):
    jdbc:mysql://localhost:3306/cbioportal?allowPublicKeyRetrieval=true&useSSL=false

I can confirm the session service is no longer needed to be spin out separately, however, the connection string must be still there, i.e.: session.service.url=http://localhost:8091/session_service/api/sessions/public_portal/ otherwise there's an error
Screenshot 2024-02-20 163115

Step 1 - Java 21 is now a must, I've tried running on 19 and hit a brick wall

FYI, I didn't test STEP 4 as I'm running my own set of data

STEP 5 - typo command

Thank you!

@JREastonMarks
Copy link
Contributor Author

Hi @barykada90
Step 2 - Updated the documentation
Step 3 - I updated the docs to say Java 21 must be used
Step 4 - No worries, it will probably go through a couple of iterations
Step 5 - Typo Fixed

In application.properties.example session.service.url has a default value
Thank you again for all your help

@barykada90
Copy link

Thanks @JREastonMarks - i just scanned the documents and apart from the typo not fixed on step 5, all good to go, thank you!

Re session.service.url - yes, but I don't understand what heroku is capturing therefore I'm not happy for it to stay there = override

Thank you for making that happen!

@JREastonMarks
Copy link
Contributor Author

Thank you again for reviewing this @barykada90 .

I'm not sure what typo on step 5 you are talking about. Can you expand?

@barykada90
Copy link

My absolute pleasure @JREastonMarks

Typo:
Screenshot 2024-02-22 141652

I'm facing 2 problems with that build - CORS for API (platform is unable to fetch studies if accessed via URL (not localhost)) and no files to import studies.

@barykada90
Copy link

Hey - just whilst making more progress, I'm trying to upload some data and the error is thrown
Expected to find 1 scripts-*.jar, but found 0

So I read multiple docs and found on STEP 4 reference in core of the below which doesn't exist - is that still correct?
scripts/target/scripts-*.jar

Essentially I'm unable to load any data :)

@barykada90
Copy link

Sess

Hi @JREastonMarks - it appears that when using SAML authentication, session service is still required (context: https://groups.google.com/g/cbioportal/c/lPk-_NxaggU)

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 a pull request may close this issue.

2 participants