-
Notifications
You must be signed in to change notification settings - Fork 40.9k
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
Add Support for Remote Cloud Development with Gitpod #31185
Conversation
@Siddhant-K-code Please sign the Contributor License Agreement! Click here to manually synchronize the status of this Pull Request. See the FAQ for frequently asked questions. |
@Siddhant-K-code Thank you for signing the Contributor License Agreement! |
Refs spring-projects/spring-boot#31185 (cherry picked from commit ee0ad42)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the updates, @Siddhant-K-code. I wanted to try things out so I opened https://gitpod.io/#https://github.com/gitpod-forks/spring-projects-spring-boot to pick up the changes in your fork.
It took a while for the IDE to be ready as it downloaded JDK 17 and ran the build. Am I right in thinking that a pre-build will typically take care of this?
An error popped up during the project import that said the following:
Cannot activate the 'Test Runner for Java' extension because it depends on the 'Language Support for Java(TM) by Red Hat' extension, which is not installed. Would you like to install the extension and reload the window?
Is it possible for this extension to be pre-installed so that users get an error-free experience when they first open the project on Gitpod?
After manually installing Language Support for Java and reloading the workspace, no Java projects are found and I haven't managed to figure out how to add them.
Yeah, prebuild works in the case when there is Doc: Gitpod Prebuilds
Yeah, we can do that, will do the required changes. Related Doc: vscode-extensions in
Thanks for pointing this out, it is a known issue we are tracking in gitpod-io/gitpod#9839 |
Thanks for the link to the Gitpod issue. I'll mark this as blocked until it has been resolved. |
I have added the needed extension for java, that issue will not affect now, as it would install the extension while creating the dev. environment. We can merge this! |
Unfortunately, it doesn't seem to work. With your latest changes, the first time I opened https://gitpod.io/#https://github.com/gitpod-forks/spring-projects-spring-boot, it reported an error that the Java extension wasn't installed. The second time, it seemed to install the Java extension automatically but then reported an error that said "redhat.java extension is not synced, but not added in .gitpod.yml". In both cases no Java projects were found in the workspace. |
ec4f7f3
to
bb5f6f9
Compare
I have installed the required VsCode Extensions But, it is now showing this, is there something issue with dev. environment or some build command? can you pls help me on this. Getting this: |
The error in the first screenshot means that it's using a version of Java lower than 17 to run the build. The second looks to be unrelated but indicates that something else isn't quite right as it's using a nightly build of Gradle 7.5. It should be using the Gradle wrapper ( |
@Siddhant-K-code Do you have any update for us? |
e3e9345
to
d2f9b49
Compare
Thanks for the updates. I've opened https://gitpod.io/#https://github.com/gitpod-forks/spring-projects-spring-boot in my browser. 25 minutes later, the prebuild is still running. I can understand the benefits of it downloading all of the dependences so that things work smoothly in the IDE, but it's running all of the tests which feels unnecessary to me. I suspect it might be a lot quicker if https://github.com/gitpod-forks/spring-projects-spring-boot wasn't 100s of commits being https://github.com/spring-projects/spring-boot as cache hits from Gradle Enterprise would be more likely. Regardless of that, the current prebuild configuration feels suboptimal to me. I'll take another look once the prebuild has completed and I've had a chance to use the IDE. |
Sorry for kept you waiting @wilkinsona @snicoll I think, it should work now. I have put the build commands to To get the full benefit of prebuilds (which would save time) you need to install the Gitpod app to this repository. This Saves Build time, (very recently Node does which can save around ~41 minutes every time a person open a gitpod workspace) Also, I think we should skip the running tests while build. Any flag in build command to skip tests? |
The prebuild failed after almost an hour with the following message
Clicking Unfortunately, it's getting increasingly difficult to justify spending more time on this. Flagging for discussion at a team meeting so that we can decide what we want to do. |
It was due to, Gitpod has 1 hour timeout for the prebuilds. I think with skipping the tests check while build will decrease this time. & It would work smoothly.
It was in the previous commit (outdated workspace image). Now, this problem won't be there. I have updated the workspace image.
Sorry for the friction. Would be fix soon 🤞🏼 |
We can't skip the tests entirely, unfortunately. Some of our documentation is test-driven so skipping them will prevent the documentation from being built. Running Build time should also be improved by our Gradle Enterprise cache that's hosted at https://ge.spring.io. Cache retention is relatively short so your branch being 600 commits behind our main branch will be negating its benefits. Perhaps you can rebase and force-push? |
Learn more about this file at 'https://www.gitpod.io/docs/references/gitpod-yml'
Thanks for the suggestions, I have updated the
Updated that 👍🏼 |
The team discussed this PR and unfortunately we're going to decline it. Thanks @Siddhant-K-code ! |
About this PR
This PR Contains a
.gitpod.yml
which enables the prebuild and creates a ready to code workspace for contributors.Maintainability
You do not have to change anything, until or unless you change the build commands flow. In all cases it would work perfect. & This Will Not affect the ongoing maintenance
PS: Prebuilds are enabled - saving ~3 minutes of build/ workspace startup time from a cold state.