75 Commits

Author SHA1 Message Date
Thomas Gorny
2271c476e9 Remove spare backtick in 0.25.0-migration-guide.md 2021-08-25 11:44:59 +02:00
Jose Diaz-Gonzalez
e8d9982330 chore: drop unnecessary scheduler-docker-cleanup hook
All the logic was already called from docker-cleanup, so this just lengthened the cleanup time.
2021-08-08 01:57:44 -04:00
Jose Diaz-Gonzalez
a1c768b9b3 refactor: drop web installer in favor of setup via cli
This makes the installation a bit more secure by ensuring a user does not accidentally expose a way for unauthorized users to add new ssh keys to the system.

Additionally, this removes the extra HOSTNAME file to make the initial install process easier (that file was not modifiable by any dokku commands.

Closes #2247
2021-08-07 16:36:41 -04:00
Jose Diaz-Gonzalez
d5b14769dd feat: make heroku-20/focal the default stack for herokuish builds
Closes #4621
2021-08-05 23:43:07 -04:00
Jose Diaz-Gonzalez
30a15aaa7a fix: respect pre-deploy task image manipulation
This requires a bc-incompatible break in terms of what triggers the pre-deploy hook (dokku internals vs schedulers).
2021-08-05 04:17:21 -04:00
Jose Diaz-Gonzalez
9930c0493d docs: update docs for new features 2021-08-04 21:49:38 -04:00
Jose Diaz-Gonzalez
e95384f76b docs: add migration note for deprecation of ubuntu 16.04 2021-08-04 13:45:49 -04:00
Jose Diaz-Gonzalez
fee6773ef3 docs: add deprecation note to migration guide
Also add documentation for formations key.
2021-08-01 00:31:28 -04:00
Jose Diaz-Gonzalez
350a84d253 refactor: deprecate the --detach flag in favor of run:detached 2021-07-27 02:58:44 -04:00
Jose Diaz-Gonzalez
618158a0f3 refactor: deprecate the --rm and --rm-container flags
These flags are not commonly invoked by users, causing issues when cleaning up old containers. Rather than instruct users to use some random flag, just change the default to what is likely to be more common.
2021-07-27 02:58:19 -04:00
Jose Diaz-Gonzalez
da2b54823b feat: add ability to specify a custom Dockerfile for an app 2021-07-10 14:57:55 -04:00
Jose Diaz-Gonzalez
c50f39b4fa docs: more cleanup 2021-07-09 22:46:52 -04:00
Jose Diaz-Gonzalez
a108856a98 docs: more cleanup 2021-07-09 22:22:51 -04:00
Jose Diaz-Gonzalez
bd894ceaaf docs: add note to migration guide 2021-07-09 20:30:09 -04:00
Milan Vit
f186f6cc79 Rename 0.24.0 migration guide 2021-03-02 09:43:46 +09:00
Jose Diaz-Gonzalez
5c1a1baf08 feat: implement git:from-archive
The previous tar support lacked the ability to track changes between tarball deploys. Critically, it also failed to be handled correctly when there was _also_ a git deployment done on the app, resulting in odd deployment states depending on the angles of the moon and the sun in the sky.

Rather than try to "fix" this through some hokey mechanism, importing the tar file contents into the git repository is preferred, as then the user can refer to the repository for commit history.

Additionally, we add support for non-tar files (tar.gz and zip), enabling deployments from systems that do not create tar files, such as Github (their tarball url is a tar.gz file).

Finally, this deprecates the tar plugin, and sets it to be removed in the next minor release (in addition to the tags plugin).

Closes #3458
Closes #4207
2021-03-01 08:13:51 -05:00
Jose Diaz-Gonzalez
ade2cc8a7c Merge pull request #4450 from dokku/4296-git-from-image
Simplify docker image deploys via git:from-image
2021-03-01 02:34:09 -05:00
Jose Diaz-Gonzalez
0a31f6fe3a feat: add git:from-image support
The new command superscedes the previous tags plugin, and integrates docker image deployment with the general build process.

While `docker image load` is not supported, this otherwise completely handles all previous workflows supported by the `tags:deploy` command, while doing so in a much easier to use interface.

Closes #4296
2021-03-01 02:26:58 -05:00
Jose Diaz-Gonzalez
720d37dc5d docs: update links to builder documentation to avoid extra rewrite 2021-03-01 02:09:47 -05:00
Jose Diaz-Gonzalez
8c34cfe64e feat: implement builder plugin
This plugin will allow users to override the builder used for their application, enabling users to use custom builders if desired.
2021-02-28 17:25:03 -05:00
Jose Diaz-Gonzalez
1ec71cd509 refactor: switch detected builder so first one wins
Also rename internal cnb references to pack (where possible).
2021-02-28 16:19:41 -05:00
Jose Diaz-Gonzalez
6462dd891c chore: rename builder-cnb to builder-pack 2021-02-28 16:19:41 -05:00
Jose Diaz-Gonzalez
5612b0e7d2 Merge pull request #4419 from dokku/4392-proxy-parallelism
Add parallelism to certain proxy commands
2021-02-28 15:16:36 -05:00
Jose Diaz-Gonzalez
75b7ae94e1 docs: use updated links for documentation
Docs are now hosted on https://dokku.com, so we can avoid the extra rewrite.
2021-02-28 01:18:33 -05:00
Jose Diaz-Gonzalez
04a96125cc feat: add parallelism to certain proxy commands
Closes #4392
2021-02-19 23:48:04 -05:00
Jose Diaz-Gonzalez
065f5e5922 fix: do not inject max-size option when not using local or json-file log drivers
Closes #4376
2021-02-07 22:10:06 -05:00
Jose Diaz-Gonzalez
a96ad0c10c docs: add note about the dokku user cron being overwritten by Dokku
This is a BC-incompatible change introduced by 0.23.0.
2021-02-03 14:45:11 -05:00
Jose Diaz-Gonzalez
9306011f70 fix: do not retag images unnecessarily
This change minimizes the work needed to be done when tagging images. It edits the image manifest directly only when necessary, allowing restarts of an app to avoid having an extra layer.

This also additionally allows to deploy images with ONBUILD directives without running the ONBUILD directives.

Lastly, users building docker images that run Dokku will need to use a new sudoer wrapper for the `docker-image-labeler` binary to work correctly. A reference version has been placed in the `docker` skeleton directory.

Closes #3931
Refs #4226
2021-01-24 02:09:53 -05:00
Jose Diaz-Gonzalez
9137be814c refactor: remove need for internal dokku calls
Avoid internal dokku calls will avoid potentially expensive subprocesses - in particular, user-auth will be re-invoked, which can be expensive.
2021-01-23 14:27:16 -05:00
Jose Diaz-Gonzalez
bde77dbf78 feat: cleanup log output for failure case
Also mark DOKKU_DISABLE_ANSI_PREFIX_REMOVAL as deprecated (it will be removed in 0.23.0 and no prefixes will be removed at that time).
2020-11-28 03:32:11 -05:00
Jose Diaz-Gonzalez
af0d2e6f7a Merge pull request #4160 from nerg4l/go-logs-plugin
Rewrite logs plugin in Go
2020-11-26 04:58:51 -05:00
Jose Diaz-Gonzalez
97513dee91 fix: handle case where deploying app image does not exist
This happens if ps:scale is called before a deploy.

Also refactor GetDeployingAppImageName() to return an error as the second return parameter.
2020-11-23 00:11:00 -05:00
Jose Diaz-Gonzalez
fcebbd67df docs: correctly doc apps:report output
The `not deployed` message was removed in 0.20.0, and that state can be queried via `ps:report` now.

Closes #4134
2020-11-22 16:00:58 -05:00
Jose Diaz-Gonzalez
9dba48fc19 feat: deprecate logs:failed without an argument or flag 2020-11-22 15:01:36 -05:00
Jose Diaz-Gonzalez
815cd530c8 chore: remove functions 2020-11-21 20:57:33 -05:00
Jose Diaz-Gonzalez
ab1d15216c refactor: drop the last argument from procfile-get-command
No external plugin should need to know the internals of where processes are.
2020-11-21 20:57:33 -05:00
Jose Diaz-Gonzalez
e7ee7a1781 refactor: implement most of ps plugin in golang 2020-11-21 20:57:33 -05:00
Jose Diaz-Gonzalez
ff7429fd00 feat: upgrade go-procfile-util
We should ensure we are usinng a new version of it to enable better handling of errors in the Procfile.
2020-11-21 20:57:33 -05:00
Jose Diaz-Gonzalez
c8d932f768 fix: bump minimum docker version
This is necessary in order to properly support image filtering during 'dokku cleanup' calls.

Closes #4088
2020-09-10 02:00:57 -04:00
Jose Diaz-Gonzalez
0f514f300e feat: prohibit non-dns names for apps and process types
This is necessary for ensuring ssl certificates can be auto-retrieved for apps, and also easing integration into schedulers that use names and process types as part of DNS records.

As well, this fixes an issue where we may potentially have invalid DNS entries when adding apps to custom networks.

Closes #4102
Closes #4114
2020-09-09 20:07:50 -04:00
Jose Diaz-Gonzalez
eaf0d9af55 feat: create proxy:build-config command
Closes #4024
2020-06-29 20:51:12 -04:00
Jose Diaz-Gonzalez
a93cec63be feat: simplify flag parsing in config plugin
Commands should be written such that they take arguments as is.
2020-05-29 01:59:50 -04:00
Jose Diaz-Gonzalez
c22f78c913 feat: simplify flag parsing in proxy plugin
Commands should be written such that they take arguments as is.
2020-05-29 01:59:50 -04:00
Jose Diaz-Gonzalez
ce154aff09 feat: simplify flag parsing in apps plugin
Commands should be written such that they take arguments as is.
2020-05-29 01:59:50 -04:00
Jose Diaz-Gonzalez
46287cac0f feat: allow apps named tls
The `tls` name is no longer a reserved app name, and can be used by applications. This was previously a reserved app name due to it's use as a place for global SSL certificate files; Dokku has not supported global SSL certificates for many releases, and thus there is no need to reserve the name.
2020-05-08 23:58:06 -04:00
Jose Diaz-Gonzalez
89787173af fix: use correct function name for cmd-tar-in and update migration guide
Closes #3952
2020-04-25 15:49:03 -04:00
Jose Diaz-Gonzalez
a8a6d0595b refactor: deprecate git_deploy_branch in favor of plugn trigger 2020-04-18 18:21:46 -04:00
Jose Diaz-Gonzalez
38a13ecd39 feat: expose network listeners to nginx templates for all process types
This change allows users to specify a custom nginx.conf.sigil that can expose non-web process types to the outside world in addition to the web process type.

Closes #3258
2020-03-11 12:34:38 -04:00
Jose Diaz-Gonzalez
051a329873 feat: avoid deprecated functions 2020-03-10 18:19:31 -04:00
Jose Diaz-Gonzalez
b968ced6e9 refactor: first pass at rewriting apps plugin in go 2020-03-10 14:14:37 -04:00