Add chesksums to release.json & upload to GCS
parent
e649f50427
commit
a22a155fdf
58
RELEASING.md
58
RELEASING.md
|
@ -14,17 +14,6 @@ If you do this, bump the ISO URL to point to the new ISO, and send a PR.
|
|||
|
||||
See [this PR](https://github.com/kubernetes/minikube/pull/165) for an example.
|
||||
|
||||
## Add the version to the releases.json file
|
||||
|
||||
Add an entry **to the top** of deploy/minikube/releases.json with the version, and send a PR.
|
||||
This file controls the auto update notifications in minikube.
|
||||
Only add entries to this file that should be released to all users (no pre-release, alpha or beta releases).
|
||||
The file must be uploaded to GCS before notifications will go out. That step comes at the end.
|
||||
|
||||
The schema for this file can be found in deploy/minikube/schema.json.
|
||||
|
||||
An automated test to verify the schema runs in Travis before each submit.
|
||||
|
||||
## Run integration tests
|
||||
|
||||
Run this command:
|
||||
|
@ -33,33 +22,46 @@ make integration
|
|||
```
|
||||
Investigate and fix any failures.
|
||||
|
||||
## Build the Release
|
||||
|
||||
Run this command:
|
||||
|
||||
```shell
|
||||
make cross checksum
|
||||
```
|
||||
|
||||
## Add the version to the releases.json file
|
||||
|
||||
Add an entry **to the top** of deploy/minikube/releases.json with the version and checksums.
|
||||
Send a PR.
|
||||
This file controls the auto update notifications in minikube.
|
||||
Only add entries to this file that should be released to all users (no pre-release, alpha or beta releases).
|
||||
The file must be uploaded to GCS before notifications will go out. That step comes at the end.
|
||||
|
||||
The schema for this file can be found in deploy/minikube/schema.json.
|
||||
|
||||
An automated test to verify the schema runs in Travis before each submit.
|
||||
|
||||
## Upload to GCS:
|
||||
|
||||
```shell
|
||||
gsutil cp out/minikube-linux-amd64 gs://minikube/releases/$RELEASE/
|
||||
gsutil cp out/minikube-linux-amd64.sha256 gs://minikube/releases/$RELEASE/
|
||||
gsutil cp out/minikube-darwin-amd64 gs://minikube/releases/$RELEASE/
|
||||
gsutil cp out/minikube-darwin-amd64.sha256 gs://minikube/releases/$RELEASE/
|
||||
```
|
||||
|
||||
## Tag the Release
|
||||
|
||||
Run a command like this to tag it locally: `git tag -a v0.2.0 -m "0.2.0 Release"`.
|
||||
|
||||
And run a command like this to push the tag: `git push upstream v0.2.0`.
|
||||
|
||||
## Build the Release
|
||||
|
||||
Run these commands:
|
||||
|
||||
```shell
|
||||
GOOS=linux GOARCH=amd64 make out/minikube-linux-amd64
|
||||
GOOS=darwin GOARCH=amd64 make out/minikube-darwin-amd64
|
||||
```
|
||||
|
||||
## Upload to GCS:
|
||||
|
||||
```shell
|
||||
gsutil cp out/minikube-linux-amd64 gs://minikube/releases/$RELEASE/
|
||||
gsutil cp out/minikube-darwin-amd64 gs://minikube/releases/$RELEASE/
|
||||
```
|
||||
|
||||
## Create a Release in Github
|
||||
|
||||
Create a new release based on your tag, like [this one](https://github.com/kubernetes/minikube/releases/tag/v0.2.0).
|
||||
|
||||
Upload the files, and calculate checksums.
|
||||
Upload the files, and calculated checksums.
|
||||
|
||||
## Upload the releases.json file to GCS
|
||||
|
||||
|
|
|
@ -6,10 +6,28 @@
|
|||
"properties": {
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"checksums": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"windows": {
|
||||
"type": "number",
|
||||
"pattern": "^[A-Fa-f0-9]{64}$"
|
||||
},
|
||||
"darwin": {
|
||||
"type": "number",
|
||||
"pattern": "^[A-Fa-f0-9]{64}$"
|
||||
},
|
||||
"linux": {
|
||||
"type": "number",
|
||||
"pattern": "^[A-Fa-f0-9]{64}$"
|
||||
}
|
||||
},
|
||||
"required": ["windows", "darwin", "linux"]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue