zabetak commented on code in PR #5331:
URL: https://github.com/apache/hive/pull/5331#discussion_r1680929160


##########
ci/jenkins/README.md:
##########
@@ -0,0 +1,92 @@
+<!--
+{% comment %}
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to you under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+{% endcomment %}
+-->
+# Hive CI Jenkins
+
+This directory contains all the necessary resources to build the Jenkins image 
that is used in http://ci.hive.apache.org/
+and is hosted under https://hub.docker.com/r/apache/hive-ci-jenkins/. 
+
+The Jenkins container runs in a Kubernetes cluster powered by Google Cloud.
+
+## Build
+
+### Local
+To build a new image with the latest Jenkins version and the respective 
plugins run.
+```
+docker build . -t apache/hive-ci-jenkins:lts-jdk21
+```
+The Dockerfile does not contain fixed versions for Jenkins and the plugins 
used which means that on every build
+everything will be upgraded based on the latest available.
+
+### CI 
+
+There is a GitHub action that can be used to build and publish the latest 
Jenkins image on https://hub.docker.com/r/apache/hive-ci-jenkins/.
+
+## Run & test
+To start the container and test that everything is working run.
+```
+docker run -p 35000:8080 apache/hive-ci-jenkins:lts-jdk21
+```
+The Jenkins UI can be accessed via http://0.0.0.0:35000/.
+
+## Upgrade guide
+
+The bulk of stateful content that is maintained by Jenkins is located under 
the "/var/jenkins_home" directory and the
+latter is mounted to a persistent volume (see `kubectl describe 
pod/JENKINS_POD`).
+
+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.

Review Comment:
   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.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org
For additional commands, e-mail: gitbox-h...@hive.apache.org

Reply via email to