diff --git a/.goreleaser.yaml b/.goreleaser.yaml index 0e16e5705cf..2925fcdfc91 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -100,9 +100,15 @@ archives: - kubectl-create-workspace name_template: "kubectl-create-workspace-plugin_{{ .Version }}_{{ .Os }}_{{ .Arch }}" +before: + hooks: + - config/crds/crd-bundler.sh + release: draft: true mode: keep-existing + extra_files: + - glob: ./config/crds/crds.yaml krews: - name: kcp diff --git a/config/crds/crd-bundler.sh b/config/crds/crd-bundler.sh new file mode 100755 index 00000000000..356ad8bcbd0 --- /dev/null +++ b/config/crds/crd-bundler.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash + +# Copyright 2024 The KCP Authors. +# +# 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. + +# This script bundles CRDs to be used in relation to goreleaser. +CRDS_DIR=$(dirname "${0}") + +CRDS_FILE="${CRDS_DIR}/crds.yaml" +rm -f "${CRDS_FILE}" +for file in "${CRDS_DIR}"/apis.kcp.*.yaml "${CRDS_DIR}"/cache.kcp.*.yaml \ + "${CRDS_DIR}"/core.kcp.*.yaml "${CRDS_DIR}"/tenancy.kcp.*.yaml \ + "${CRDS_DIR}"/topology.kcp.*.yaml; do + cat "${file}" >> "${CRDS_FILE}" + echo "--" >> "${CRDS_FILE}" + echo "${file}" >> /tmp/debug +done