Bump psu version to 1.2.0

Update psu, CHANGELOG and README
This commit is contained in:
Tortue Torche 2021-09-14 11:24:46 +02:00
parent e0511463ca
commit f9530c46fa
4 changed files with 40 additions and 32 deletions

View File

@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased] ## [Unreleased]
## [1.2.0] - 2021-09-14
### Added ### Added
- Add tests for `actions`, `containers` and `services` actions - Add tests for `actions`, `containers` and `services` actions
- Test <abbr title="Portainer Stack Utils">PSU</abbr> with Portainer [1.24.2](https://app.swaggerhub.com/apis/deviantony/Portainer/1.24.1) API - Test <abbr title="Portainer Stack Utils">PSU</abbr> with Portainer [1.24.2](https://app.swaggerhub.com/apis/deviantony/Portainer/1.24.1) API
@ -149,7 +151,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Debug mode - Debug mode
- Strict mode - Strict mode
[Unreleased]: https://gitlab.com/psuapp/psu/compare/v1.2.0-beta.1...1-2-next [Unreleased]: https://gitlab.com/psuapp/psu/compare/v1.2.0...1-2-stable
[1.2.0]: https://gitlab.com/psuapp/psu/-/tags/v1.2.0
[1.2.0-beta.1]: https://gitlab.com/psuapp/psu/-/tags/v1.2.0-beta.1 [1.2.0-beta.1]: https://gitlab.com/psuapp/psu/-/tags/v1.2.0-beta.1
[1.2.0-alpha]: https://gitlab.com/psuapp/psu/-/tags/v1.2.0-alpha [1.2.0-alpha]: https://gitlab.com/psuapp/psu/-/tags/v1.2.0-alpha
[1.1.0]: https://gitlab.com/psuapp/psu/-/tags/v1.1.0 [1.1.0]: https://gitlab.com/psuapp/psu/-/tags/v1.1.0

View File

@ -2,8 +2,7 @@
<div class="docsify-hidden"> <div class="docsify-hidden">
[![Docker Pulls](https://img.shields.io/docker/pulls/psuapp/psu.svg)](https://hub.docker.com/r/psuapp/psu/) [![Docker Pulls](https://img.shields.io/docker/pulls/psuapp/psu.svg)](https://hub.docker.com/r/psuapp/psu/)
[![Microbadger](https://images.microbadger.com/badges/image/psuapp/psu.svg)](http://microbadger.com/images/psuapp/psu "Image size") [![pipeline status](https://gitlab.com/psuapp/psu/badges/1-2-stable/pipeline.svg)](https://gitlab.com/psuapp/psu/commits/1-2-stable)
[![pipeline status](https://gitlab.com/psuapp/psu/badges/1-2-next/pipeline.svg)](https://gitlab.com/psuapp/psu/commits/1-2-next)
Bash script to deploy/update/remove stacks in a [Portainer](https://portainer.io/) instance from a [docker-compose](https://docs.docker.com/compose) [yaml file](https://docs.docker.com/compose/compose-file). Bash script to deploy/update/remove stacks in a [Portainer](https://portainer.io/) instance from a [docker-compose](https://docs.docker.com/compose) [yaml file](https://docs.docker.com/compose/compose-file).
@ -71,39 +70,45 @@ For detailed instructions, see [How to use](#how-to-use) section.
Published Docker images are [tagged](https://hub.docker.com/r/psuapp/psu/tags) matching [GitLab tags](https://gitlab.com/psuapp/psu/-/tags): Published Docker images are [tagged](https://hub.docker.com/r/psuapp/psu/tags) matching [GitLab tags](https://gitlab.com/psuapp/psu/-/tags):
<!-- - `dev` -> [`dev`](https://gitlab.com/psuapp/psu/-/tags/dev) --> <!-- - `dev` -> [`dev`](https://gitlab.com/psuapp/psu/-/tags/dev) -->
- `1.2.0-beta.1` -> [`v1.2.0-beta.1`](https://gitlab.com/psuapp/psu/-/tags/v1.2.0-beta.1)
- `1.2.0-alpha` -> [`v1.2.0-alpha`](https://gitlab.com/psuapp/psu/-/tags/v1.2.0-alpha) - `1`, `1.2`, `1.2.0` -> [`v1.2.0`](https://gitlab.com/psuapp/psu/-/tags/v1.2.0)
- `1`, `1.1`, `1.1.0` -> [`v1.1.0`](https://gitlab.com/psuapp/psu/-/tags/v1.1.0) - `1.2.0-beta.1` -> [`v1.2.0-beta.1`](https://gitlab.com/psuapp/psu/-/tags/v1.2.0-beta.1)
- `1.1.0-alpha` -> [`v1.1.0-alpha`](https://gitlab.com/psuapp/psu/-/tags/v1.1.0-alpha) - `1.2.0-alpha` -> [`v1.2.0-alpha`](https://gitlab.com/psuapp/psu/-/tags/v1.2.0-alpha)
- `1.0`, `1.0.7` -> [`v1.0.7`](https://gitlab.com/psuapp/psu/-/tags/v1.0.7) - `1.1`, `1.1.0` -> [`v1.1.0`](https://gitlab.com/psuapp/psu/-/tags/v1.1.0)
- `1.0.6` -> [`v1.0.6`](https://gitlab.com/psuapp/psu/-/tags/v1.0.6) - `1.1.0-alpha` -> [`v1.1.0-alpha`](https://gitlab.com/psuapp/psu/-/tags/v1.1.0-alpha)
- `1.0.5` -> [`v1.0.5`](https://gitlab.com/psuapp/psu/-/tags/v1.0.5) - `1.0`, `1.0.7` -> [`v1.0.7`](https://gitlab.com/psuapp/psu/-/tags/v1.0.7)
- `1.0.4` -> [`v1.0.4`](https://gitlab.com/psuapp/psu/-/tags/v1.0.4) - `1.0.6` -> [`v1.0.6`](https://gitlab.com/psuapp/psu/-/tags/v1.0.6)
- `1.0.3` -> [`v1.0.3`](https://gitlab.com/psuapp/psu/-/tags/v1.0.3) - `1.0.5` -> [`v1.0.5`](https://gitlab.com/psuapp/psu/-/tags/v1.0.5)
- `1.0.2` -> [`v1.0.2`](https://gitlab.com/psuapp/psu/-/tags/v1.0.2) - `1.0.4` -> [`v1.0.4`](https://gitlab.com/psuapp/psu/-/tags/v1.0.4)
- `1.0.1` -> [`v1.0.1`](https://gitlab.com/psuapp/psu/-/tags/v1.0.1) - `1.0.3` -> [`v1.0.3`](https://gitlab.com/psuapp/psu/-/tags/v1.0.3)
- `1.0.0` -> [`v1.0.0`](https://gitlab.com/psuapp/psu/-/tags/v1.0.0) - `1.0.2` -> [`v1.0.2`](https://gitlab.com/psuapp/psu/-/tags/v1.0.2)
- `0.1.2` -> [`v0.1.2`](https://gitlab.com/psuapp/psu/-/tags/v0.1.2) - `1.0.1` -> [`v1.0.1`](https://gitlab.com/psuapp/psu/-/tags/v1.0.1)
- `0.1.1` -> [`v0.1.1`](https://gitlab.com/psuapp/psu/-/tags/v0.1.1) - `1.0.0` -> [`v1.0.0`](https://gitlab.com/psuapp/psu/-/tags/v1.0.0)
- `0.1.0` -> [`v0.1.0`](https://gitlab.com/psuapp/psu/-/tags/v0.1.0) - `0.1.2` -> [`v0.1.2`](https://gitlab.com/psuapp/psu/-/tags/v0.1.2)
- `0.1.1` -> [`v0.1.1`](https://gitlab.com/psuapp/psu/-/tags/v0.1.1)
- `0.1.0` -> [`v0.1.0`](https://gitlab.com/psuapp/psu/-/tags/v0.1.0)
##### Variants ##### Variants
The `core` variant doesn't include `docker-compose`, so it's a bit smaller. The `core` variant doesn't include `docker-compose`, so it's a bit smaller.
But you can't lint Docker compose/stack file before deploying a stack. But you can't lint Docker compose/stack file before deploying a stack.
<!-- - `dev-core` -> [`dev`](https://gitlab.com/psuapp/psu/-/tags/dev) --> <!-- - `dev-core` -> [`dev`](https://gitlab.com/psuapp/psu/-/tags/dev) -->
- `1-core`, `1.1-core`, `1.1.0-core` -> [`v1.1.0`](https://gitlab.com/psuapp/psu/-/tags/v1.1.0)
- `1.0-core`, `1.0.7-core` -> [`v1.0.7`](https://gitlab.com/psuapp/psu/-/tags/v1.0.7) - `1-core`, `1.2-core`, `1.2.0-core` -> [`v1.2.0`](https://gitlab.com/psuapp/psu/-/tags/v1.2.0)
- `1.1-core`, `1.1.0-core` -> [`v1.1.0`](https://gitlab.com/psuapp/psu/-/tags/v1.1.0)
- `1.0-core`, `1.0.7-core` -> [`v1.0.7`](https://gitlab.com/psuapp/psu/-/tags/v1.0.7)
The `debian` and `debian-core` variants use [Debian](https://www.debian.org) instead of [Alpine](https://alpinelinux.org/) as base image for `psu`. The `debian` and `debian-core` variants use [Debian](https://www.debian.org) instead of [Alpine](https://alpinelinux.org/) as base image for `psu`.
<!-- - `dev-debian` -> [`dev`](https://gitlab.com/psuapp/psu/-/tags/dev) <!-- - `dev-debian` -> [`dev`](https://gitlab.com/psuapp/psu/-/tags/dev)
- `dev-debian-core` -> [`dev`](https://gitlab.com/psuapp/psu/-/tags/dev) --> - `dev-debian-core` -> [`dev`](https://gitlab.com/psuapp/psu/-/tags/dev) -->
- `1-debian`, `1.0-debian`, `1.1.0-debian` -> [`v1.1.0`](https://gitlab.com/psuapp/psu/-/tags/v1.1.0) - `1-debian`, `1.2-debian`, `1.2.0-debian` -> [`v1.2.0`](https://gitlab.com/psuapp/psu/-/tags/v1.2.0)
- `1-debian-core`, `1.0-debian-core`, `1.1.0-debian-core` -> [`v1.1.0`](https://gitlab.com/psuapp/psu/-/tags/v1.1.0) - `1-debian-core`, `1.2-debian-core`, `1.2.0-debian-core` -> [`v1.2.0`](https://gitlab.com/psuapp/psu/-/tags/v1.2.0)
- `1.0-debian`, `1.0.7-debian` -> [`v1.0.7`](https://gitlab.com/psuapp/psu/-/tags/v1.0.7) - `1.1-debian`, `1.1.0-debian` -> [`v1.1.0`](https://gitlab.com/psuapp/psu/-/tags/v1.1.0)
- `1.0-debian-core`, `1.0.7-debian-core` -> [`v1.0.7`](https://gitlab.com/psuapp/psu/-/tags/v1.0.7) - `1.1-debian-core`, `1.1.0-debian-core` -> [`v1.1.0`](https://gitlab.com/psuapp/psu/-/tags/v1.1.0)
- `1.0-debian`, `1.0.7-debian` -> [`v1.0.7`](https://gitlab.com/psuapp/psu/-/tags/v1.0.7)
- `1.0-debian-core`, `1.0.7-debian-core` -> [`v1.0.7`](https://gitlab.com/psuapp/psu/-/tags/v1.0.7)
#### Testing/debugging: #### Testing/debugging:
@ -112,7 +117,7 @@ For testing/debugging, you can use this Docker image in interactive mode, to run
docker run -v $(pwd)/docker-compose.yml:/docker-compose.yml -it --rm --entrypoint bash psuapp/psu:1.2 docker run -v $(pwd)/docker-compose.yml:/docker-compose.yml -it --rm --entrypoint bash psuapp/psu:1.2
# Run any commands here! E.g. # Run any commands here! E.g.
$ psu --version $ psu --version
Portainer Stack Utils, version 1.2.0-beta.1 Portainer Stack Utils, version 1.2.0
License GPLv3: GNU GPL version 3 License GPLv3: GNU GPL version 3
``` ```
@ -221,7 +226,7 @@ docker run -v $(pwd)/docker-compose.yml:/docker-compose.yml -v $(pwd)/.env:/.env
## Documentation ## Documentation
<div class="docsify-hidden"> <div class="docsify-hidden">
For advanced usage, see the full <a href="https://psuapp.gitlab.io/psu/1-2-next"><abbr title="Portainer Stack Utils">PSU</abbr> documentation</a>. For advanced usage, see the full <a href="https://psuapp.gitlab.io/psu/1-2-stable"><abbr title="Portainer Stack Utils">PSU</abbr> documentation</a>.
</div> </div>
For detailed instructions, see the [CLI Commands](docs/README.md) documentation. For detailed instructions, see the [CLI Commands](docs/README.md) documentation.

View File

@ -729,5 +729,5 @@ The `psu` definition of a job is a Swarm [service](https://docs.docker.com/engin
Using a job is useful when you want to have a service who run a script (e.g. database migration). Using a job is useful when you want to have a service who run a script (e.g. database migration).
And shutdown this service when its script is successfully executed. And shutdown this service when its script is successfully executed.
See the service named `job` in the [`docker-stack-web-app.yml`](https://gitlab.com/psuapp/psu/tree/v1.1.0/tests/dockerfiles/docker-stack-web-app.yml) file, for a real use case. See the service named `job` in the [`docker-stack-web-app.yml`](https://gitlab.com/psuapp/psu/tree/v1.2.0/tests/dockerfiles/docker-stack-web-app.yml) file, for a real use case.
It has both a container's label `job-name` and a restart policy set to `none`. It has both a container's label `job-name` and a restart policy set to `none`.

2
psu Normal file → Executable file
View File

@ -27,7 +27,7 @@ set -e
# None # # None #
############################ ############################
main() { main() {
VERSION="1.2.0-beta.1" VERSION="1.2.0"
OPTIONS_TABLE=( OPTIONS_TABLE=(
# option_key;flag_text;option_text;description # option_key;flag_text;option_text;description