From c8c618191cfc3f7d658dd39843b0e67174523c66 Mon Sep 17 00:00:00 2001 From: nicolaferraro Date: Tue, 13 Apr 2021 17:38:22 +0200 Subject: [PATCH] chore(release): add release script --- script/release.sh | 48 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100755 script/release.sh diff --git a/script/release.sh b/script/release.sh new file mode 100755 index 000000000..07dfd89c3 --- /dev/null +++ b/script/release.sh @@ -0,0 +1,48 @@ +#!/bin/sh + +# 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. + + +location=$(dirname $0) +rootdir=$location/../ + +if [ "$#" -ne 2 ]; then + echo "usage: $0 version remote" + exit 1 +fi + +version=$1 +remote=$2 + +cd $rootdir +echo "Releasing $version..." + +for file in *.kamelet.yaml; do + if ! grep -q "camel.apache.org/catalog.version" "$file" + then + echo "Adding release information to $file..." + sed -i "s/^ annotations:.*$/ annotations:\n camel.apache.org\/catalog.version: \"$version\"/" "${file}" + fi +done + +staging=staging-$version +git branch -D ${staging} || true +git checkout -b ${staging} +git add * || true +git commit -a -m "Release ${version}" +git tag --force ${version} ${staging} +git push --force ${remote} ${version} +echo "Tag ${version} pushed to ${remote}"