From 740f7c76fe09e20a0554c957722211a3cca75c4d Mon Sep 17 00:00:00 2001 From: Arvind Iyengar Date: Mon, 8 Feb 2021 13:36:36 -0800 Subject: [PATCH] Bump version to v0.0.4 --- .gitignore | 3 ++- Makefile | 2 -- README.md | 45 ++++++++++++++++++++++++++++---------------- _config.yml | 1 + scripts/pull-scripts | 2 +- scripts/version | 4 ++++ 6 files changed, 37 insertions(+), 20 deletions(-) create mode 100755 _config.yml create mode 100755 scripts/version diff --git a/.gitignore b/.gitignore index c5e82d745..5f44260cc 100755 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ -bin \ No newline at end of file +bin +*.DS_Store \ No newline at end of file diff --git a/Makefile b/Makefile index 37550fdfb..2eb544bbe 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,3 @@ -CHARTS_BUILD_SCRIPT_VERSION := fdf0565 - pull-scripts: ./scripts/pull-scripts diff --git a/README.md b/README.md index 5895cf12c..8f49f66cb 100644 --- a/README.md +++ b/README.md @@ -24,26 +24,39 @@ This repository branch contains a `configuration.yaml` file that is used to spec This branch syncs with the generated assets from the following branches: - dev-v2.5-alt at https://github.com/rancher/charts.git (only latest assets) -To release a new version of a chart, please open the relevant PRs to one of these branches. Merging should trigger a sync workflow on pushing to these branches. +To release a new version of a chart, please open the relevant PRs to one of these branches. + +Merging should trigger a sync workflow on pushing to these branches. + +### Cutting a Release + +In the Live branch, cutting a release requires you to run the `make sync` command. + +This command will automatically get the latest charts / resources merged into the the branches you sync with (as indicated in this branch's `configuration.yaml`) and will fail if any of those branches try to modify already released assets. + +If the `make sync` command fails, you might have to manually make changes to the contents of the Staging Branch to resolve any issues. + +Once you successfully run the `make sync` command, the logs outputted will itemize the releaseCandidateVersions picked out from the Staging branch and make exactly two changes: + +1. It will update the `Chart.yaml`'s version for each chart to drop the `-rcXX` from it + +2. It will update the `Chart.yaml`'s annotations for each chart to drop the `-rcXX` from it only for some special annotations (note: currently, the only special annotation we track is `catalog.cattle.io/auto-install`). + +Once you successfully run the `make release` command, ensure the following is true: +- The `assets/` and `charts/` directories each only have a single file contained within them: `README.md` +- The `released/assets/` directory has a .tgz file for each releaseCandidateVersion of a Chart that was created during this release. +- The `index.yaml` and `released/assets/index.yaml` both are identical and the `index.yaml`'s diff shows only two types of changes: a timestamp update or a modification of an existing URL from `assets/*` to `released/assets/*`. + +No other changes are expected. ### Makefile -#### Package-Level (requires packages/ to exist) +#### Basic Commands -`make prepare`: Pulls in your charts from upstream and creates a basic `generated-changes/` directory with your dependencies from upstream - -`make patch`: Updates your `generated-changes/` to reflect the difference between upstream and the current working directory of your branch. Requires prepare - -`make charts`: Runs prepare and then exports your charts to `assets/` and `charts/` and generates or updates your `index.yaml`. Can be used for testing; a Rancher Helm Repository that points to a branch that has these directories with the `index.yaml` should be able to find and deploy working copies of your chart. - -`make clean`: Cleans up all the working directories of charts to get your repository ready for a PR - -#### Branch-Level (requires either packages/ or assets/ + charts/) - -`make pull-scripts`: Pulls in the version of the `charts-build-scripts` indicated in scripts - -`make validate`: Validates your current repository branch against all the repository branches indicated in your configuration.yaml +`make pull-scripts`: Pulls in the version of the `charts-build-scripts` indicated in scripts. `make sync`: Syncs the assets in your current repository with the merged contents of all of the repository branches indicated in your configuration.yaml -`make update`: Pulls in the latest docs, scripts, etc. from the charts-build-scripts repository \ No newline at end of file +`make validate`: Validates your current repository branch against all the repository branches indicated in your configuration.yaml + +`make docs`: Pulls in the latest docs, scripts, etc. from the charts-build-scripts repository \ No newline at end of file diff --git a/_config.yml b/_config.yml new file mode 100755 index 000000000..1888c5ad7 --- /dev/null +++ b/_config.yml @@ -0,0 +1 @@ +exclude: [charts] diff --git a/scripts/pull-scripts b/scripts/pull-scripts index c09edb82a..0b5835f14 100755 --- a/scripts/pull-scripts +++ b/scripts/pull-scripts @@ -3,7 +3,7 @@ set -e cd $(dirname $0) -CHARTS_BUILD_SCRIPT_VERSION=v0.0.3 +source ./version echo "Pulling in charts-build-scripts version ${CHARTS_BUILD_SCRIPT_VERSION}" diff --git a/scripts/version b/scripts/version new file mode 100755 index 000000000..3ca1e4dcd --- /dev/null +++ b/scripts/version @@ -0,0 +1,4 @@ +#!/bin/bash +set -e + +CHARTS_BUILD_SCRIPT_VERSION=v0.0.4