rancher-charts/README.md

67 lines
2.8 KiB
Markdown
Raw Normal View History

## Staging Branch
2020-07-21 20:22:47 +00:00
This branch contains generated assets that have not been officially released yet.
The following directory structure is expected:
```text
assets/
<package>/
<chart>-<packageVersion>.tgz
...
charts/
<package>
<chart>
<packageVersion>
# Unarchived Helm chart
...
```
### Configuration
This repository branch contains a `configuration.yaml` file that is used to specify how it interacts with other repository branches.
#### Sync
This branch syncs with the generated assets from the following branches:
2021-02-05 23:47:47 +00:00
- dev-v2.5-source at https://github.com/rancher/charts.git
2021-02-08 21:33:55 +00:00
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.
#### Validate
This branch validates against the generated assets of the following branches to make sure it isn't overriding already released charts.
2021-02-05 23:47:47 +00:00
- release-v2.5 at https://github.com/rancher/charts.git (only latest assets)
Before submitting any PRs, a Github Workflow will check to see if your package doesn't break any already released packages in these repository branches.
2021-02-08 21:33:55 +00:00
### Cutting a Release
2021-02-08 21:33:55 +00:00
In the Staging branch, cutting a release involves moving the contents of the `assets/` directory into `released/assets/`, deleting the contents of the `charts/` directory, and updating the `index.yaml` to point to the new location for those assets.
2021-02-08 21:33:55 +00:00
This process is entirely automated via the `make release` command.
2021-02-08 21:33:55 +00:00
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/*`.
2021-02-08 21:33:55 +00:00
No other changes are expected.
2021-02-08 21:33:55 +00:00
Note: these steps should be taken only after following the steps to cut a release to your Live Branch.
2021-02-08 21:33:55 +00:00
### Makefile
2021-02-08 21:33:55 +00:00
#### Basic Commands
2021-02-08 21:33:55 +00:00
`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
2021-02-08 21:33:55 +00:00
`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
`make release`: moves the contents of the `assets/` directory into `released/assets/`, deletes the contents of the `charts/` directory, and updates the `index.yaml` to point to the new location for those assets.