From 3db3bfb150decd89ea276f8ef50f952c9260a049 Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Sun, 29 May 2022 16:41:42 -0400 Subject: [PATCH 01/35] feat: use pack as default builder for arm64 servers Herokuish is not and will never be supported on arm servers, so attempting to use it will only fail builds. Also fail when trying to default to herokuish on armhf instances. We can't default to pack as it's just not built for armhf/arm (only arm64). Closes #5113 --- plugins/git/functions | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/plugins/git/functions b/plugins/git/functions index c10bc72d0..55fade82f 100755 --- a/plugins/git/functions +++ b/plugins/git/functions @@ -58,7 +58,19 @@ git_trigger_build() { plugn trigger post-extract "$APP" "$TMP_WORK_DIR" "$REV" BUILDER="$(plugn trigger builder-detect "$APP" "$TMP_WORK_DIR" | head -n1 || true)" - [[ -z "$BUILDER" ]] && BUILDER="herokuish" + if [[ -z "$BUILDER" ]]; then + BUILDER="herokuish" + local ARCHITECTURE="$(dpkg --print-architecture 2>/dev/null || true)" + if [[ "$ARCHITECTURE" == "arm64" ]]; then + dokku_log_warn "Builder herokuish not supported on $ARCHITECTURE servers." + dokku_log_warn "Switching to pack builder." + BUILDER="pack" + elif [[ "$ARCHITECTURE" == "armhf" ]]; then + dokku_log_warn "Builder herokuish not supported on $ARCHITECTURE servers." + dokku_log_warn "Consider using a Dockerfile to build your app." + return 1 + fi + fi plugn trigger pre-receive-app "$APP" "$BUILDER" "$TMP_WORK_DIR" "$REV" dokku_receive "$APP" "$BUILDER" "$TMP_WORK_DIR" From 24fdc0a778ade0361f74866b92ef9527ad271d11 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 May 2022 13:14:40 +0000 Subject: [PATCH 02/35] chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 217 to 218. - [Release notes](https://github.com/heroku/heroku-buildpack-php/releases) - [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md) - [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v217...v218) --- updated-dependencies: - dependency-name: heroku/heroku-buildpack-php dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- tests/apps/php/composer.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/apps/php/composer.lock b/tests/apps/php/composer.lock index 506a0e0e0..1e6aa930d 100644 --- a/tests/apps/php/composer.lock +++ b/tests/apps/php/composer.lock @@ -1000,16 +1000,16 @@ "packages-dev": [ { "name": "heroku/heroku-buildpack-php", - "version": "v217", + "version": "v218", "source": { "type": "git", "url": "https://github.com/heroku/heroku-buildpack-php.git", - "reference": "5e95230f28b8d2375b27cc54cf3d78ef885f5b78" + "reference": "63cb8053b10cd057e29348ad6c5f95a3f3ddaeaa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/heroku/heroku-buildpack-php/zipball/5e95230f28b8d2375b27cc54cf3d78ef885f5b78", - "reference": "5e95230f28b8d2375b27cc54cf3d78ef885f5b78", + "url": "https://api.github.com/repos/heroku/heroku-buildpack-php/zipball/63cb8053b10cd057e29348ad6c5f95a3f3ddaeaa", + "reference": "63cb8053b10cd057e29348ad6c5f95a3f3ddaeaa", "shasum": "" }, "bin": [ @@ -1037,7 +1037,7 @@ "nginx", "php" ], - "time": "2022-05-18T19:16:45+00:00" + "time": "2022-05-27T21:41:52+00:00" } ], "aliases": [], From 5a93e875a3839558f15e841e5db20e12791287fa Mon Sep 17 00:00:00 2001 From: Axel Gustav Date: Tue, 31 May 2022 21:51:05 -0700 Subject: [PATCH 03/35] Added dokku-litestream I recently created a plugin for SQLite replication via Litestream to S3. Been using it myself in production for a couple of weeks and was able to successfully restore a backed up DB so I guess it's ready for people to try and be added to this list. --- docs/community/plugins.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/docs/community/plugins.md b/docs/community/plugins.md index aa3301d05..65f7a6bb5 100644 --- a/docs/community/plugins.md +++ b/docs/community/plugins.md @@ -102,6 +102,7 @@ The following plugins are available and provided by Dokku maintainers. Please f | [Haproxy tcp load balancer](https://github.com/256dpi/dokku-haproxy) | [256dpi][] | 0.4.0+ | | [Hostname](https://github.com/michaelshobbs/dokku-hostname) | [michaelshobbs][] | 0.4.0+ | | [HTTP Auth Secure Apps](https://github.com/matto1990/dokku-secure-apps) | [matto1990][] | 0.4.0+ | +| [Litestream](https://github.com/AxelTheGerman/dokku-litestream)2 | [AxelTheGerman][] | 0.27.0+ | | [Monit (Health Checks)](https://github.com/mbreit/dokku-monit) | [mbreit][] | 0.8.0+ | | [Nuke Containers](https://github.com/josegonzalez/dokku-nuke) | [josegonzalez][] | 0.4.0+ | | [Open App Ports](https://github.com/josegonzalez/dokku-ports) | [josegonzalez][] | 0.3.x | @@ -116,13 +117,15 @@ The following plugins are available and provided by Dokku maintainers. Please f 1 Extends app.json support to include creating volumes and creating / linking databases on push -2 Adds the possibility to add SSH deployment keys to receive private hosted packages +2 Adds SQLite replication to external object storage via [Litestream](https://litestream.io) -3 Adds the ability to add custom hosts to the containers known_hosts file to be able to ssh them easily (useful with deployment keys) +3 Adds the possibility to add SSH deployment keys to receive private hosted packages -4 Adds the ability to sync an application repo with a remote GitHub repo (useful for automated rebuilds without needing a git push from an external system +4 Adds the ability to add custom hosts to the containers known_hosts file to be able to ssh them easily (useful with deployment keys) -5 Adds the ability to invoke a post-deploy webhook with the IP, port and app name, all with a single config:set). +5 Adds the ability to sync an application repo with a remote GitHub repo (useful for automated rebuilds without needing a git push from an external system + +6 Adds the ability to invoke a post-deploy webhook with the IP, port and app name, all with a single config:set). ### Other Plugins @@ -238,6 +241,7 @@ The following plugins are no longer maintained by their developers. [aomitayo]: https://github.com/aomitayo [apmorton]: https://github.com/apmorton [artofrawr]: https://github.com/artofrawr +[AxelTheGerman]: https://github.com/AxelTheGerman [badsyntax]: https://github.com/badsyntax [basgys]: https://github.com/basgys [benjamin-dobell]: https://github.com/benjamin-dobell From 4fc23a8ffbc2aef4aed7c976c6edf39a5968c5e2 Mon Sep 17 00:00:00 2001 From: asokoloski-m <61239068+asokoloski-m@users.noreply.github.com> Date: Wed, 8 Jun 2022 09:08:31 -0500 Subject: [PATCH 04/35] Fix incorrect command for app storage status --- docs/deployment/builders/dockerfiles.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/deployment/builders/dockerfiles.md b/docs/deployment/builders/dockerfiles.md index 841e79e2a..66a6adeb8 100644 --- a/docs/deployment/builders/dockerfiles.md +++ b/docs/deployment/builders/dockerfiles.md @@ -62,7 +62,7 @@ dokku builder-dockerfile:set --global dockerfile-path You can get a report about the app's storage status using the `builder-dockerfile:report` command: ```shell -dokku app-json:report +dokku builder-dockerfile:report ``` ``` From 321b94db19241dc59f9a03393b4584047a5a8adf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 9 Jun 2022 13:18:32 +0000 Subject: [PATCH 05/35] chore(deps): bump monolog/monolog in /tests/apps/php Bumps [monolog/monolog](https://github.com/Seldaek/monolog) from 1.27.0 to 1.27.1. - [Release notes](https://github.com/Seldaek/monolog/releases) - [Changelog](https://github.com/Seldaek/monolog/blob/1.27.1/CHANGELOG.md) - [Commits](https://github.com/Seldaek/monolog/compare/1.27.0...1.27.1) --- updated-dependencies: - dependency-name: monolog/monolog dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- tests/apps/php/composer.lock | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/tests/apps/php/composer.lock b/tests/apps/php/composer.lock index 1e6aa930d..1424818da 100644 --- a/tests/apps/php/composer.lock +++ b/tests/apps/php/composer.lock @@ -8,16 +8,16 @@ "packages": [ { "name": "monolog/monolog", - "version": "1.27.0", + "version": "1.27.1", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "52ebd235c1f7e0d5e1b16464b695a28335f8e44a" + "reference": "904713c5929655dc9b97288b69cfeedad610c9a1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/52ebd235c1f7e0d5e1b16464b695a28335f8e44a", - "reference": "52ebd235c1f7e0d5e1b16464b695a28335f8e44a", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/904713c5929655dc9b97288b69cfeedad610c9a1", + "reference": "904713c5929655dc9b97288b69cfeedad610c9a1", "shasum": "" }, "require": { @@ -86,7 +86,7 @@ "type": "tidelift" } ], - "time": "2022-03-13T20:29:46+00:00" + "time": "2022-06-09T08:53:42+00:00" }, { "name": "paragonie/random_compat", @@ -427,6 +427,7 @@ ], "description": "Symfony Debug Component", "homepage": "https://symfony.com", + "abandoned": "symfony/error-handler", "time": "2019-10-24T15:33:53+00:00" }, { From ab658ec2747bacecb286ea5aa5212dfc8894f74b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 10 Jun 2022 13:11:39 +0000 Subject: [PATCH 06/35] chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 218 to 219. - [Release notes](https://github.com/heroku/heroku-buildpack-php/releases) - [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md) - [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v218...v219) --- updated-dependencies: - dependency-name: heroku/heroku-buildpack-php dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- tests/apps/php/composer.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/apps/php/composer.lock b/tests/apps/php/composer.lock index 1424818da..f75e52848 100644 --- a/tests/apps/php/composer.lock +++ b/tests/apps/php/composer.lock @@ -1001,16 +1001,16 @@ "packages-dev": [ { "name": "heroku/heroku-buildpack-php", - "version": "v218", + "version": "v219", "source": { "type": "git", "url": "https://github.com/heroku/heroku-buildpack-php.git", - "reference": "63cb8053b10cd057e29348ad6c5f95a3f3ddaeaa" + "reference": "9acc2e638f02b7249b51225acb03fb7a7259f447" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/heroku/heroku-buildpack-php/zipball/63cb8053b10cd057e29348ad6c5f95a3f3ddaeaa", - "reference": "63cb8053b10cd057e29348ad6c5f95a3f3ddaeaa", + "url": "https://api.github.com/repos/heroku/heroku-buildpack-php/zipball/9acc2e638f02b7249b51225acb03fb7a7259f447", + "reference": "9acc2e638f02b7249b51225acb03fb7a7259f447", "shasum": "" }, "bin": [ @@ -1038,7 +1038,7 @@ "nginx", "php" ], - "time": "2022-05-27T21:41:52+00:00" + "time": "2022-06-09T21:04:15+00:00" } ], "aliases": [], From 211f0ef049eca243c15dba39c1295231fa7280a6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Jun 2022 13:08:59 +0000 Subject: [PATCH 07/35] chore(deps): bump jetty-servlet in /tests/apps/java Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.9 to 11.0.10. - [Release notes](https://github.com/eclipse/jetty.project/releases) - [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.9...jetty-11.0.10) --- updated-dependencies: - dependency-name: org.eclipse.jetty:jetty-servlet dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- tests/apps/java/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/apps/java/pom.xml b/tests/apps/java/pom.xml index f72e96b82..efd2367c6 100644 --- a/tests/apps/java/pom.xml +++ b/tests/apps/java/pom.xml @@ -10,7 +10,7 @@ org.eclipse.jetty jetty-servlet - 11.0.9 + 11.0.10 javax.servlet From e665243ae182d7c1ce092078ec13a7a52e5aa6f2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 23 Jun 2022 15:11:04 +0000 Subject: [PATCH 08/35] chore(deps): bump jetty-servlet in /tests/apps/java Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.10 to 11.0.11. - [Release notes](https://github.com/eclipse/jetty.project/releases) - [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.10...jetty-11.0.11) --- updated-dependencies: - dependency-name: org.eclipse.jetty:jetty-servlet dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- tests/apps/java/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/apps/java/pom.xml b/tests/apps/java/pom.xml index efd2367c6..108068abc 100644 --- a/tests/apps/java/pom.xml +++ b/tests/apps/java/pom.xml @@ -10,7 +10,7 @@ org.eclipse.jetty jetty-servlet - 11.0.10 + 11.0.11 javax.servlet From 7d5c242fa9dd076d7b4cf50e191b952a01d58edc Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Sat, 25 Jun 2022 00:26:31 -0400 Subject: [PATCH 09/35] docs: document that the community registry plugin should be uninstalled first Without this, it's unknown what will happen. Refs #5223 --- docs/appendices/0.25.0-migration-guide.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/appendices/0.25.0-migration-guide.md b/docs/appendices/0.25.0-migration-guide.md index 0730217db..95c74490a 100644 --- a/docs/appendices/0.25.0-migration-guide.md +++ b/docs/appendices/0.25.0-migration-guide.md @@ -9,6 +9,8 @@ The [dokku-registry](https://github.com/dokku/dokku-registry) plugin is now buil - At this time, remote docker repositories are not automatically created for AWS, and users must create those repositories for their applications as necessary. This may be implemented in the future. - Docker images are only pushed when configured to do so. See the [registry management documentation](/docs/deployment/registry-management.md) for more details. +Before upgrading, uninstall the registry plugin via `dokku plugin:uninstall registry`. Not doing so will cause issues with Dokku. + ## Other ### Changes From 51cd7fd85e9a736e65d224b1629786d4d9bda5fc Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Sat, 25 Jun 2022 01:06:28 -0400 Subject: [PATCH 10/35] fix: use original app name when setting include_labels for vector source Closes #5221 --- plugins/logs/functions.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/logs/functions.go b/plugins/logs/functions.go index 0682aec37..401a2aea6 100644 --- a/plugins/logs/functions.go +++ b/plugins/logs/functions.go @@ -168,18 +168,18 @@ func writeVectorConfig() error { continue } - appName = strings.ReplaceAll(appName, ".", "-") - sink, err := sinkValueToConfig(appName, value) + inflectedAppName := strings.ReplaceAll(appName, ".", "-") + sink, err := sinkValueToConfig(inflectedAppName, value) if err != nil { return err } - data.Sources[fmt.Sprintf("docker-source:%s", appName)] = vectorSource{ + data.Sources[fmt.Sprintf("docker-source:%s", inflectedAppName)] = vectorSource{ Type: "docker_logs", IncludeLabels: []string{fmt.Sprintf("com.dokku.app-name=%s", appName)}, } - data.Sinks[fmt.Sprintf("docker-sink:%s", appName)] = sink + data.Sinks[fmt.Sprintf("docker-sink:%s", inflectedAppName)] = sink } value := common.PropertyGet("logs", "--global", "vector-sink") From abe06b3d844465bda6275c16bbb46ac9f249c3fb Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Sat, 25 Jun 2022 01:16:53 -0400 Subject: [PATCH 11/35] docs: fix the error message to be slightly more readable --- plugins/git/functions | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/git/functions b/plugins/git/functions index 55fade82f..954380779 100755 --- a/plugins/git/functions +++ b/plugins/git/functions @@ -62,11 +62,11 @@ git_trigger_build() { BUILDER="herokuish" local ARCHITECTURE="$(dpkg --print-architecture 2>/dev/null || true)" if [[ "$ARCHITECTURE" == "arm64" ]]; then - dokku_log_warn "Builder herokuish not supported on $ARCHITECTURE servers." + dokku_log_warn "Herokuish builder not supported on $ARCHITECTURE servers." dokku_log_warn "Switching to pack builder." BUILDER="pack" elif [[ "$ARCHITECTURE" == "armhf" ]]; then - dokku_log_warn "Builder herokuish not supported on $ARCHITECTURE servers." + dokku_log_warn "Herokuish builder not supported on $ARCHITECTURE servers." dokku_log_warn "Consider using a Dockerfile to build your app." return 1 fi From dded26625bf3f1c6e86b2303299689ad58de1cc1 Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Sun, 26 Jun 2022 14:31:08 -0400 Subject: [PATCH 12/35] fix: always respect app.json formations in scale settings Without this change, it was possible would end up in a state where we might still try to scale processes up that no longer exists. Closes #5205 --- plugins/app-json/functions.go | 2 +- tests/apps/python/app-5205a.json | 10 ++++ tests/apps/python/app-5205b.json | 10 ++++ tests/unit/app-json-3.bats | 84 ++++++++++++++++++++++++++++++++ 4 files changed, 105 insertions(+), 1 deletion(-) create mode 100644 tests/apps/python/app-5205a.json create mode 100644 tests/apps/python/app-5205b.json create mode 100644 tests/unit/app-json-3.bats diff --git a/plugins/app-json/functions.go b/plugins/app-json/functions.go index 9c9e13b2a..97e97cb64 100644 --- a/plugins/app-json/functions.go +++ b/plugins/app-json/functions.go @@ -497,7 +497,7 @@ func setScale(appName string, image string) error { } skipDeploy := true - clearExisting := false + clearExisting := true args := []string{appName, strconv.FormatBool(skipDeploy), strconv.FormatBool(clearExisting)} for processType, formation := range appJSON.Formation { if formation.Quantity != nil { diff --git a/tests/apps/python/app-5205a.json b/tests/apps/python/app-5205a.json new file mode 100644 index 000000000..268a27a4c --- /dev/null +++ b/tests/apps/python/app-5205a.json @@ -0,0 +1,10 @@ +{ + "formation": { + "web": { + "quantity": 1 + }, + "worker": { + "quantity": 1 + } + } +} diff --git a/tests/apps/python/app-5205b.json b/tests/apps/python/app-5205b.json new file mode 100644 index 000000000..b58838b9e --- /dev/null +++ b/tests/apps/python/app-5205b.json @@ -0,0 +1,10 @@ +{ + "formation": { + "web": { + "quantity": 1 + }, + "cron": { + "quantity": 1 + } + } +} diff --git a/tests/unit/app-json-3.bats b/tests/unit/app-json-3.bats new file mode 100644 index 000000000..ead921aed --- /dev/null +++ b/tests/unit/app-json-3.bats @@ -0,0 +1,84 @@ +#!/usr/bin/env bats +load test_helper + +setup() { + global_setup + create_app +} + +teardown() { + destroy_app + global_teardown +} + +@test "(app-json) persist scale" { + local CUSTOM_TMP=$(mktemp -d "/tmp/dokku.me.XXXXX") + trap 'popd &>/dev/null || true; rm -rf "$TMP"' INT TERM + + CUSTOM_TMP="$CUSTOM_TMP" run deploy_app python dokku@dokku.me:$TEST_APP persist_scale_callback_a + echo "output: $output" + echo "status: $status" + assert_success + + run /bin/bash -c "dokku --quiet ps:scale $TEST_APP" + echo "output: $output" + echo "status: $status" + assert_success + assert_output_contains "web: 1" + assert_output_contains "worker: 1" + assert_output_contains "cron: 0" 0 + + run persist_scale_callback_b "$TEST_APP" "$CUSTOM_TMP" + echo "output: $output" + echo "status: $status" + assert_success + + run git -C "$CUSTOM_TMP" add app.json Procfile + echo "output: $output" + echo "status: $status" + assert_success + + run git -C "$CUSTOM_TMP" commit -m 'Update scaling parameters' + echo "output: $output" + echo "status: $status" + assert_success + + run git -C "$CUSTOM_TMP" push target master:master + echo "output: $output" + echo "status: $status" + assert_success + + run /bin/bash -c "dokku --quiet ps:scale $TEST_APP" + echo "output: $output" + echo "status: $status" + assert_success + assert_output_contains "web: 1" + assert_output_contains "worker: 1" 0 + assert_output_contains "worker: 0" 0 + assert_output_contains "cron: 1" 1 +} + +persist_scale_callback_a() { + local APP="$1" + local APP_REPO_DIR="$2" + [[ -z "$APP" ]] && local APP="$TEST_APP" + + rm "$APP_REPO_DIR/Procfile" + touch "$APP_REPO_DIR/Procfile" + echo "web: python3 web.py" >>"$APP_REPO_DIR/Procfile" + echo "worker: python3 worker.py" >>"$APP_REPO_DIR/Procfile" + mv "$APP_REPO_DIR/app-5205a.json" "$APP_REPO_DIR/app.json" +} + + +persist_scale_callback_b() { + local APP="$1" + local APP_REPO_DIR="$2" + [[ -z "$APP" ]] && local APP="$TEST_APP" + + rm "$APP_REPO_DIR/Procfile" + touch "$APP_REPO_DIR/Procfile" + echo "web: python3 web.py" >>"$APP_REPO_DIR/Procfile" + echo "cron: python3 worker.py" >>"$APP_REPO_DIR/Procfile" + mv "$APP_REPO_DIR/app-5205b.json" "$APP_REPO_DIR/app.json" +} From b4d0456f5faa7b59d1bbbd7e2772e4ff7141903c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 Jun 2022 14:47:33 +0000 Subject: [PATCH 13/35] chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 219 to 220. - [Release notes](https://github.com/heroku/heroku-buildpack-php/releases) - [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md) - [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v219...v220) --- updated-dependencies: - dependency-name: heroku/heroku-buildpack-php dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- tests/apps/php/composer.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/apps/php/composer.lock b/tests/apps/php/composer.lock index f75e52848..42621ac27 100644 --- a/tests/apps/php/composer.lock +++ b/tests/apps/php/composer.lock @@ -1001,16 +1001,16 @@ "packages-dev": [ { "name": "heroku/heroku-buildpack-php", - "version": "v219", + "version": "v220", "source": { "type": "git", "url": "https://github.com/heroku/heroku-buildpack-php.git", - "reference": "9acc2e638f02b7249b51225acb03fb7a7259f447" + "reference": "af0935921c10dc7d2d2f41b06c0a66c89102d8dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/heroku/heroku-buildpack-php/zipball/9acc2e638f02b7249b51225acb03fb7a7259f447", - "reference": "9acc2e638f02b7249b51225acb03fb7a7259f447", + "url": "https://api.github.com/repos/heroku/heroku-buildpack-php/zipball/af0935921c10dc7d2d2f41b06c0a66c89102d8dd", + "reference": "af0935921c10dc7d2d2f41b06c0a66c89102d8dd", "shasum": "" }, "bin": [ @@ -1038,7 +1038,7 @@ "nginx", "php" ], - "time": "2022-06-09T21:04:15+00:00" + "time": "2022-06-15T15:34:32+00:00" } ], "aliases": [], From ae10527b8aa1b533a5d4cd9461a77ee54f8b0d4d Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Mon, 27 Jun 2022 10:53:09 -0400 Subject: [PATCH 14/35] docs: clarify usage of build args to set environment variables for Dockerfile deploys While documented under Dockerfile deploys, developers looking at docs might not know to go to those docs to find this information out. --- docs/configuration/environment-variables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/configuration/environment-variables.md b/docs/configuration/environment-variables.md index 2914a6d03..bb078ec93 100644 --- a/docs/configuration/environment-variables.md +++ b/docs/configuration/environment-variables.md @@ -14,7 +14,7 @@ config:keys (|--global) [--merged] config:set [--encoded] [--no-restart] (|--global) KEY1=VALUE1 [KEY2=VALUE2 ...] Set one or more config vars config:unset [--no-restart] (|--global) KEY1 [KEY2 ...] Unset one or more config vars ``` -> For security reasons - and as per [docker recommendations](https://github.com/docker/docker/issues/13490) - Dockerfile-based deploys have variables available _only_ during runtime, as noted in [this issue](https://github.com/dokku/dokku/issues/1860). +> For security reasons - and as per [docker recommendations](https://github.com/docker/docker/issues/13490) - Dockerfile-based deploys have variables available _only_ during runtime, as noted in [this issue](https://github.com/dokku/dokku/issues/1860). Consider using [build arguments](/docs/deployment/builders/dockerfiles.md#build-time-configuration-variables) to expose variables during build-time for Dockerfile apps. Environment variables are available both at run time and during the application build/compilation step for buildpack-based deploys. From 23322b6ddeabadcfd5c8ee400acf727af7f2a459 Mon Sep 17 00:00:00 2001 From: Dokku Bot Date: Mon, 27 Jun 2022 17:19:21 +0000 Subject: [PATCH 15/35] Release 0.27.6 # History ## 0.27.6 Install/update via the bootstrap script: ```shell wget https://raw.githubusercontent.com/dokku/dokku/v0.27.6/bootstrap.sh sudo DOKKU_TAG=v0.27.6 bash bootstrap.sh ``` ### Bug Fixes - #5225: @josegonzalez Use original app name when setting include_labels for vector source - #5228: @josegonzalez Always respect app.json formations in scale settings - #5201: @josegonzalez Use pack as default builder for arm64 servers ### Documentation - #5230: @josegonzalez Clarify usage of build args to set environment variables for Dockerfile deploys - #5208: @asokoloski-m Fix typo in dockerfile builder docs - #5206: @AxelTheGerman Added dokku-litestream to list of community plugins ### Other - #5218: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 219 to 220 in /tests/apps/php - #5222: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.10 to 11.0.11 in /tests/apps/java - #5224: @josegonzalez Document that the community registry plugin should be uninstalled before upgrading past 0.24.x - #5220: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.9 to 11.0.10 in /tests/apps/java - #5212: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 218 to 219 in /tests/apps/php - #5210: @dependabot[bot] chore(deps): bump monolog/monolog from 1.27.0 to 1.27.1 in /tests/apps/php - #5204: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 217 to 218 in /tests/apps/php --- HISTORY.md | 31 ++++++++++++ README.md | 4 +- debian/control | 2 +- docs/advanced-usage/plugin-management.md | 58 +++++++++++----------- docs/assets/favicons/browserconfig.xml | 8 +-- docs/assets/favicons/manifest.json | 12 ++--- docs/assets/style.css | 4 +- docs/assets/versions.json | 2 +- docs/development/release-process.md | 2 +- docs/getting-started/install/docker.md | 4 +- docs/getting-started/installation.md | 4 +- docs/home.html | 40 +++++++-------- docs/template.html | 36 +++++++------- plugins/00_dokku-standard/plugin.toml | 2 +- plugins/20_events/plugin.toml | 2 +- plugins/app-json/plugin.toml | 2 +- plugins/apps/plugin.toml | 2 +- plugins/builder-dockerfile/plugin.toml | 2 +- plugins/builder-herokuish/plugin.toml | 2 +- plugins/builder-null/plugin.toml | 2 +- plugins/builder-pack/plugin.toml | 2 +- plugins/builder/plugin.toml | 2 +- plugins/buildpacks/plugin.toml | 2 +- plugins/certs/plugin.toml | 2 +- plugins/checks/plugin.toml | 2 +- plugins/common/plugin.toml | 2 +- plugins/config/plugin.toml | 2 +- plugins/cron/plugin.toml | 2 +- plugins/docker-options/plugin.toml | 2 +- plugins/domains/plugin.toml | 2 +- plugins/enter/plugin.toml | 2 +- plugins/git/plugin.toml | 2 +- plugins/logs/plugin.toml | 2 +- plugins/network/plugin.toml | 2 +- plugins/nginx-vhosts/plugin.toml | 2 +- plugins/plugin/plugin.toml | 2 +- plugins/proxy/plugin.toml | 2 +- plugins/ps/plugin.toml | 2 +- plugins/registry/plugin.toml | 2 +- plugins/repo/plugin.toml | 2 +- plugins/resource/plugin.toml | 2 +- plugins/run/plugin.toml | 2 +- plugins/scheduler-docker-local/plugin.toml | 2 +- plugins/scheduler-null/plugin.toml | 2 +- plugins/scheduler/plugin.toml | 2 +- plugins/shell/plugin.toml | 2 +- plugins/ssh-keys/plugin.toml | 2 +- plugins/storage/plugin.toml | 2 +- plugins/trace/plugin.toml | 2 +- 49 files changed, 155 insertions(+), 124 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index 9e21898f4..20889c159 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,5 +1,36 @@ # History +## 0.27.6 + +Install/update via the bootstrap script: + +```shell +wget https://raw.githubusercontent.com/dokku/dokku/v0.27.6/bootstrap.sh +sudo DOKKU_TAG=v0.27.6 bash bootstrap.sh +``` + +### Bug Fixes + +- #5225: @josegonzalez Use original app name when setting include_labels for vector source +- #5228: @josegonzalez Always respect app.json formations in scale settings +- #5201: @josegonzalez Use pack as default builder for arm64 servers + +### Documentation + +- #5230: @josegonzalez Clarify usage of build args to set environment variables for Dockerfile deploys +- #5208: @asokoloski-m Fix typo in dockerfile builder docs +- #5206: @AxelTheGerman Added dokku-litestream to list of community plugins + +### Other + +- #5218: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 219 to 220 in /tests/apps/php +- #5222: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.10 to 11.0.11 in /tests/apps/java +- #5224: @josegonzalez Document that the community registry plugin should be uninstalled before upgrading past 0.24.x +- #5220: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.9 to 11.0.10 in /tests/apps/java +- #5212: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 218 to 219 in /tests/apps/php +- #5210: @dependabot[bot] chore(deps): bump monolog/monolog from 1.27.0 to 1.27.1 in /tests/apps/php +- #5204: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 217 to 218 in /tests/apps/php + ## 0.27.5 Install/update via the bootstrap script: diff --git a/README.md b/README.md index 003c835af..c7c78de54 100644 --- a/README.md +++ b/README.md @@ -87,8 +87,8 @@ Otherwise, you will need to import the keypair manually after installation using To install the latest stable release, run the following commands as a user who has access to `sudo`: ```shell -wget https://raw.githubusercontent.com/dokku/dokku/v0.27.5/bootstrap.sh -sudo DOKKU_TAG=v0.27.5 bash bootstrap.sh +wget https://raw.githubusercontent.com/dokku/dokku/v0.27.6/bootstrap.sh +sudo DOKKU_TAG=v0.27.6 bash bootstrap.sh ``` You can then proceed to configure your server domain (via `dokku domains:set-global`) and user access (via `dokku ssh-keys:add`) to complete the installation. diff --git a/debian/control b/debian/control index bace8b72d..37b4ddfde 100644 --- a/debian/control +++ b/debian/control @@ -1,5 +1,5 @@ Package: dokku -Version: 0.27.5 +Version: 0.27.6 Section: web Priority: optional Architecture: amd64 diff --git a/docs/advanced-usage/plugin-management.md b/docs/advanced-usage/plugin-management.md index 3bb5d428e..3a7694337 100644 --- a/docs/advanced-usage/plugin-management.md +++ b/docs/advanced-usage/plugin-management.md @@ -35,35 +35,35 @@ dokku plugin:list ``` plugn: dev - 00_dokku-standard 0.27.5 enabled dokku core standard plugin - 20_events 0.27.5 enabled dokku core events logging plugin - app-json 0.27.5 enabled dokku core app-json plugin - apps 0.27.5 enabled dokku core apps plugin - build-env 0.27.5 enabled dokku core build-env plugin - buildpacks 0.27.5 enabled dokku core buildpacks plugin - certs 0.27.5 enabled dokku core certificate management plugin - checks 0.27.5 enabled dokku core checks plugin - common 0.27.5 enabled dokku core common plugin - config 0.27.5 enabled dokku core config plugin - docker-options 0.27.5 enabled dokku core docker-options plugin - domains 0.27.5 enabled dokku core domains plugin - enter 0.27.5 enabled dokku core enter plugin - git 0.27.5 enabled dokku core git plugin - logs 0.27.5 enabled dokku core logs plugin - network 0.27.5 enabled dokku core network plugin - nginx-vhosts 0.27.5 enabled dokku core nginx-vhosts plugin - plugin 0.27.5 enabled dokku core plugin plugin - proxy 0.27.5 enabled dokku core proxy plugin - ps 0.27.5 enabled dokku core ps plugin - repo 0.27.5 enabled dokku core repo plugin - resource 0.27.5 enabled dokku core resource plugin - scheduler-docker-local 0.27.5 enabled dokku core scheduler-docker-local plugin - shell 0.27.5 enabled dokku core shell plugin - ssh-keys 0.27.5 enabled dokku core ssh-keys plugin - storage 0.27.5 enabled dokku core storage plugin - tags 0.27.5 enabled dokku core tags plugin - tar 0.27.5 enabled dokku core tar plugin - trace 0.27.5 enabled dokku core trace plugin + 00_dokku-standard 0.27.6 enabled dokku core standard plugin + 20_events 0.27.6 enabled dokku core events logging plugin + app-json 0.27.6 enabled dokku core app-json plugin + apps 0.27.6 enabled dokku core apps plugin + build-env 0.27.6 enabled dokku core build-env plugin + buildpacks 0.27.6 enabled dokku core buildpacks plugin + certs 0.27.6 enabled dokku core certificate management plugin + checks 0.27.6 enabled dokku core checks plugin + common 0.27.6 enabled dokku core common plugin + config 0.27.6 enabled dokku core config plugin + docker-options 0.27.6 enabled dokku core docker-options plugin + domains 0.27.6 enabled dokku core domains plugin + enter 0.27.6 enabled dokku core enter plugin + git 0.27.6 enabled dokku core git plugin + logs 0.27.6 enabled dokku core logs plugin + network 0.27.6 enabled dokku core network plugin + nginx-vhosts 0.27.6 enabled dokku core nginx-vhosts plugin + plugin 0.27.6 enabled dokku core plugin plugin + proxy 0.27.6 enabled dokku core proxy plugin + ps 0.27.6 enabled dokku core ps plugin + repo 0.27.6 enabled dokku core repo plugin + resource 0.27.6 enabled dokku core resource plugin + scheduler-docker-local 0.27.6 enabled dokku core scheduler-docker-local plugin + shell 0.27.6 enabled dokku core shell plugin + ssh-keys 0.27.6 enabled dokku core ssh-keys plugin + storage 0.27.6 enabled dokku core storage plugin + tags 0.27.6 enabled dokku core tags plugin + tar 0.27.6 enabled dokku core tar plugin + trace 0.27.6 enabled dokku core trace plugin ``` > Warning: All plugin commands other than `plugin:list` and `plugin:help` require sudo access and must be run directly from the Dokku server. diff --git a/docs/assets/favicons/browserconfig.xml b/docs/assets/favicons/browserconfig.xml index 506727caf..c175ace8d 100644 --- a/docs/assets/favicons/browserconfig.xml +++ b/docs/assets/favicons/browserconfig.xml @@ -2,10 +2,10 @@ - - - - + + + + #da532c diff --git a/docs/assets/favicons/manifest.json b/docs/assets/favicons/manifest.json index d4cae553e..f82f3586d 100644 --- a/docs/assets/favicons/manifest.json +++ b/docs/assets/favicons/manifest.json @@ -2,37 +2,37 @@ "name": "Dokku", "icons": [ { - "src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.27.5\/docs\/assets\/favicons\/android-chrome-36x36.png", + "src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.27.6\/docs\/assets\/favicons\/android-chrome-36x36.png", "sizes": "36x36", "type": "image\/png", "density": "0.75" }, { - "src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.27.5\/docs\/assets\/favicons\/android-chrome-48x48.png", + "src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.27.6\/docs\/assets\/favicons\/android-chrome-48x48.png", "sizes": "48x48", "type": "image\/png", "density": "1.0" }, { - "src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.27.5\/docs\/assets\/favicons\/android-chrome-72x72.png", + "src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.27.6\/docs\/assets\/favicons\/android-chrome-72x72.png", "sizes": "72x72", "type": "image\/png", "density": "1.5" }, { - "src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.27.5\/docs\/assets\/favicons\/android-chrome-96x96.png", + "src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.27.6\/docs\/assets\/favicons\/android-chrome-96x96.png", "sizes": "96x96", "type": "image\/png", "density": "2.0" }, { - "src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.27.5\/docs\/assets\/favicons\/android-chrome-144x144.png", + "src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.27.6\/docs\/assets\/favicons\/android-chrome-144x144.png", "sizes": "144x144", "type": "image\/png", "density": "3.0" }, { - "src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.27.5\/docs\/assets\/favicons\/android-chrome-192x192.png", + "src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.27.6\/docs\/assets\/favicons\/android-chrome-192x192.png", "sizes": "192x192", "type": "image\/png", "density": "4.0" diff --git a/docs/assets/style.css b/docs/assets/style.css index 14cc4822c..16295ddc4 100644 --- a/docs/assets/style.css +++ b/docs/assets/style.css @@ -42,13 +42,13 @@ h1 { font-size: 1.6em; } .header .navbar-brand a { - background-image: url(https://cdn.jsdelivr.net/gh/dokku/dokku@v0.27.5/docs/assets/dokku.png); + background-image: url(https://cdn.jsdelivr.net/gh/dokku/dokku@v0.27.6/docs/assets/dokku.png); text-indent: 40px; } .blurb { color: #424242; background-color: #ededed; - background-image: url(https://cdn.jsdelivr.net/gh/dokku/dokku@v0.27.5/docs/assets/gplaypattern.png); + background-image: url(https://cdn.jsdelivr.net/gh/dokku/dokku@v0.27.6/docs/assets/gplaypattern.png); padding: 45px 0; text-align: center; } diff --git a/docs/assets/versions.json b/docs/assets/versions.json index dd671dbd9..3015ca1aa 100644 --- a/docs/assets/versions.json +++ b/docs/assets/versions.json @@ -24,6 +24,6 @@ "0.24.10", "0.25.7", "0.26.8", - "0.27.5" + "0.27.6" ] } diff --git a/docs/development/release-process.md b/docs/development/release-process.md index a9a316814..fe3968161 100644 --- a/docs/development/release-process.md +++ b/docs/development/release-process.md @@ -29,7 +29,7 @@ The workflow looks like this: ```shell # having dokku-arch in ../dokku-arch vagrant up build-arch -# wait for "==> build-arch: ==> Finished making: dokku 0.27.5-2 (Mon Feb 22 23:20:37 CET 2016)" +# wait for "==> build-arch: ==> Finished making: dokku 0.27.6-2 (Mon Feb 22 23:20:37 CET 2016)" cd ../dokku-arch git add PKGBUILD .SRCINFO git commit -m 'Update to dokku 0.9.9' diff --git a/docs/getting-started/install/docker.md b/docs/getting-started/install/docker.md index 006f8c4b3..b7835a082 100644 --- a/docs/getting-started/install/docker.md +++ b/docs/getting-started/install/docker.md @@ -3,7 +3,7 @@ Pull the dokku/dokku image: ```shell -docker pull dokku/dokku:0.27.5 +docker pull dokku/dokku:0.27.6 ``` Next, run the image. @@ -18,7 +18,7 @@ docker container run \ --publish 8443:443 \ --volume /var/lib/dokku:/mnt/dokku \ --volume /var/run/docker.sock:/var/run/docker.sock \ - dokku/dokku:0.27.5 + dokku/dokku:0.27.6 ``` The above command will start a new docker container that is ready when a message similar to `Runit started as PID 12345` appears. diff --git a/docs/getting-started/installation.md b/docs/getting-started/installation.md index 0d787a9ab..77d51f545 100644 --- a/docs/getting-started/installation.md +++ b/docs/getting-started/installation.md @@ -39,8 +39,8 @@ To install the latest stable version of Dokku, you can run the following shell c ```shell # for debian systems, installs Dokku via apt-get -wget https://raw.githubusercontent.com/dokku/dokku/v0.27.5/bootstrap.sh; -sudo DOKKU_TAG=v0.27.5 bash bootstrap.sh +wget https://raw.githubusercontent.com/dokku/dokku/v0.27.6/bootstrap.sh; +sudo DOKKU_TAG=v0.27.6 bash bootstrap.sh ``` The installation process takes about 5-10 minutes, depending upon internet connection speed. diff --git a/docs/home.html b/docs/home.html index f8d2a33eb..95a50b3af 100644 --- a/docs/home.html +++ b/docs/home.html @@ -10,30 +10,30 @@ Dokku - The smallest PaaS implementation you've ever seen - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + - + @@ -98,12 +98,12 @@

