mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-13 22:05:59 +00:00
Create kube::util::create-fake-git-tree function
This commit is contained in:
parent
a235ba4e49
commit
68232c328f
@ -331,7 +331,7 @@ kube::util::group-version-to-pkg-path() {
|
|||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# "v1" is the API GroupVersion
|
# "v1" is the API GroupVersion
|
||||||
if [[ "${group_version}" == "v1" ]]; then
|
if [[ "${group_version}" == "v1" ]]; then
|
||||||
echo "vendor/k8s.io/api/core/v1"
|
echo "vendor/k8s.io/api/core/v1"
|
||||||
return
|
return
|
||||||
@ -437,6 +437,23 @@ kube::util::git_upstream_remote_name() {
|
|||||||
head -n 1 | awk '{print $1}'
|
head -n 1 | awk '{print $1}'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Ensures the current directory is a git tree for doing things like restoring or
|
||||||
|
# validating godeps
|
||||||
|
kube::util::create-fake-git-tree() {
|
||||||
|
local -r target_dir=${1:-$(pwd)}
|
||||||
|
|
||||||
|
pushd "${target_dir}" >/dev/null
|
||||||
|
git init >/dev/null
|
||||||
|
git config --local user.email "nobody@k8s.io"
|
||||||
|
git config --local user.name "$0"
|
||||||
|
git add . >/dev/null
|
||||||
|
git commit -q -m "Snapshot" >/dev/null
|
||||||
|
if (( ${KUBE_VERBOSE:-5} >= 6 )); then
|
||||||
|
kube::log::status "${target_dir} is now a git tree."
|
||||||
|
fi
|
||||||
|
popd >/dev/null
|
||||||
|
}
|
||||||
|
|
||||||
# Checks whether godep restore was run in the current GOPATH, i.e. that all referenced repos exist
|
# Checks whether godep restore was run in the current GOPATH, i.e. that all referenced repos exist
|
||||||
# and are checked out to the referenced rev.
|
# and are checked out to the referenced rev.
|
||||||
kube::util::godep_restored() {
|
kube::util::godep_restored() {
|
||||||
|
@ -50,11 +50,16 @@ while getopts ":df" opt; do
|
|||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# Confirm this is running inside a docker container, as this will modify the git tree (unsafe to run outside of container)
|
||||||
kube::util::ensure_dockerized
|
kube::util::ensure_dockerized
|
||||||
kube::golang::setup_env
|
kube::golang::setup_env
|
||||||
|
# Ensure we have a simple gopath so that we can modify it, and that no staging repos have made their way in
|
||||||
kube::util::ensure_single_dir_gopath
|
kube::util::ensure_single_dir_gopath
|
||||||
kube::util::ensure_no_staging_repos_in_gopath
|
kube::util::ensure_no_staging_repos_in_gopath
|
||||||
|
# Confirm we have the right godep version installed
|
||||||
kube::util::ensure_godep_version v79
|
kube::util::ensure_godep_version v79
|
||||||
|
# Create a fake git repo the root of the repo to prevent godeps from complaining
|
||||||
|
kube::util::create-fake-git-tree "${KUBE_ROOT}"
|
||||||
|
|
||||||
kube::log::status "Checking whether godeps are restored"
|
kube::log::status "Checking whether godeps are restored"
|
||||||
if ! kube::util::godep_restored 2>&1 | sed 's/^/ /'; then
|
if ! kube::util::godep_restored 2>&1 | sed 's/^/ /'; then
|
||||||
@ -87,27 +92,13 @@ function diffGodepManifest() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# Create a fake git repo for staging to prevent godeps from complaining
|
|
||||||
pushd "${KUBE_ROOT}" >/dev/null
|
|
||||||
git init >/dev/null
|
|
||||||
git config --local user.email "nobody@k8s.io"
|
|
||||||
git config --local user.name "$0"
|
|
||||||
git add . >/dev/null
|
|
||||||
git commit -q -m "Snapshot" >/dev/null
|
|
||||||
popd >/dev/null
|
|
||||||
|
|
||||||
# move into staging and save the dependencies for everything in order
|
# move into staging and save the dependencies for everything in order
|
||||||
mkdir -p "${TMP_GOPATH}/src/k8s.io"
|
mkdir -p "${TMP_GOPATH}/src/k8s.io"
|
||||||
for repo in $(ls ${KUBE_ROOT}/staging/src/k8s.io); do
|
for repo in $(ls ${KUBE_ROOT}/staging/src/k8s.io); do
|
||||||
cp -a "${KUBE_ROOT}/staging/src/k8s.io/${repo}" "${TMP_GOPATH}/src/k8s.io/"
|
cp -a "${KUBE_ROOT}/staging/src/k8s.io/${repo}" "${TMP_GOPATH}/src/k8s.io/"
|
||||||
|
|
||||||
pushd "${TMP_GOPATH}/src/k8s.io/${repo}" >/dev/null
|
# Create a fake git tree for the staging repo to prevent godeps from complaining
|
||||||
git init >/dev/null
|
kube::util::create-fake-git-tree "${TMP_GOPATH}/src/k8s.io/${repo}"
|
||||||
git config --local user.email "nobody@k8s.io"
|
|
||||||
git config --local user.name "$0"
|
|
||||||
git add . >/dev/null
|
|
||||||
git commit -q -m "Snapshot" >/dev/null
|
|
||||||
popd >/dev/null
|
|
||||||
|
|
||||||
updateGodepManifest
|
updateGodepManifest
|
||||||
diffGodepManifest
|
diffGodepManifest
|
||||||
|
Loading…
Reference in New Issue
Block a user