You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
**This guide is intended for scaleway-cli maintainers. If you are not a
2
-
maintainer, you probably want to check out the [documentation](README.md)
3
-
instead.**
1
+
**This guide is intended for scaleway-cli maintainers. If you are not a maintainer, you probably want to check out the [documentation](README.md) instead.**
4
2
5
3
## Package release HOWTO
6
4
7
-
Ready to deploy a new version to users? Let's make a checklist of what you need
8
-
to do.
5
+
Ready to deploy a new version to users? Let's make a checklist of what you need to do.
9
6
10
-
For the sake of the example, we assume you want to release the version `42.8`
11
-
and the previous version was `42.7`.
7
+
For the sake of the example, we assume you want to release the version `42.8` and the previous version was `42.7`.
12
8
13
9
### Commit release
14
10
15
11
* Edit the Changelog at the bottom of [README.md](README.md).
16
12
17
13
- Header: change the version from *v42.7* version) to *v42.8*
18
14
- Header: replace "unreleased" with the current date
19
-
- Content: read commits history, and fill the changelog if it's not already
20
-
done
21
-
- In the "To install a release" section, grep *v42.7* and replace with
22
-
*v42.8*
23
-
- Footer: edit the "View full commit list" link from */compare/v42.7..master*
24
-
to */compare/v42.7..v42.8*
25
-
26
-
* Edit [pkg/scwversion/version.go](pkg/scwversion/version.go) and update the
27
-
*VERSION* to *v42.8*.
15
+
- Content: read commits history, and fill the changelog if it's not already done
16
+
- In the "To install a release" section, grep *v42.7* and replace with *v42.8*
17
+
- Footer: edit the "View full commit list" link from */compare/v42.7..master* to */compare/v42.7..v42.8*
18
+
19
+
* Edit [pkg/scwversion/version.go](pkg/scwversion/version.go) and update the *VERSION* to *v42.8*.
28
20
* Make the commit release: `git commit -a -m 'Release v42.8'`.
29
21
* Tag the commit: `git tag v42.8`.
30
22
* Push: `git push && git push --tags`.
31
23
32
24
### Make a github release
33
25
34
-
*[Draft a new release](https://github.com/scaleway/scaleway-cli/releases) on
35
-
Github.
36
-
* Build cross-compiled files: `make prepare-release-dist`. *This step relies on
37
-
the go compiler, which is able to cross compile go projects. If you hack on
38
-
the scaleway-cli in a Docker container, you can run this step from your
**The VERSION should not include the leading "v"**. *This step runs Docker
42
-
containers. If you are hacking on scaleway-cli with Docker, you need to build
43
-
the Debian packages from the Docker host, and not from your container.*
26
+
*[Draft a new release](https://github.com/scaleway/scaleway-cli/releases) on Github.
27
+
* Build cross-compiled files: `make prepare-release-dist`. *This step relies on the go compiler, which is able to cross compile go projects. If you hack on the scaleway-cli in a Docker container, you can run this step from your container.*
28
+
* Build debian packages: `make prepare-release-debian-packages VERSION=42.8`. **The VERSION should not include the leading "v"**. *This step runs Docker containers. If you are hacking on scaleway-cli with Docker, you need to build the Debian packages from the Docker host, and not from your container.*
44
29
* Upload the Debian packages generated in `dist/latest`.
45
30
* Publish the release.
46
31
47
32
### Docker image
48
33
49
-
* Call `make prepare-release-docker-image VERSION=42.8`. **The VERSION should
50
-
not include the leading "v"**. *This step runs Docker containers. If you are
51
-
hacking on scaleway-cli with Docker, run this step from the Docker host and
52
-
not from your container.*
34
+
* Call `make prepare-release-docker-image VERSION=42.8`. **The VERSION should not include the leading "v"**. *This step runs Docker containers. If you are hacking on scaleway-cli with Docker, run this step from the Docker host and not from your container.*
53
35
* Push the local Docker image to the Docker hub: `docker push scaleway/cli`.
54
36
55
37
### Homebrew (OSX) package
56
38
57
-
* Get the released archive's sha256sum: `curl -sL
58
-
https://github.com/scaleway/scaleway-cli/archive/v42.8.tar.gz | shasum -a
59
-
256`.
39
+
* Get the released archive's sha256sum: `curl -sL https://github.com/scaleway/scaleway-cli/archive/v42.8.tar.gz | shasum -a 256`.
60
40
* Clone the homebrew Github repository: `git clone [email protected]:Homebrew/homebrew-core.git` to you personal account.
61
-
* Edit *Formula/scw.rb* and fix the *URL***AND** the *sha256***on top** of
62
-
the file. You don't need to edit the SHAsums below. They will be updated
63
-
automatically by Homebrew maintainers when the PR will be merged.
64
-
* Ensure the formula works: `brew install --build-from-source Formula/scw.rb`.
65
-
You will probably need to uninstall your current installation of scaleway-cli
66
-
before installing the formula.
67
-
* Commit with `git commit -a -m 'scw 42.8'` and make a pull request from your
68
-
repository to [homebrew](https://github.com/Homebrew/homebrew-core) to make
69
-
your new version official.
41
+
* Edit *Formula/scw.rb* and fix the *URL***AND** the *sha256***on top** of the file. You don't need to edit the SHAsums below. They will be updated automatically by Homebrew maintainers when the PR will be merged.
42
+
* Ensure the formula works: `brew install --build-from-source Formula/scw.rb`. You will probably need to uninstall your current installation of scaleway-cli before installing the formula.
43
+
* Commit with `git commit -a -m 'scw 42.8'` and make a pull request from your repository to [homebrew](https://github.com/Homebrew/homebrew-core) to make your new version official.
70
44
71
45
### Archlinux package
72
46
73
-
**This section is incomplete. Edit this part if you have additional
74
-
informations.**
47
+
**This section is incomplete. Edit this part if you have additional informations.**
75
48
76
-
There is a Archlinux community package (aka. "AUR" — Archlinux User Repository)
77
-
for scaleway-cli: https://aur.archlinux.org/packages/scaleway-cli/ maintained
78
-
by "moscar". We should probably ping him when we make a new release.
49
+
There is a Archlinux community package (aka. "AUR" — Archlinux User Repository) for scaleway-cli: https://aur.archlinux.org/packages/scaleway-cli/ maintained by "moscar". We should probably ping him when we make a new release.
79
50
80
51
### Update VERSION file
81
52
82
-
From time to time, scaleway-cli makes a HTTP query to
83
-
https://fr-1.storage.online.net/scaleway/scaleway-cli/VERSION to check if it is
84
-
at the latest version available. This file needs to be updated.
53
+
From time to time, scaleway-cli makes a HTTP query to https://fr-1.storage.online.net/scaleway/scaleway-cli/VERSION to check if it is at the latest version available. This file needs to be updated.
85
54
86
-
**PLEASE WAIT UNTIL THE HOMEBREW PULL REQUEST IS ACCEPTED BEFORE UPDATING THE
87
-
VERSION FILE.**
55
+
**PLEASE WAIT UNTIL THE HOMEBREW PULL REQUEST IS ACCEPTED BEFORE UPDATING THE VERSION FILE.**
0 commit comments