5.8 KiB
title |
---|
Upgrade |
Release channels
Stable
abra upgrade
Release candidate
abra upgrade --rc
Migration guides
0.6.x-beta
-> 0.7.x-beta
ALERTA, ALERTA: this is currently only available via the release candidate channel, using
abra upgrade --rc
. There has been a lot of churn and we're being cautious about releasing this one. Please help us test! We're currently on0.7.0-rc2-beta
.
-
kadabra
, the app auto-updater is available for general alpha testing! See these docs for how to get started. Binaries can be found here. -
ALERTA, ALERTA, security related issue: all
$domain.env
env vars are now exposed to the deployment via theapp
service container. EachFOO=BAR
is exported within the context of the container. If you have any privately committed secrets in your.env
files, please migrate them to thesecrets: ...
configuration in the recipe. This change was made to facilitate tooling which can support auto-upgrading of apps in a deployment. -
abra
can no longer install Docker, initialise swarm mode and the proxy network. It will check if a Docker install exists and is in swarm mode or not and error out accordingly. We leave the provisioning to tools that are designed for that and reduce the command-line surface that we have to maintain going forward. -
abra server add <host> <args>
👉abra server add <host>
. We have finally removed the custom SSH handling code and now solely rely on invoke/usr/bin/ssh
directly and reading from the~/.ssh/config
. The<host>
argument should correspond to aHost <host>
entry in your~/.ssh/config
or in anInclude <file>
statement (hosts are retrieved viassh -G <host>
). This means "how doesabra
interact with SSH is 1) do you have an~/.ssh/config
entry for<host>
2) can youssh <host>
successfully? 3) there is no 3. It's an easier mental model and also the wayabra-bash
works, hence, less weird obscure errors.<host>
being public domain names is still required. -
abra
no longer tries to do the TOFU host key verification prompt. We follow the praxis of the Docker cli itself and just give up when host keys are not validated. We leave it to folks to ssh in and verify themselves. -
On the way to
kadabra
, several changes regarding labelling deployments have been merged in this release. This will allow tooling to understand a deployment without having the context of a~/.abra/...
configuration. This will pave the way for server-side tooling, likekadabra
which can help operators with different kinds of maintenance tasks. -
Welcome
abra recipe fetch
, which helps retrieve a recipe repository to your local work-station. -
Also say hello to
abra app services <domain>
, which lists the in-deployment service names and corresponding image, e.g.foo_example_com
. -
Digests have been removed from the catalogue generation.
-
Backup files generated by
abra
have a much more human-friendly format. -
Linting for domains is disabled when no
DOMAIN=...
is discovered in the$odmain.env
file.
0.5.x-beta
-> 0.6.x-beta
-
Using
{{ .Domain }}
in recipe.envrc.sample
files went away because it was portable enough. We revert to replacing e.ggitea.example.com
with the domain. See8fad34e
for more. -
If your
abra.sh
scripts depend on/bin/sh
and/bin/bash
is available in the container then/bin/bash
will be used from now on./bin/sh
is only now used if/bin/bash
is not available. See7f745ff
for more.
v0.4.x
-> v0.5.x
- The only breaking change was making
abra
understand that the JSON dump for the recipes listing lives on recipes.coopcloud.tech/recipes.json instead of recipes.coopcloud.tech.
v0.3.x
-> v0.4.x
Make sure to back up your ~/.abra/servers
configurations first for safety.
-
Please run
mv ~/.abra/apps ~/.abra/recipes
. -
"app name" as a concept went away,
abra
now uses the domain name of an app as the identifier. However, we don't expect to see breaking behaviour if you have.env
files like~/.abra/servers/foo.com/mycoolapp.env
and you still want to runabra app ps mycoolapp
.abra
still reads the filename to figure out the identifier. When runningabra app new <recipe>
,abra
will now take the domain name as the name of the.env
file. -
abra
has a new SSH implementation which enforces SSH host key checking. You may run into connection issues as a result of this code churn, please see this entry for help navigating a fix. -
CLI flag/args handling has been made more flexible. We're working within the constraints of an upstream library issue but have hopefully made it easier to mange passing flags to commands with
abra
. See this troubleshooting entry for the full review. -
A number of short style flags have been re-mapped and/or added. This is again related to an issue with the upstream CLI library which sometimes understands short style flags as long style flags. E.g.
--ch
instead of-ch
for--chaos
. As a concrete example,--ch
is now-C
onabra app deploy
. -
abra app backup
&abra app restore
are ready for alpha-testing! See this entry and that entry for more. -
abra server add --traefik
went away, it was too unreliable & hard to maintain.