Make manifests dir bundle.sh configurable
There was an assumption in this script that it is always executed in Git repository/directory, this is however not always true, for example when one downloads the `.tar.gz` that is made available for every release by GitHub (and used in one of our AUR packages). This commit changes this, and makes the first argument of `bundle.sh` configurable, so a custom manifests directory can always be defined _without_ relying on Git. Omitting it, or passing an empty string, will still fall back to the previous behavior of using `git rev-parse --show-toplevel`. Signed-off-by: Hidde Beydals <hello@hidde.co>
This commit is contained in:
2
.github/workflows/release.yaml
vendored
2
.github/workflows/release.yaml
vendored
@@ -31,7 +31,7 @@ jobs:
|
|||||||
- name: Generate manifests
|
- name: Generate manifests
|
||||||
run: |
|
run: |
|
||||||
make cmd/flux/manifests
|
make cmd/flux/manifests
|
||||||
./manifests/scripts/bundle.sh ./output manifests.tar.gz
|
./manifests/scripts/bundle.sh "" ./output manifests.tar.gz
|
||||||
kustomize build ./manifests/install > ./output/install.yaml
|
kustomize build ./manifests/install > ./output/install.yaml
|
||||||
- name: Run GoReleaser
|
- name: Run GoReleaser
|
||||||
uses: goreleaser/goreleaser-action@v1
|
uses: goreleaser/goreleaser-action@v1
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# Copyright 2020 The Flux authors. All rights reserved.
|
# Copyright 2020, 2021 The Flux authors. All rights reserved.
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
@@ -16,9 +16,9 @@
|
|||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
REPO_ROOT=$(git rev-parse --show-toplevel)
|
IN_PATH=${1:-"$(git rev-parse --show-toplevel)/manifests"}
|
||||||
OUT_PATH=${1:-"${REPO_ROOT}/cmd/flux/manifests"}
|
OUT_PATH=${2:-"$(git rev-parse --show-toplevel)/cmd/flux/manifests"}
|
||||||
TAR=${2}
|
TAR=${3}
|
||||||
|
|
||||||
info() {
|
info() {
|
||||||
echo '[INFO] ' "$@"
|
echo '[INFO] ' "$@"
|
||||||
@@ -45,20 +45,20 @@ files=""
|
|||||||
info using "$(kustomize version --short)"
|
info using "$(kustomize version --short)"
|
||||||
|
|
||||||
# build controllers
|
# build controllers
|
||||||
for controller in ${REPO_ROOT}/manifests/bases/*/; do
|
for controller in ${IN_PATH}/bases/*/; do
|
||||||
output_path="${OUT_PATH}/$(basename $controller).yaml"
|
output_path="${OUT_PATH}/$(basename $controller).yaml"
|
||||||
build $controller $output_path
|
build $controller $output_path
|
||||||
files+=" $(basename $output_path)"
|
files+=" $(basename $output_path)"
|
||||||
done
|
done
|
||||||
|
|
||||||
# build rbac
|
# build rbac
|
||||||
rbac_path="${REPO_ROOT}/manifests/rbac"
|
rbac_path="${IN_PATH}/rbac"
|
||||||
rbac_output_path="${OUT_PATH}/rbac.yaml"
|
rbac_output_path="${OUT_PATH}/rbac.yaml"
|
||||||
build $rbac_path $rbac_output_path
|
build $rbac_path $rbac_output_path
|
||||||
files+=" $(basename $rbac_output_path)"
|
files+=" $(basename $rbac_output_path)"
|
||||||
|
|
||||||
# build policies
|
# build policies
|
||||||
policies_path="${REPO_ROOT}/manifests/policies"
|
policies_path="${IN_PATH}/policies"
|
||||||
policies_output_path="${OUT_PATH}/policies.yaml"
|
policies_output_path="${OUT_PATH}/policies.yaml"
|
||||||
build $policies_path $policies_output_path
|
build $policies_path $policies_output_path
|
||||||
files+=" $(basename $policies_output_path)"
|
files+=" $(basename $policies_output_path)"
|
||||||
|
|||||||
Reference in New Issue
Block a user