mirror of https://github.com/k3s-io/k3s
Merge pull request #1953 from jbeda/official-release
Script to do an "official" release push to GCS.pull/6/head
commit
cefbf272af
|
@ -579,8 +579,8 @@ function kube::release::gcs::ensure_release_bucket() {
|
||||||
KUBE_GCS_DOCKER_REG_PREFIX=${KUBE_GCS_DOCKER_REG_PREFIX-docker-reg/}
|
KUBE_GCS_DOCKER_REG_PREFIX=${KUBE_GCS_DOCKER_REG_PREFIX-docker-reg/}
|
||||||
|
|
||||||
if ! gsutil ls "gs://${KUBE_GCS_RELEASE_BUCKET}" >/dev/null 2>&1 ; then
|
if ! gsutil ls "gs://${KUBE_GCS_RELEASE_BUCKET}" >/dev/null 2>&1 ; then
|
||||||
echo "Creating Google Cloud Storage bucket: $RELEASE_BUCKET"
|
echo "Creating Google Cloud Storage bucket: $KUBE_GCS_RELEASE_BUCKET"
|
||||||
gsutil mb "gs://${KUBE_GCS_RELEASE_BUCKET}"
|
gsutil mb -p "${GCLOUD_PROJECT}" "gs://${KUBE_GCS_RELEASE_BUCKET}"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -655,7 +655,12 @@ function kube::release::gcs::copy_release_tarballs() {
|
||||||
gsutil -q rm -f -R "${gcs_destination}" >/dev/null 2>&1 || true
|
gsutil -q rm -f -R "${gcs_destination}" >/dev/null 2>&1 || true
|
||||||
|
|
||||||
# Now upload everything in release directory
|
# Now upload everything in release directory
|
||||||
gsutil -m "${gcs_options[@]-}" cp -r "${RELEASE_DIR}"/* "${gcs_destination}" >/dev/null 2>&1
|
gsutil -m "${gcs_options[@]+${gcs_options[@]}}" cp -r "${RELEASE_DIR}"/* "${gcs_destination}"
|
||||||
|
|
||||||
|
# TODO(jbeda): Generate an HTML page with links for this release so it is easy
|
||||||
|
# to see it. For extra credit, generate a dynamic page that builds up the
|
||||||
|
# release list using the GCS JSON API. Use Angular and Bootstrap for extra
|
||||||
|
# extra credit.
|
||||||
|
|
||||||
if [[ ${KUBE_GCS_MAKE_PUBLIC} =~ ^[yY]$ ]]; then
|
if [[ ${KUBE_GCS_MAKE_PUBLIC} =~ ^[yY]$ ]]; then
|
||||||
gsutil acl ch -R -g all:R "${gcs_destination}" >/dev/null 2>&1
|
gsutil acl ch -R -g all:R "${gcs_destination}" >/dev/null 2>&1
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
#! /bin/bash
|
||||||
|
|
||||||
|
# Copyright 2014 Google Inc. All rights reserved.
|
||||||
|
#
|
||||||
|
# Licensed 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.
|
||||||
|
|
||||||
|
# Pushes an official release to our official release location
|
||||||
|
|
||||||
|
set -o errexit
|
||||||
|
set -o nounset
|
||||||
|
set -o pipefail
|
||||||
|
|
||||||
|
KUBE_RELEASE_VERSION=${1-}
|
||||||
|
|
||||||
|
[[ -n ${KUBE_RELEASE_VERSION} ]] || {
|
||||||
|
echo "!!! You must specify the version you are releasing in the form of vX.Y.Z" >&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
KUBE_GCS_NO_CACHING=n
|
||||||
|
KUBE_GCS_MAKE_PUBLIC=y
|
||||||
|
KUBE_GCS_UPLOAD_RELEASE=y
|
||||||
|
KUBE_GCS_RELEASE_BUCKET=kubernetes-release
|
||||||
|
KUBE_GCS_PROJECT=google-containers
|
||||||
|
KUBE_GCS_RELEASE_PREFIX=release/${KUBE_RELEASE_VERSION}
|
||||||
|
|
||||||
|
KUBE_ROOT=$(dirname "${BASH_SOURCE}")/..
|
||||||
|
source "$KUBE_ROOT/build/common.sh"
|
||||||
|
|
||||||
|
|
||||||
|
kube::release::gcs::release
|
Loading…
Reference in New Issue