RussellSpitzer commented on code in PR #2156:
URL: https://github.com/apache/polaris/pull/2156#discussion_r2260505946


##########
releasey/libs/_github.sh:
##########
@@ -0,0 +1,154 @@
+#!/bin/bash
+#
+# 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.
+#
+
+#
+# Git Remote Setup Script
+#
+# This script ensures that the Git repository has the proper remote 
configuration for Apache Polaris releases:
+# 1. Checks whether there is a Git remote named 'apache' pointing to 
https://github.com/apache/polaris.git
+# 2. If the remote doesn't exist, it will be added
+# 3. If the remote exists but points to the wrong URL, error out
+#
+# Returns non-zero exit code if any verification fails.
+#
+
+set -euo pipefail
+
+LIBS_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
+
+# Source common logging functions and constants
+source "${LIBS_DIR}/_log.sh"
+source "${LIBS_DIR}/_constants.sh"
+source "${LIBS_DIR}/_exec.sh"
+
+function check_remote_exists() {
+  # Check if a remote exists, return 0 if it exists, 1 if not
+  local remote_name="$1"
+  git remote | grep -q "^${remote_name}$"
+}
+
+function get_remote_url() {
+  # Get the URL for a given remote, return non-zero if remote doesn't exist
+  local remote_name="$1"
+  git remote get-url "${remote_name}" 2>/dev/null || return 1
+}
+
+function ensure_no_uncommitted_change() {
+  if [[ -n $(git status --porcelain) ]]; then
+    print_error "There are uncommitted changes in the repository."
+    print_error "A release can only be performed from a clean state."
+    return 1
+  fi
+}
+
+function add_apache_remote() {

Review Comment:
   I agree there shouldn't be an "add remote" function. But i'd also note that 
the git -v output can also be a little tricky since if you don't use https 
   It would look like
   ```
   apache       g...@github.com:apache/polaris.git (fetch)
   apache       g...@github.com:apache/polaris.git (push)
   ```
   
   I think you are safe if you just look for `apache/polaris.git`



-- 
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: issues-unsubscr...@polaris.apache.org

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

Reply via email to