-
Notifications
You must be signed in to change notification settings - Fork 60
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
[OPENJDK-2992] Create DeploymentConfig and Route for jlink apps #514
base: jlink-dev
Are you sure you want to change the base?
Conversation
Signed-off-by: Jayashree Huttanagoudar <[email protected]>
Signed-off-by: Jayashree Huttanagoudar <[email protected]>
Signed-off-by: Jayashree Huttanagoudar <[email protected]>
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 working on this! Some notes
- can we get a default value for
TARGET_PORT
? - please add
TARGET_PORT
to the examples intemplates/jlink/README.md
- The Port parameter in the service object needs templating too; the default of 80 doesn't work with the quickstart we use in README.md
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.
The structure looks correct.
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 adding those; this is much closer. I've just tried it again in CRC and it's still not quite there. One more difference I notice between what this creates and what is created if I do "+Add" by hand in the console, is the latter creates a Pod object as well. Perhaps we need to add that.
Here's a dump of the pod object that was created in my CRC instance when I did a manual "Add". I'm guessing the vast majority of fields here aren't needed in the template, and somehow we 'll have to resolve the ImageStream/Image discrepancy for this
|
Thanks for continuing to work on this. We're not quite there yet. Here's the
With the current state ( Once that's resolved, the final state is a DeploymentConfig and a Pod that Where we want to get to is to have the objects combined like in the manual Clicking on the "external link" icon, to visit the URI for the route, The acceptance criteria is thus
|
The latest push fixes the label issue. The problem doesn't seem to be with the route, rather it's with the container itself. Looking at the logs before it crashes I'm seeing ERROR: Failed to start application (with profile [prod]) It looks like quarkus isn't able to create any temporary files/directories inside the container when built through the template. I don't see any differences in the pod specs that should be causing this, do you have any ideas @jmtd ? |
Upon further investigation it looks like the user we switch to for running the java command (USER 185) doesn't have write permissions on the file system so it's unable to create the cache for quarkus. This causes quarkus to crash and the pod to enter a CrashLoopBackoff which is why the application is unavailable. Removing the USER 185 and presumably running as root everything works as expected, but this probably isn't the best solution here, do you have any suggestions for a different user and/or how to fix this permissions issue? |
@jmtd any thoughts on the above? |
Addresses https://issues.redhat.com/browse/OPENJDK-2992
Cleanup/Continuation of #500
This cleans up the original PR, bringing it in line with the new naming convention for created objects, adding in the missing target port, and converting the Deployment to a DeploymentConfig to work with ImageStreamTags