-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
HIVE-28339: Dockerfile and GitHub action for hive-ci-jenkins image #5331
Conversation
I can see that Zoltan's repo contains an entrypoint script: https://github.com/kgyrtkirk/hive-test-kube/blob/master/htk-jenkins/entrypoint thanks for this effort so far, I totally agree with this initiative to include hive's ci infra code to the main repo |
@abstractdog The https://github.com/kgyrtkirk/hive-test-kube/blob/master/htk-jenkins/entrypoint does not appear necessary. The JVM options are now passed using |
ci/jenkins/README.md
Outdated
For the upgrade, we need to ensure that the current state and configurations in the persistent volume are not in conflict | ||
with the new Jenkins version before pushing the new image to production. | ||
|
||
1. Obtain a backup of the jenkins_home directory from the persistent volume. |
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.
these instructions work outside k8s; as it is I guess you can't launch a single job during the validation...
the right process should be:
- copy k8s volume
- create a new pod with the copied data
- use that to check things out
instead of launching with docker
: I think you should document that (or remove these instructions)
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.
You can test various aspects but indeed launching jobs or connecting to the K8 nodes will not work.
The process outlined above indeed makes sense but wasn't very comfortable doing that in the actual cluster cause I was afraid of potential side-effects. If a second fully-working Jenkins instance comes up running it may interfere with the main one.
Anyways given that very few people have access to the K8 cluster it may be better to remove these instructions altogether for now.
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.
Removed upgrade instructions in 9870120
yes - it was a surprise to me as well that k8s doesn't support I think putting this into the main repo is not the best - as you will need to deploy it and push the image to see what happens...so you will at most will be committing to the repo as an after-tought....keeping a separate un-confined repo will make it easier to track what and when was changed - but I might be alone with this view... |
I feel that keeping this image in the main repo is the way to go |
I agree with Zoltan that a separate repo would be beneficial for tracking CI and product changes separately. However, I am willing to sacrifice this separation for facilitating the discovery and contributions to the CI part. At the same time, I feel that the testability aspect for Jenkins changes is independent of where the code is hosted. Even if this code is hosted in another repo we would still need a way to prove that changes in the Jenkins image do not break production. This is definitely an area with lots of room for improvements. |
Quality Gate passedIssues Measures |
@abstractdog @kgyrtkirk Is there anything else apart from the repo debate holding off this PR? I want to get a feeling what is pending to finalize this work to see how to advance. |
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.
I confirmed docker build
and docker run
in README worked for me, and Jenkins was available on http://0.0.0.0:35000/
.
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. |
What changes were proposed in this pull request?
Why are the changes needed?
Does this PR introduce any user-facing change?
No
Is the change a dependency upgrade?
No
How was this patch tested?
The image produced from the Dockerfile here is already running production.
README.md
file for building and testing the image.lts-jdk21
tag.