diff --git a/cmd/ack-generate/command/release.go b/cmd/ack-generate/command/release.go index 7015faa4..d448d2e3 100644 --- a/cmd/ack-generate/command/release.go +++ b/cmd/ack-generate/command/release.go @@ -40,7 +40,7 @@ var releaseCmd = &cobra.Command{ func init() { releaseCmd.PersistentFlags().StringVar( - &optImageRepository, "image-repository", "amazon/aws-controllers-k8s", "the Docker image repository to use in release artifacts.", + &optImageRepository, "image-repository", "", "the Docker image repository to use in release artifacts. Defaults to 'public.ecr.aws/aws-controllers-k8s/$service-controller'", ) releaseCmd.PersistentFlags().StringVar( &optServiceAccountName, "service-account-name", "default", "The name of the ServiceAccount AND ClusterRole used for ACK service controller", @@ -61,6 +61,9 @@ func generateRelease(cmd *cobra.Command, args []string) error { if optReleaseOutputPath == "" { optReleaseOutputPath = filepath.Join(optServicesDir, svcAlias) } + if optImageRepository == "" { + optImageRepository = fmt.Sprintf("public.ecr.aws/aws-controllers-k8s/%s-controller", svcAlias) + } // TODO(jaypipes): We could do some git-fu here to verify that the release // version supplied hasn't been used (as a Git tag) before... releaseVersion := strings.ToLower(args[1]) diff --git a/scripts/build-controller-release.sh b/scripts/build-controller-release.sh index 38400ffa..492fd4fc 100755 --- a/scripts/build-controller-release.sh +++ b/scripts/build-controller-release.sh @@ -8,7 +8,6 @@ set -eo pipefail SCRIPTS_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" ROOT_DIR="$SCRIPTS_DIR/.." BIN_DIR="$ROOT_DIR/bin" -DEFAULT_IMAGE_REPOSITORY="public.ecr.aws/aws-controllers-k8s/controller" ACK_GENERATE_OLM=${ACK_GENERATE_OLM:-"false"} source "$SCRIPTS_DIR/lib/common.sh" @@ -35,7 +34,6 @@ ACK_GENERATE_BIN_PATH=${ACK_GENERATE_BIN_PATH:-$DEFAULT_ACK_GENERATE_BIN_PATH} ACK_GENERATE_API_VERSION=${ACK_GENERATE_API_VERSION:-"v1alpha1"} ACK_GENERATE_CONFIG_PATH=${ACK_GENERATE_CONFIG_PATH:-""} ACK_METADATA_CONFIG_PATH=${ACK_METADATA_CONFIG_PATH:-""} -ACK_GENERATE_IMAGE_REPOSITORY=${ACK_GENERATE_IMAGE_REPOSITORY:-"$DEFAULT_IMAGE_REPOSITORY"} AWS_SDK_GO_VERSION=${AWS_SDK_GO_VERSION:-"v1.35.5"} DEFAULT_TEMPLATES_DIR="$ROOT_DIR/../../aws-controllers-k8s/code-generator/templates" @@ -82,7 +80,7 @@ Environment variables: Default: services/{SERVICE} ACK_GENERATE_IMAGE_REPOSITORY: Specify a Docker image repository to use for release artifacts - Default: $DEFAULT_IMAGE_REPOSITORY + Default: public.ecr.aws/u2r4f3v7/{SERVICE}-controller ACK_GENERATE_SERVICE_ACCOUNT_NAME: Name of the Kubernetes Service Account and Cluster Role to use in Helm chart. Default: $ACK_GENERATE_SERVICE_ACCOUNT_NAME @@ -124,6 +122,10 @@ SERVICE=$(echo "$1" | tr '[:upper:]' '[:lower:]') DEFAULT_SERVICE_CONTROLLER_SOURCE_PATH="$ROOT_DIR/../$SERVICE-controller" SERVICE_CONTROLLER_SOURCE_PATH=${SERVICE_CONTROLLER_SOURCE_PATH:-$DEFAULT_SERVICE_CONTROLLER_SOURCE_PATH} +# TODO(vijat@): replace "u2r4f3v7" with aws-controllers-k8s +DEFAULT_IMAGE_REPOSITORY="public.ecr.aws/u2r4f3v7/$SERVICE-controller" +ACK_GENERATE_IMAGE_REPOSITORY=${ACK_GENERATE_IMAGE_REPOSITORY:-"$DEFAULT_IMAGE_REPOSITORY"} + if [[ ! -d $SERVICE_CONTROLLER_SOURCE_PATH ]]; then echo "Error evaluating SERVICE_CONTROLLER_SOURCE_PATH environment variable:" 1>&2 echo "$SERVICE_CONTROLLER_SOURCE_PATH is not a directory." 1>&2 diff --git a/templates/helm/Chart.yaml.tpl b/templates/helm/Chart.yaml.tpl index 72c9efc5..8e7cbd90 100644 --- a/templates/helm/Chart.yaml.tpl +++ b/templates/helm/Chart.yaml.tpl @@ -1,5 +1,5 @@ apiVersion: v1 -name: ack-{{ .ServiceIDClean }}-controller +name: {{ .ServiceIDClean }}-chart description: A Helm chart for the ACK service controller for {{ .ServiceIDClean }} version: {{ .ReleaseVersion }} appVersion: {{ .ReleaseVersion }} diff --git a/templates/helm/values.yaml.tpl b/templates/helm/values.yaml.tpl index 1e4b9d65..6a1ceb92 100644 --- a/templates/helm/values.yaml.tpl +++ b/templates/helm/values.yaml.tpl @@ -4,7 +4,7 @@ image: repository: {{ .ImageRepository }} - tag: {{ .ServiceIDClean }}-{{ .ReleaseVersion }} + tag: {{ .ReleaseVersion }} pullPolicy: IfNotPresent pullSecrets: []