$ - wget https://raw.githubusercontent.com/dokku/dokku/v0.27.5/bootstrap.sh + wget https://raw.githubusercontent.com/dokku/dokku/v0.27.6/bootstrap.sh

$ - sudo DOKKU_TAG=v0.27.5 bash bootstrap.sh + sudo DOKKU_TAG=v0.27.6 bash bootstrap.sh

 # Configure your server domain via `dokku domains:set-global` diff --git a/docs/template.html b/docs/template.html index 1eace7df0..2b64fbb48 100644 --- a/docs/template.html +++ b/docs/template.html @@ -9,26 +9,26 @@ Dokku - {{DOC_TITLE}} - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + - + @@ -98,12 +98,12 @@

$ - wget https://raw.githubusercontent.com/dokku/dokku/v0.27.6/bootstrap.sh + wget https://raw.githubusercontent.com/dokku/dokku/v0.27.7/bootstrap.sh

$ - sudo DOKKU_TAG=v0.27.6 bash bootstrap.sh + sudo DOKKU_TAG=v0.27.7 bash bootstrap.sh

 # Configure your server domain via `dokku domains:set-global` diff --git a/docs/template.html b/docs/template.html index 2b64fbb48..cd74c2056 100644 --- a/docs/template.html +++ b/docs/template.html @@ -9,26 +9,26 @@ Dokku - {{DOC_TITLE}} - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + - + @@ -98,12 +98,12 @@

$ - wget https://raw.githubusercontent.com/dokku/dokku/v0.27.7/bootstrap.sh + wget https://raw.githubusercontent.com/dokku/dokku/v0.27.8/bootstrap.sh

$ - sudo DOKKU_TAG=v0.27.7 bash bootstrap.sh + sudo DOKKU_TAG=v0.27.8 bash bootstrap.sh

 # Configure your server domain via `dokku domains:set-global` diff --git a/docs/template.html b/docs/template.html index cd74c2056..7738a72f3 100644 --- a/docs/template.html +++ b/docs/template.html @@ -9,26 +9,26 @@ Dokku - {{DOC_TITLE}} - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + - +