Compare commits

...

432 Commits

Author SHA1 Message Date
Dokku Bot
56f9dfddad Release 0.35.14
# History

## 0.35.14

Install/update via the bootstrap script:

```shell
wget -NP . https://dokku.com/install/v0.35.14/bootstrap.sh
sudo DOKKU_TAG=v0.35.14 bash bootstrap.sh
```

### Bug Fixes

- #7441: @turicas Fix Vagrantfile NFS config
- #7417: @josegonzalez Write contents to stdout before writing to a file
- #7416: @josegonzalez Add missing DOKKU_LIB_HOST_ROOT to ensure plugins work in devcontainer setup
- #7412: @josegonzalez Remove cgroups dependencies

### New Features

- #7439: @josegonzalez Allow specifying a custom app label alias when shipping logs via vector
- #7419: @josegonzalez Add the ability to set a MAILFROM value for local cron emails

### Refactors

- #7415: @josegonzalez Use the golang version of CopyFromImage when copying files in bash

### Documentation

- #7437: @turicas Fix doc generation
- #7414: @josegonzalez Remove copyright date range

### Dependencies

- #7453: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.13 to 10.14 in /docs/_build
- #7451: @dependabot[bot] chore(deps): bump golang.org/x/crypto from 0.31.0 to 0.32.0 in /plugins/common
- #7449: @dependabot[bot] chore(deps): bump pygments from 2.19.0 to 2.19.1 in /docs/_build
- #7450: @dependabot[bot] chore(deps): bump google.golang.org/protobuf from 1.36.1 to 1.36.2 in /tests/apps/gogrpc
- #7452: @dependabot[bot] chore(deps): bump traefik from 3.2.3 to 3.3.0 in /plugins/traefik-vhosts
- #7446: @dependabot[bot] chore(deps): bump github.com/otiai10/copy from 1.14.0 to 1.14.1 in /plugins/common
- #7445: @dependabot[bot] chore(deps): bump pygments from 2.18.0 to 2.19.0 in /docs/_build
- #7444: @dependabot[bot] chore(deps): bump tj-actions/changed-files from 45.0.5 to 45.0.6
- #7436: @dependabot[bot] chore(deps): bump pyparsing from 3.2.0 to 3.2.1 in /docs/_build
- #7433: @dependabot[bot] chore(deps): bump k8s.io/kubernetes from 1.29.1 to 1.29.7 in /plugins/scheduler-k3s
- #7429: @dependabot[bot] chore(deps): bump github.com/onsi/gomega from 1.36.1 to 1.36.2 in /plugins/common
- #7427: @dependabot[bot] chore(deps): bump click from 8.1.7 to 8.1.8 in /docs/_build
- #7425: @dependabot[bot] chore(deps): bump jinja2 from 3.1.4 to 3.1.5 in /tests/apps/python-flask
- #7426: @dependabot[bot] chore(deps): bump google.golang.org/protobuf from 1.36.0 to 1.36.1 in /tests/apps/gogrpc
- #7428: @dependabot[bot] chore(deps): bump jinja2 from 3.1.4 to 3.1.5 in /docs/_build
- #7430: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.12 to 10.13 in /docs/_build
- #7432: @dependabot[bot] chore(deps): bump ruby from 3.3.6 to 3.4.1 in /tests/apps/dockerfile-entrypoint
- #7424: @dependabot[bot] chore(deps): bump google.golang.org/grpc from 1.69.0 to 1.69.2 in /tests/apps/gogrpc
- #7420: @dependabot[bot] chore(deps): bump google.golang.org/protobuf from 1.35.2 to 1.36.0 in /tests/apps/gogrpc
- #7421: @dependabot[bot] chore(deps): bump traefik from 3.2.2 to 3.2.3 in /plugins/traefik-vhosts
- #7418: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.48 to 9.5.49 in /docs/_build
- #7411: @dependabot[bot] chore(deps): bump google.golang.org/grpc from 1.68.1 to 1.69.0 in /tests/apps/gogrpc

### Other

- #7434: @turicas Add missing checks:set to checks help
- #7422: @Tashows Fix detached tty for k3s
2025-01-08 21:20:56 +00:00
Jose Diaz-Gonzalez
8a8be6660e Merge pull request #7453 from dokku/dependabot/pip/docs/_build/pymdown-extensions-10.14
chore(deps): bump pymdown-extensions from 10.13 to 10.14 in /docs/_build
2025-01-08 16:19:31 -05:00
dependabot[bot]
2236a29aef chore(deps): bump pymdown-extensions from 10.13 to 10.14 in /docs/_build
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.13 to 10.14.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.13...10.14)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-08 13:55:29 +00:00
Jose Diaz-Gonzalez
018745b405 Merge pull request #7451 from dokku/dependabot/go_modules/plugins/common/golang.org/x/crypto-0.32.0
chore(deps): bump golang.org/x/crypto from 0.31.0 to 0.32.0 in /plugins/common
2025-01-07 16:44:04 -05:00
Jose Diaz-Gonzalez
f25aba392b Merge pull request #7449 from dokku/dependabot/pip/docs/_build/pygments-2.19.1
chore(deps): bump pygments from 2.19.0 to 2.19.1 in /docs/_build
2025-01-07 15:51:38 -05:00
Jose Diaz-Gonzalez
4958752d6f Merge pull request #7450 from dokku/dependabot/go_modules/tests/apps/gogrpc/google.golang.org/protobuf-1.36.2
chore(deps): bump google.golang.org/protobuf from 1.36.1 to 1.36.2 in /tests/apps/gogrpc
2025-01-07 15:51:16 -05:00
Jose Diaz-Gonzalez
ec1ba0096f chore: bump go modules 2025-01-07 15:50:55 -05:00
dependabot[bot]
132d28b22a chore(deps): bump golang.org/x/crypto in /plugins/common
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.31.0 to 0.32.0.
- [Commits](https://github.com/golang/crypto/compare/v0.31.0...v0.32.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-07 15:38:24 -05:00
Jose Diaz-Gonzalez
436f46a088 Merge pull request #7452 from dokku/dependabot/docker/plugins/traefik-vhosts/traefik-3.3.0
chore(deps): bump traefik from 3.2.3 to 3.3.0 in /plugins/traefik-vhosts
2025-01-07 15:38:02 -05:00
dependabot[bot]
a16b62762d chore(deps): bump traefik from 3.2.3 to 3.3.0 in /plugins/traefik-vhosts
Bumps traefik from 3.2.3 to 3.3.0.

---
updated-dependencies:
- dependency-name: traefik
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-07 13:56:06 +00:00
dependabot[bot]
d2a88178cc chore(deps): bump google.golang.org/protobuf in /tests/apps/gogrpc
Bumps google.golang.org/protobuf from 1.36.1 to 1.36.2.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-07 13:28:38 +00:00
dependabot[bot]
7cc2773a10 chore(deps): bump pygments from 2.19.0 to 2.19.1 in /docs/_build
Bumps [pygments](https://github.com/pygments/pygments) from 2.19.0 to 2.19.1.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.19.0...2.19.1)

---
updated-dependencies:
- dependency-name: pygments
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-07 13:23:08 +00:00
Jose Diaz-Gonzalez
f637fd145d Merge pull request #7446 from dokku/dependabot/go_modules/plugins/common/github.com/otiai10/copy-1.14.1
chore(deps): bump github.com/otiai10/copy from 1.14.0 to 1.14.1 in /plugins/common
2025-01-07 00:59:30 -05:00
Jose Diaz-Gonzalez
689d2c74d3 chore: bump go modules 2025-01-06 23:55:19 -05:00
Jose Diaz-Gonzalez
54c333e64d Merge pull request #7439 from dokku/7354-log-app-label-alias
Allow specifying a custom app label alias when shipping logs via vector
2025-01-06 23:47:19 -05:00
Jose Diaz-Gonzalez
a771b888b0 Merge pull request #7445 from dokku/dependabot/pip/docs/_build/pygments-2.19.0
chore(deps): bump pygments from 2.18.0 to 2.19.0 in /docs/_build
2025-01-06 23:46:48 -05:00
Jose Diaz-Gonzalez
30379e879e Merge pull request #7444 from dokku/dependabot/github_actions/tj-actions/changed-files-45.0.6
chore(deps): bump tj-actions/changed-files from 45.0.5 to 45.0.6
2025-01-06 23:46:05 -05:00
Jose Diaz-Gonzalez
dc7de12994 Merge pull request #7441 from turicas/fix/vagrantfile
Fix Vagrantfile NFS config
2025-01-06 23:45:56 -05:00
dependabot[bot]
0ea4ccd793 chore(deps): bump github.com/otiai10/copy in /plugins/common
Bumps [github.com/otiai10/copy](https://github.com/otiai10/copy) from 1.14.0 to 1.14.1.
- [Release notes](https://github.com/otiai10/copy/releases)
- [Commits](https://github.com/otiai10/copy/compare/v1.14.0...v1.14.1)

---
updated-dependencies:
- dependency-name: github.com/otiai10/copy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-06 13:37:11 +00:00
dependabot[bot]
dd8ddb6116 chore(deps): bump pygments from 2.18.0 to 2.19.0 in /docs/_build
Bumps [pygments](https://github.com/pygments/pygments) from 2.18.0 to 2.19.0.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.18.0...2.19.0)

---
updated-dependencies:
- dependency-name: pygments
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-06 13:27:40 +00:00
dependabot[bot]
de889f3342 chore(deps): bump tj-actions/changed-files from 45.0.5 to 45.0.6
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 45.0.5 to 45.0.6.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v45.0.5...v45.0.6)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-06 13:11:50 +00:00
Álvaro Justen (@turicas)
5cfaf7cdea Install nginx on VM 2025-01-05 13:54:33 -03:00
Álvaro Justen (@turicas)
444c110278 Force NFS version 4 and disable UDP 2025-01-05 13:54:14 -03:00
Jose Diaz-Gonzalez
bc6f75fedd tests: update test output 2025-01-04 21:48:55 -05:00
Jose Diaz-Gonzalez
c59656f610 tests: update test output 2025-01-04 11:38:01 -05:00
Jose Diaz-Gonzalez
869f9a0346 feat: allow specifying a custom app label alias when shipping logs via vector
Closes #7354
2025-01-03 23:38:20 -05:00
Jose Diaz-Gonzalez
60eab73c17 Merge pull request #7436 from dokku/dependabot/pip/docs/_build/pyparsing-3.2.1
chore(deps): bump pyparsing from 3.2.0 to 3.2.1 in /docs/_build
2025-01-03 19:44:00 -05:00
Jose Diaz-Gonzalez
104d738cb9 Merge pull request #7437 from turicas/patch-1
Fix write-mkdocs
2025-01-03 19:43:42 -05:00
Álvaro Justen
230c6a017f Fix write-mkdocs 2025-01-01 12:45:03 -03:00
dependabot[bot]
4d96dca30f chore(deps): bump pyparsing from 3.2.0 to 3.2.1 in /docs/_build
Bumps [pyparsing](https://github.com/pyparsing/pyparsing) from 3.2.0 to 3.2.1.
- [Release notes](https://github.com/pyparsing/pyparsing/releases)
- [Changelog](https://github.com/pyparsing/pyparsing/blob/master/CHANGES)
- [Commits](https://github.com/pyparsing/pyparsing/compare/3.2.0...3.2.1)

---
updated-dependencies:
- dependency-name: pyparsing
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-01 13:21:33 +00:00
Jose Diaz-Gonzalez
8fa83c3d9e Merge pull request #7434 from turicas/patch-1
Add missing checks:set to checks help
2024-12-31 03:52:09 -05:00
Álvaro Justen
46dd32aa01 Add missing checks:set to checks help 2024-12-30 03:43:37 -03:00
Jose Diaz-Gonzalez
e5c531edeb Merge pull request #7433 from dokku/dependabot/go_modules/plugins/scheduler-k3s/k8s.io/kubernetes-1.29.7
chore(deps): bump k8s.io/kubernetes from 1.29.1 to 1.29.7 in /plugins/scheduler-k3s
2024-12-28 05:00:13 -05:00
Jose Diaz-Gonzalez
c57b0d3fdb Merge pull request #7429 from dokku/dependabot/go_modules/plugins/common/github.com/onsi/gomega-1.36.2
chore(deps): bump github.com/onsi/gomega from 1.36.1 to 1.36.2 in /plugins/common
2024-12-28 05:00:02 -05:00
Jose Diaz-Gonzalez
0399650bc9 chore: update go modules 2024-12-28 03:54:07 -05:00
dependabot[bot]
4697c902fd chore(deps): bump github.com/onsi/gomega in /plugins/common
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.36.1 to 1.36.2.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.36.1...v1.36.2)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-28 03:48:24 -05:00
dependabot[bot]
d717f5db4f chore(deps): bump k8s.io/kubernetes in /plugins/scheduler-k3s
Bumps [k8s.io/kubernetes](https://github.com/kubernetes/kubernetes) from 1.29.1 to 1.29.7.
- [Release notes](https://github.com/kubernetes/kubernetes/releases)
- [Commits](https://github.com/kubernetes/kubernetes/compare/v1.29.1...v1.29.7)

---
updated-dependencies:
- dependency-name: k8s.io/kubernetes
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-28 08:46:04 +00:00
Jose Diaz-Gonzalez
0f8c27c703 Merge pull request #7427 from dokku/dependabot/pip/docs/_build/click-8.1.8
chore(deps): bump click from 8.1.7 to 8.1.8 in /docs/_build
2024-12-28 03:45:07 -05:00
Jose Diaz-Gonzalez
bac5057a37 Merge pull request #7425 from dokku/dependabot/pip/tests/apps/python-flask/jinja2-3.1.5
chore(deps): bump jinja2 from 3.1.4 to 3.1.5 in /tests/apps/python-flask
2024-12-28 03:44:57 -05:00
Jose Diaz-Gonzalez
701b284c21 Merge pull request #7426 from dokku/dependabot/go_modules/tests/apps/gogrpc/google.golang.org/protobuf-1.36.1
chore(deps): bump google.golang.org/protobuf from 1.36.0 to 1.36.1 in /tests/apps/gogrpc
2024-12-28 03:44:50 -05:00
Jose Diaz-Gonzalez
b7a5df624a Merge pull request #7428 from dokku/dependabot/pip/docs/_build/jinja2-3.1.5
chore(deps): bump jinja2 from 3.1.4 to 3.1.5 in /docs/_build
2024-12-28 03:44:41 -05:00
Jose Diaz-Gonzalez
1b8870dc68 Merge pull request #7430 from dokku/dependabot/pip/docs/_build/pymdown-extensions-10.13
chore(deps): bump pymdown-extensions from 10.12 to 10.13 in /docs/_build
2024-12-28 03:44:31 -05:00
Jose Diaz-Gonzalez
024c84928d Merge pull request #7432 from dokku/dependabot/docker/tests/apps/dockerfile-entrypoint/ruby-3.4.1
chore(deps): bump ruby from 3.3.6 to 3.4.1 in /tests/apps/dockerfile-entrypoint
2024-12-28 03:44:21 -05:00
dependabot[bot]
2c5f83bdc3 chore(deps): bump ruby in /tests/apps/dockerfile-entrypoint
Bumps ruby from 3.3.6 to 3.4.1.

---
updated-dependencies:
- dependency-name: ruby
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-27 13:21:19 +00:00
dependabot[bot]
1e60dd17b4 chore(deps): bump pymdown-extensions from 10.12 to 10.13 in /docs/_build
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.12 to 10.13.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.12...10.13)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-24 13:16:49 +00:00
dependabot[bot]
7b3b35fcc5 chore(deps): bump jinja2 from 3.1.4 to 3.1.5 in /docs/_build
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.4 to 3.1.5.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.4...3.1.5)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-23 13:24:59 +00:00
dependabot[bot]
62a72b6ab8 chore(deps): bump click from 8.1.7 to 8.1.8 in /docs/_build
Bumps [click](https://github.com/pallets/click) from 8.1.7 to 8.1.8.
- [Release notes](https://github.com/pallets/click/releases)
- [Changelog](https://github.com/pallets/click/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/click/compare/8.1.7...8.1.8)

---
updated-dependencies:
- dependency-name: click
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-23 13:24:55 +00:00
dependabot[bot]
aff94d2e5e chore(deps): bump google.golang.org/protobuf in /tests/apps/gogrpc
Bumps google.golang.org/protobuf from 1.36.0 to 1.36.1.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-23 13:24:52 +00:00
dependabot[bot]
6432e55c7e chore(deps): bump jinja2 from 3.1.4 to 3.1.5 in /tests/apps/python-flask
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.4 to 3.1.5.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.4...3.1.5)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-23 13:02:48 +00:00
Jose Diaz-Gonzalez
7c79c659ea Merge pull request #7424 from dokku/dependabot/go_modules/tests/apps/gogrpc/google.golang.org/grpc-1.69.2
chore(deps): bump google.golang.org/grpc from 1.69.0 to 1.69.2 in /tests/apps/gogrpc
2024-12-19 11:05:59 -05:00
dependabot[bot]
ea66b49e73 chore(deps): bump google.golang.org/grpc in /tests/apps/gogrpc
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.69.0 to 1.69.2.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.69.0...v1.69.2)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-19 13:07:56 +00:00
Jose Diaz-Gonzalez
ccf693d517 Merge pull request #7422 from Tashows/fix_detached_tty
Fix detached tty for k3s
2024-12-19 00:46:49 -05:00
Jose Diaz-Gonzalez
41810fe9b7 Merge pull request #7419 from dokku/7362-mailfrom
Add the ability to set a MAILFROM value for local cron emails
2024-12-18 20:54:11 -05:00
Tasos Maschalidis
fb4388b9e4 Slight improvement in phrasing for tty functionality 2024-12-17 22:23:02 +02:00
Tasos Maschalidis
a0dc8fd44a Update docs regarding the returned container/pod name for detached command 2024-12-17 21:53:23 +02:00
Tasos Maschalidis
63182e80e0 Use common.ToBool to check DOKKU_FORCE_TTY 2024-12-17 19:43:16 +02:00
Tasos Maschalidis
f786c8c0bc Fix k3s run:detached not returning pod name in a similar fashion to docker-local (as described in docs) 2024-12-17 19:11:01 +02:00
Tasos Maschalidis
838beb4db3 Take DOKKU_FORCE_TTY setting into account for run commands with k3s-scheduler 2024-12-17 19:11:01 +02:00
Jose Diaz-Gonzalez
e8d42810e6 Merge pull request #7420 from dokku/dependabot/go_modules/tests/apps/gogrpc/google.golang.org/protobuf-1.36.0
chore(deps): bump google.golang.org/protobuf from 1.35.2 to 1.36.0 in /tests/apps/gogrpc
2024-12-17 11:17:55 -05:00
Jose Diaz-Gonzalez
9a32ecfa17 Merge pull request #7421 from dokku/dependabot/docker/plugins/traefik-vhosts/traefik-3.2.3
chore(deps): bump traefik from 3.2.2 to 3.2.3 in /plugins/traefik-vhosts
2024-12-17 11:17:46 -05:00
dependabot[bot]
35f4ba710c chore(deps): bump traefik from 3.2.2 to 3.2.3 in /plugins/traefik-vhosts
Bumps traefik from 3.2.2 to 3.2.3.

---
updated-dependencies:
- dependency-name: traefik
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-17 13:30:06 +00:00
dependabot[bot]
7f664d6fc7 chore(deps): bump google.golang.org/protobuf in /tests/apps/gogrpc
Bumps google.golang.org/protobuf from 1.35.2 to 1.36.0.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-17 13:17:31 +00:00
Jose Diaz-Gonzalez
b93a47c35b feat: add the ability to set a MAILFROM value for local cron emails
Closes #7419
2024-12-17 00:28:21 -05:00
Jose Diaz-Gonzalez
6108c15a09 Merge pull request #7417 from dokku/7336-copy-from-image
Write contents to stdout before writing to a file
2024-12-17 00:27:50 -05:00
Jose Diaz-Gonzalez
3f49c70176 fix: use correct variableg 2024-12-16 23:32:53 -05:00
Jose Diaz-Gonzalez
78cd787622 refactor: avoid shelling out to run tar 2024-12-16 23:32:53 -05:00
Jose Diaz-Gonzalez
bde2f2e43d refactor: write contents to stdout before writing to a file
Rather than writing directly to the file - thus utilizing whatever user docker is being executed as - we copy the file to stdout and then write it to the temp file. This ensures permissions on the file are as expected from Dokku's end.

Closes #7336
2024-12-16 23:32:53 -05:00
Jose Diaz-Gonzalez
819f9a84c9 Merge pull request #7418 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.49
chore(deps): bump mkdocs-material from 9.5.48 to 9.5.49 in /docs/_build
2024-12-16 22:55:55 -05:00
dependabot[bot]
ee516370d0 chore(deps): bump mkdocs-material from 9.5.48 to 9.5.49 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.48 to 9.5.49.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.48...9.5.49)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-16 13:13:18 +00:00
Jose Diaz-Gonzalez
03fcac8d1f Merge pull request #7415 from dokku/7336-copy-from-image-refactor
Use the golang version of CopyFromImage when copying files in bash
2024-12-16 02:41:50 -05:00
Jose Diaz-Gonzalez
becba49c87 refactor: always use golang version of CopyFromImage 2024-12-16 01:47:00 -05:00
Jose Diaz-Gonzalez
7522ca87d2 Merge pull request #7416 from dokku/josegonzalez-patch-1
Add missing DOKKU_LIB_HOST_ROOT to ensure plugins work in devcontainer setup
2024-12-16 01:21:11 -05:00
Jose Diaz-Gonzalez
224103b181 fix: add missing DOKKU_LIB_HOST_ROOT to ensure plugins work in devcontainer setup 2024-12-16 01:20:54 -05:00
Jose Diaz-Gonzalez
fa32e922d3 Merge pull request #7414 from dokku/7413-copyright
Remove copyright date range
2024-12-14 14:26:45 -05:00
Jose Diaz-Gonzalez
68ceaa82e3 docs: remove copyright date range 2024-12-14 14:26:31 -05:00
Jose Diaz-Gonzalez
2e7e02b681 docs: remove copyright date range
It isn't necessary.

Closes #7413
2024-12-14 14:26:07 -05:00
Jose Diaz-Gonzalez
0febba6169 Merge pull request #7412 from dokku/7367-drop-cgroups
Remove cgroups dependencies
2024-12-14 12:41:39 -05:00
Jose Diaz-Gonzalez
1aaaa84816 fix: remove cgroups dependencies
These were added for lxc-docker - which is no longer supported - and are missing in Debian 13.

Closes #7367
2024-12-14 12:09:03 -05:00
Jose Diaz-Gonzalez
3e862a0b60 Merge pull request #7411 from dokku/dependabot/go_modules/tests/apps/gogrpc/google.golang.org/grpc-1.69.0
chore(deps): bump google.golang.org/grpc from 1.68.1 to 1.69.0 in /tests/apps/gogrpc
2024-12-14 12:03:18 -05:00
dependabot[bot]
a957a6e543 chore(deps): bump google.golang.org/grpc in /tests/apps/gogrpc
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.68.1 to 1.69.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.68.1...v1.69.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-13 13:07:57 +00:00
Dokku Bot
240573d5ff Release 0.35.13
# History

## 0.35.13

Install/update via the bootstrap script:

```shell
wget -NP . https://dokku.com/install/v0.35.13/bootstrap.sh
sudo DOKKU_TAG=v0.35.13 bash bootstrap.sh
```

### Bug Fixes

- #7410: @josegonzalez Only raise nil responses for k8s list calls as errors
- #7403: @Tashows Properly resolve imagePullSecrets from app and deploymentID if relevant property does not exist
- #7404: @josegonzalez Correctly handle scale to zero with the Keda http addon
- #7400: @Tashows Check if tty is actually used and support proper output when it's not

### Documentation

- #7395: @josegonzalez Add documentation for all file formats dokku uses
- #7399: @nonZero Add -w 0 to base64 call in config:set docs for safe usage in ssh commands

### Tests

- #7380: @josegonzalez Run unit tests outside of docker by default

### Dependencies

- #7409: @dependabot[bot] chore(deps): bump golang.org/x/crypto from 0.30.0 to 0.31.0 in /plugins/docker-options
- #7405: @dependabot[bot] chore(deps): bump timberio/vector from 0.42.0-debian to 0.43.1-debian in /plugins/logs
- #7407: @dependabot[bot] chore(deps): bump traefik from 3.2.1 to 3.2.2 in /plugins/traefik-vhosts
- #7402: @dependabot[bot] chore(deps): bump github.com/onsi/gomega from 1.36.0 to 1.36.1 in /plugins/common
- #7390: @dependabot[bot] chore(deps): bump golang.org/x/crypto from 0.29.0 to 0.30.0 in /plugins/common
- #7397: @dependabot[bot] chore(deps): bump tj-actions/changed-files from 45.0.4 to 45.0.5
- #7398: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.47 to 9.5.48 in /docs/_build
- #7394: @dependabot[bot] chore(deps): bump django from 5.0.9 to 5.0.10 in /tests/apps/dockerfile-release
- #7385: @dependabot[bot] chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/go-fail-predeploy
- #7386: @dependabot[bot] chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/zombies-dockerfile-tini
- #7387: @dependabot[bot] chore(deps): bump google.golang.org/grpc from 1.68.0 to 1.68.1 in /tests/apps/gogrpc
- #7388: @dependabot[bot] chore(deps): bump python from 3.13.0-alpine to 3.13.1-alpine in /docs/_build
- #7389: @dependabot[bot] chore(deps): bump six from 1.16.0 to 1.17.0 in /docs/_build
- #7392: @dependabot[bot] chore(deps): bump golang.org/x/sync from 0.9.0 to 0.10.0 in /plugins/scheduler-docker-local
- #7393: @dependabot[bot] chore(deps): bump python from 3.13.0-bookworm to 3.13.1-bookworm in /tests/apps/dockerfile-release
- #7384: @dependabot[bot] chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/gogrpc
- #7383: @dependabot[bot] chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/zombies-dockerfile-no-tini
- #7382: @dependabot[bot] chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/go-fail-postdeploy
2024-12-12 06:32:55 +00:00
Jose Diaz-Gonzalez
c18695ea3b Merge pull request #7410 from dokku/fix-not-found 2024-12-12 01:06:28 -05:00
Jose Diaz-Gonzalez
ebbc29b357 Merge pull request #7409 from dokku/dependabot/go_modules/plugins/docker-options/golang.org/x/crypto-0.31.0
chore(deps): bump golang.org/x/crypto from 0.30.0 to 0.31.0 in /plugins/docker-options
2024-12-11 22:57:23 -05:00
Jose Diaz-Gonzalez
233e588c3b fix: only raise nil responses for k8s list calls as errors
Empty items should just be treated as such.
2024-12-11 22:56:53 -05:00
Jose Diaz-Gonzalez
83ad01c37b chore: update go modules 2024-12-11 21:56:36 -05:00
Jose Diaz-Gonzalez
3f25b7e247 Merge pull request #7405 from dokku/dependabot/docker/plugins/logs/timberio/vector-0.43.1-debian
chore(deps): bump timberio/vector from 0.42.0-debian to 0.43.1-debian in /plugins/logs
2024-12-11 21:41:00 -05:00
dependabot[bot]
ca3f5a5ebf chore(deps): bump golang.org/x/crypto in /plugins/docker-options
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.30.0 to 0.31.0.
- [Commits](https://github.com/golang/crypto/compare/v0.30.0...v0.31.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-12 00:45:02 +00:00
Jose Diaz-Gonzalez
5fcbd5bbde Merge pull request #7403 from Tashows/fix-ims-k3s-run
Properly resolve imagePullSecrets from app and deploymentID if relevant property does not exist
2024-12-11 11:39:26 -05:00
Jose Diaz-Gonzalez
6d537f5d29 Merge pull request #7407 from dokku/dependabot/docker/plugins/traefik-vhosts/traefik-3.2.2
chore(deps): bump traefik from 3.2.1 to 3.2.2 in /plugins/traefik-vhosts
2024-12-11 09:25:54 -05:00
Jose Diaz-Gonzalez
ed0ba7072f refactor: check to see if a deployment-specific image pull secret exists before utilizing it. 2024-12-11 09:23:44 -05:00
dependabot[bot]
e5047bb27f chore(deps): bump traefik from 3.2.1 to 3.2.2 in /plugins/traefik-vhosts
Bumps traefik from 3.2.1 to 3.2.2.

---
updated-dependencies:
- dependency-name: traefik
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-11 14:05:34 +00:00
Jose Diaz-Gonzalez
f0df778b81 Merge pull request #7402 from dokku/dependabot/go_modules/plugins/common/github.com/onsi/gomega-1.36.1
chore(deps): bump github.com/onsi/gomega from 1.36.0 to 1.36.1 in /plugins/common
2024-12-11 09:03:49 -05:00
dependabot[bot]
1cc50efb9d chore(deps): bump timberio/vector in /plugins/logs
Bumps timberio/vector from 0.42.0-debian to 0.43.1-debian.

---
updated-dependencies:
- dependency-name: timberio/vector
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-11 13:57:09 +00:00
Jose Diaz-Gonzalez
8bbbd12d3d Merge pull request #7404 from dokku/k3s-http-scale-to-zero
Correctly handle scale to zero with the Keda http addon
2024-12-11 08:51:02 -05:00
Jose Diaz-Gonzalez
6374bcef3f Merge pull request #7400 from Tashows/verify-tty-exec
Check if tty is actually used and support proper output when it's not
2024-12-10 21:48:54 -05:00
Jose Diaz-Gonzalez
eff339a165 fix: correctly handle scale to zero with the Keda http addon
There is a bug in the Keda project that caused Keda to incorrectly handle empty trigger lists. If self-managing the ScaledObject when using an HTTPScaledObject, an external-push trigger must be created.

This change additionally updates the chart to fix any potential bugs in usage of keda.
2024-12-10 21:47:55 -05:00
Jose Diaz-Gonzalez
2de443b4fb chore: update go modules 2024-12-10 09:41:01 -05:00
dependabot[bot]
31abb99698 chore(deps): bump github.com/onsi/gomega in /plugins/common
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.36.0 to 1.36.1.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.36.0...v1.36.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-10 09:39:49 -05:00
Jose Diaz-Gonzalez
443757125d Merge pull request #7395 from dokku/7315-appendix
Add documentation for all file formats dokku uses
2024-12-10 09:38:07 -05:00
Jose Diaz-Gonzalez
f355a4e384 Merge pull request #7399 from nonZero/patch-1
docs: add -w 0 to base64 for safe usage in ssh commands
2024-12-10 09:37:57 -05:00
Tasos Maschalidis
1739d5ec16 Check if tty is actually used and support proper output when it's not 2024-12-10 14:31:36 +02:00
Tasos Maschalidis
aa51c37774 Properly resolve imagePullSecrets from app and deploymentID if relevant property does not exist 2024-12-10 14:29:38 +02:00
Udi Oron
dc57774f63 docs: add -w 0 to base64 for safe usage in ssh commands 2024-12-10 13:29:18 +02:00
Jose Diaz-Gonzalez
b25822189e Merge pull request #7390 from dokku/dependabot/go_modules/plugins/common/golang.org/x/crypto-0.30.0
chore(deps): bump golang.org/x/crypto from 0.29.0 to 0.30.0 in /plugins/common
2024-12-09 10:31:42 -05:00
Jose Diaz-Gonzalez
28c1f63871 chore: update go modules 2024-12-09 09:32:49 -05:00
dependabot[bot]
ba11994396 chore(deps): bump golang.org/x/crypto in /plugins/common
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.29.0 to 0.30.0.
- [Commits](https://github.com/golang/crypto/compare/v0.29.0...v0.30.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-09 09:32:23 -05:00
Jose Diaz-Gonzalez
fe41d5c799 Merge pull request #7397 from dokku/dependabot/github_actions/tj-actions/changed-files-45.0.5
chore(deps): bump tj-actions/changed-files from 45.0.4 to 45.0.5
2024-12-09 09:31:55 -05:00
Jose Diaz-Gonzalez
9d5ee0b9ac Merge pull request #7398 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.48
chore(deps): bump mkdocs-material from 9.5.47 to 9.5.48 in /docs/_build
2024-12-09 09:31:47 -05:00
dependabot[bot]
8cf519cf16 chore(deps): bump mkdocs-material from 9.5.47 to 9.5.48 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.47 to 9.5.48.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.47...9.5.48)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-09 13:38:03 +00:00
dependabot[bot]
67147237e4 chore(deps): bump tj-actions/changed-files from 45.0.4 to 45.0.5
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 45.0.4 to 45.0.5.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v45.0.4...v45.0.5)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-09 13:32:03 +00:00
Jose Diaz-Gonzalez
710384ef89 Merge pull request #7394 from dokku/dependabot/pip/tests/apps/dockerfile-release/django-5.0.10
chore(deps): bump django from 5.0.9 to 5.0.10 in /tests/apps/dockerfile-release
2024-12-07 14:47:49 -05:00
Jose Diaz-Gonzalez
8f3f6c49f1 docs: add documentation for all file formats dokku uses
Some files - those maintained by external organizations - have a very light treatment and solely point to the upstream documentation to reduce any issues creating examples/documentation for them that may differ in the future.

Closes #7315
2024-12-07 14:46:58 -05:00
dependabot[bot]
1d250748ca chore(deps): bump django in /tests/apps/dockerfile-release
Bumps [django](https://github.com/django/django) from 5.0.9 to 5.0.10.
- [Commits](https://github.com/django/django/compare/5.0.9...5.0.10)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-06 19:02:25 +00:00
Jose Diaz-Gonzalez
cd5527e07e Merge pull request #7385 from dokku/dependabot/docker/tests/apps/go-fail-predeploy/golang-1.23.4
chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/go-fail-predeploy
2024-12-05 18:53:38 -05:00
Jose Diaz-Gonzalez
3f131bb40d Merge pull request #7386 from dokku/dependabot/docker/tests/apps/zombies-dockerfile-tini/golang-1.23.4
chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/zombies-dockerfile-tini
2024-12-05 18:53:33 -05:00
Jose Diaz-Gonzalez
2491163e92 Merge pull request #7387 from dokku/dependabot/go_modules/tests/apps/gogrpc/google.golang.org/grpc-1.68.1
chore(deps): bump google.golang.org/grpc from 1.68.0 to 1.68.1 in /tests/apps/gogrpc
2024-12-05 18:53:27 -05:00
Jose Diaz-Gonzalez
3005c3e722 Merge pull request #7388 from dokku/dependabot/docker/docs/_build/python-3.13.1-alpine
chore(deps): bump python from 3.13.0-alpine to 3.13.1-alpine in /docs/_build
2024-12-05 18:53:21 -05:00
Jose Diaz-Gonzalez
4bf71f6a66 Merge pull request #7389 from dokku/dependabot/pip/docs/_build/six-1.17.0
chore(deps): bump six from 1.16.0 to 1.17.0 in /docs/_build
2024-12-05 18:53:15 -05:00
Jose Diaz-Gonzalez
40f9687fd1 Merge pull request #7392 from dokku/dependabot/go_modules/plugins/scheduler-docker-local/golang.org/x/sync-0.10.0
chore(deps): bump golang.org/x/sync from 0.9.0 to 0.10.0 in /plugins/scheduler-docker-local
2024-12-05 18:53:09 -05:00
Jose Diaz-Gonzalez
1f22d30eb2 Merge pull request #7393 from dokku/dependabot/docker/tests/apps/dockerfile-release/python-3.13.1-bookworm
chore(deps): bump python from 3.13.0-bookworm to 3.13.1-bookworm in /tests/apps/dockerfile-release
2024-12-05 18:52:47 -05:00
Jose Diaz-Gonzalez
2f7b01aa6f Merge pull request #7384 from dokku/dependabot/docker/tests/apps/gogrpc/golang-1.23.4
chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/gogrpc
2024-12-05 18:52:22 -05:00
Jose Diaz-Gonzalez
f5823abaa0 Merge pull request #7383 from dokku/dependabot/docker/tests/apps/zombies-dockerfile-no-tini/golang-1.23.4
chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/zombies-dockerfile-no-tini
2024-12-05 18:52:08 -05:00
Jose Diaz-Gonzalez
4ce2da89cb Merge pull request #7382 from dokku/dependabot/docker/tests/apps/go-fail-postdeploy/golang-1.23.4
chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/go-fail-postdeploy
2024-12-05 18:47:58 -05:00
dependabot[bot]
e00fbbeedb chore(deps): bump python in /tests/apps/dockerfile-release
Bumps python from 3.13.0-bookworm to 3.13.1-bookworm.

---
updated-dependencies:
- dependency-name: python
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-05 13:59:07 +00:00
dependabot[bot]
99a9fadcab chore(deps): bump golang.org/x/sync in /plugins/scheduler-docker-local
Bumps [golang.org/x/sync](https://github.com/golang/sync) from 0.9.0 to 0.10.0.
- [Commits](https://github.com/golang/sync/compare/v0.9.0...v0.10.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sync
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-05 13:53:40 +00:00
dependabot[bot]
4faa7180bc chore(deps): bump six from 1.16.0 to 1.17.0 in /docs/_build
Bumps [six](https://github.com/benjaminp/six) from 1.16.0 to 1.17.0.
- [Changelog](https://github.com/benjaminp/six/blob/main/CHANGES)
- [Commits](https://github.com/benjaminp/six/compare/1.16.0...1.17.0)

---
updated-dependencies:
- dependency-name: six
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-05 13:35:59 +00:00
dependabot[bot]
b28b86ad9f chore(deps): bump python in /docs/_build
Bumps python from 3.13.0-alpine to 3.13.1-alpine.

---
updated-dependencies:
- dependency-name: python
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-05 13:34:48 +00:00
dependabot[bot]
dfcba6cafc chore(deps): bump google.golang.org/grpc in /tests/apps/gogrpc
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.68.0 to 1.68.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.68.0...v1.68.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-05 13:10:15 +00:00
Jose Diaz-Gonzalez
3bb9bc1e12 Merge pull request #7380 from dokku/7375-unit-test-devcontainer
Run unit tests outside of docker by default
2024-12-04 09:12:32 -05:00
dependabot[bot]
047fe169bb chore(deps): bump golang in /tests/apps/zombies-dockerfile-tini
Bumps golang from 1.23.3 to 1.23.4.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-04 14:00:27 +00:00
dependabot[bot]
7cf5688273 chore(deps): bump golang in /tests/apps/go-fail-predeploy
Bumps golang from 1.23.3 to 1.23.4.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-04 13:47:52 +00:00
dependabot[bot]
d41e7f0f81 chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/gogrpc
Bumps golang from 1.23.3 to 1.23.4.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-04 13:47:44 +00:00
dependabot[bot]
2c3e5c8eb7 chore(deps): bump golang in /tests/apps/zombies-dockerfile-no-tini
Bumps golang from 1.23.3 to 1.23.4.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-04 13:45:42 +00:00
dependabot[bot]
868c8c3f3a chore(deps): bump golang in /tests/apps/go-fail-postdeploy
Bumps golang from 1.23.3 to 1.23.4.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-04 13:41:43 +00:00
Jose Diaz-Gonzalez
f20a6a2563 tests: run unit tests outside of docker by default
This allows execution of unit tests within the devcontainer environment, which already has the correct golang.
2024-12-03 21:45:41 -05:00
Dokku Bot
2321f016d9 Release 0.35.12
# History

## 0.35.12

Install/update via the bootstrap script:

```shell
wget -NP . https://dokku.com/install/v0.35.12/bootstrap.sh
sudo DOKKU_TAG=v0.35.12 bash bootstrap.sh
```

### Bug Fixes

- #7361: @josegonzalez Allow autoscaling config to have zero min replicas

### New Features

- #7379: @josegonzalez Provide ability to customize chart values via `scheduler-k3s:set`

### Documentation

- #7365: @binchengqu Correct some documentation types

### Dependencies

- #7378: @josegonzalez Update go modules
- #7376: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.46 to 9.5.47 in /docs/_build
- #7370: @dependabot[bot] chore(deps): bump github.com/onsi/gomega from 1.35.1 to 1.36.0 in /plugins/common
- #7377: @dependabot[bot] chore(deps): bump github.com/traefik/traefik/v2 from 2.11.9 to 2.11.14 in /plugins/scheduler-k3s
- #7369: @dependabot[bot] chore(deps): bump github.com/onsi/gomega from 1.35.1 to 1.36.0 in /plugins/config
- #7371: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.45 to 9.5.46 in /docs/_build
- #7366: @dependabot[bot] chore(deps): bump traefik from 3.2.0 to 3.2.1 in /plugins/traefik-vhosts
- #7364: @dependabot[bot] chore(deps): bump github.com/cert-manager/cert-manager from 1.13.3 to 1.15.4 in /plugins/scheduler-k3s
- #7363: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.44 to 9.5.45 in /docs/_build
- #7360: @dependabot[bot] chore(deps): bump flask from 3.0.3 to 3.1.0 in /tests/apps/python-flask
- #7358: @dependabot[bot] chore(deps): bump google.golang.org/protobuf from 1.35.1 to 1.35.2 in /tests/apps/gogrpc
- #7359: @dependabot[bot] chore(deps): bump flask from 3.0.3 to 3.1.0 in /tests/apps/multi
2024-12-03 07:47:54 +00:00
Jose Diaz-Gonzalez
c479c73331 Merge pull request #7379 from dokku/scheduler-k3s-charts-set 2024-12-03 02:46:25 -05:00
Jose Diaz-Gonzalez
8d08687706 feat: provide ability to customize chart values via scheduler-k3s:set
Dokku ships with default charts and customizes their helm values. In certain cases, it may be useful to further customize those values to better support specific installations. With this change, it is now possible to set custom values by providing the key in the format `chart.$CHART_NAME.$PROPERTY`. For instance, to increase timeouts for the keda http addon:

```shell
dokku scheduler-k3s:set --global chart.keda-add-ons-http.interceptor.tcpConnectTimeout 120s
dokku scheduler-k3s:set --global chart.keda-add-ons-http.interceptor.keepAlive 120s
dokku scheduler-k3s:set --global chart.keda-add-ons-http.interceptor.responseHeaderTimeout 120s
dokku scheduler-k3s:set --global chart.keda-add-ons-http.interceptor.idleConnTimeout 120s
dokku scheduler-k3s:set --global chart.keda-add-ons-http.interceptor.tlsHandshakeTimeout 120s
dokku scheduler-k3s:set --global chart.keda-add-ons-http.interceptor.expectContinueTimeout 120s
```

To reset a value to its default, simply set the value to an empty string.

```shell
dokku scheduler-k3s:set --global chart.keda-add-ons-http.interceptor.tcpConnectTimeout
```

Once the values are set, users will need to then run `scheduler-k3s:ensure-charts` with either the `--force` flag or specify the `--chart` flag with a list of charts to force apply.

```shell
dokku scheduler-k3s:ensure-charts --force

dokku scheduler-k3s:ensure-charts --chart keda-add-ons-http
```

Note that the existing dokku-provided values cannot be removed, but can be overridden.
2024-12-03 02:07:36 -05:00
Jose Diaz-Gonzalez
bfb95e632c tests: revert change to scheduler-k3s bats tests 2024-12-03 00:55:50 -05:00
Jose Diaz-Gonzalez
43a771e35a Merge pull request #7378 from dokku/update-go
Update go modules
2024-12-03 00:54:36 -05:00
Jose Diaz-Gonzalez
f685b5cedc chore: update go modules 2024-12-03 00:54:04 -05:00
Jose Diaz-Gonzalez
422fcfd9e3 Merge pull request #7376 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.47
chore(deps): bump mkdocs-material from 9.5.46 to 9.5.47 in /docs/_build
2024-12-03 00:46:08 -05:00
Jose Diaz-Gonzalez
1a7ddd1797 Merge pull request #7370 from dokku/dependabot/go_modules/plugins/common/github.com/onsi/gomega-1.36.0
chore(deps): bump github.com/onsi/gomega from 1.35.1 to 1.36.0 in /plugins/common
2024-12-03 00:46:00 -05:00
Jose Diaz-Gonzalez
78bf7977f3 Merge pull request #7377 from dokku/dependabot/go_modules/plugins/scheduler-k3s/github.com/traefik/traefik/v2-2.11.14
chore(deps): bump github.com/traefik/traefik/v2 from 2.11.9 to 2.11.14 in /plugins/scheduler-k3s
2024-12-03 00:45:51 -05:00
dependabot[bot]
9979ee2eab chore(deps): bump github.com/traefik/traefik/v2
Bumps [github.com/traefik/traefik/v2](https://github.com/traefik/traefik) from 2.11.9 to 2.11.14.
- [Release notes](https://github.com/traefik/traefik/releases)
- [Changelog](https://github.com/traefik/traefik/blob/master/CHANGELOG.md)
- [Commits](https://github.com/traefik/traefik/compare/v2.11.9...v2.11.14)

---
updated-dependencies:
- dependency-name: github.com/traefik/traefik/v2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-02 17:14:53 +00:00
dependabot[bot]
a8487af7a5 chore(deps): bump mkdocs-material from 9.5.46 to 9.5.47 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.46 to 9.5.47.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.46...9.5.47)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-02 15:03:54 +00:00
dependabot[bot]
4c7691dcfa chore(deps): bump github.com/onsi/gomega in /plugins/common
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.35.1 to 1.36.0.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.35.1...v1.36.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-01 08:44:18 +00:00
Jose Diaz-Gonzalez
ab232c3f27 Merge pull request #7369 from dokku/dependabot/go_modules/plugins/config/github.com/onsi/gomega-1.36.0
chore(deps): bump github.com/onsi/gomega from 1.35.1 to 1.36.0 in /plugins/config
2024-12-01 03:43:39 -05:00
Jose Diaz-Gonzalez
3c0256c930 Merge pull request #7371 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.46
chore(deps): bump mkdocs-material from 9.5.45 to 9.5.46 in /docs/_build
2024-11-25 19:57:50 -05:00
dependabot[bot]
b387f54c4a chore(deps): bump mkdocs-material from 9.5.45 to 9.5.46 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.45 to 9.5.46.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.45...9.5.46)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-25 13:55:14 +00:00
dependabot[bot]
a3bc436f53 chore(deps): bump github.com/onsi/gomega in /plugins/config
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.35.1 to 1.36.0.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.35.1...v1.36.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-25 13:18:58 +00:00
Jose Diaz-Gonzalez
a3644aa1ba Merge pull request #7366 from dokku/dependabot/docker/plugins/traefik-vhosts/traefik-3.2.1
chore(deps): bump traefik from 3.2.0 to 3.2.1 in /plugins/traefik-vhosts
2024-11-22 14:33:56 -05:00
dependabot[bot]
54a73c8288 chore(deps): bump traefik from 3.2.0 to 3.2.1 in /plugins/traefik-vhosts
Bumps traefik from 3.2.0 to 3.2.1.

---
updated-dependencies:
- dependency-name: traefik
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-21 17:43:39 +00:00
Jose Diaz-Gonzalez
f2986195bd Merge pull request #7364 from dokku/dependabot/go_modules/plugins/scheduler-k3s/github.com/cert-manager/cert-manager-1.15.4
chore(deps): bump github.com/cert-manager/cert-manager from 1.13.3 to 1.15.4 in /plugins/scheduler-k3s
2024-11-21 12:42:43 -05:00
Jose Diaz-Gonzalez
54303a4d00 Merge pull request #7365 from binchengqu/master
chore: fix some typos in markdown file
2024-11-21 12:42:32 -05:00
Jose Diaz-Gonzalez
7b09c726cc Merge pull request #7363 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.45
chore(deps): bump mkdocs-material from 9.5.44 to 9.5.45 in /docs/_build
2024-11-21 12:42:07 -05:00
binchengqu
bd1779d53d chore: fix some typos in markdown file
Signed-off-by: binchengqu <bincheng@before.tech>
2024-11-21 12:06:14 +08:00
dependabot[bot]
5fbbb27a99 chore(deps): bump github.com/cert-manager/cert-manager
Bumps [github.com/cert-manager/cert-manager](https://github.com/cert-manager/cert-manager) from 1.13.3 to 1.15.4.
- [Release notes](https://github.com/cert-manager/cert-manager/releases)
- [Changelog](https://github.com/cert-manager/cert-manager/blob/master/RELEASE.md)
- [Commits](https://github.com/cert-manager/cert-manager/compare/v1.13.3...v1.15.4)

---
updated-dependencies:
- dependency-name: github.com/cert-manager/cert-manager
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-20 20:49:41 +00:00
dependabot[bot]
598cde07fb chore(deps): bump mkdocs-material from 9.5.44 to 9.5.45 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.44 to 9.5.45.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.44...9.5.45)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-20 13:56:21 +00:00
Jose Diaz-Gonzalez
bfd5866cb0 Merge pull request #7360 from dokku/dependabot/pip/tests/apps/python-flask/flask-3.1.0
chore(deps): bump flask from 3.0.3 to 3.1.0 in /tests/apps/python-flask
2024-11-15 23:20:03 -05:00
Jose Diaz-Gonzalez
2dcbdd601a Merge pull request #7361 from dokku/allow-zero-min-replicas
Allow autoscaling config to have zero min replicas
2024-11-15 23:19:54 -05:00
Jose Diaz-Gonzalez
50f8099ebb fix: allow autoscaling config to have zero min replicas 2024-11-15 23:11:54 -05:00
Jose Diaz-Gonzalez
fcb590d227 Merge pull request #7358 from dokku/dependabot/go_modules/tests/apps/gogrpc/google.golang.org/protobuf-1.35.2
chore(deps): bump google.golang.org/protobuf from 1.35.1 to 1.35.2 in /tests/apps/gogrpc
2024-11-14 20:56:06 -05:00
Jose Diaz-Gonzalez
1d48313dcf Merge pull request #7359 from dokku/dependabot/pip/tests/apps/multi/flask-3.1.0
chore(deps): bump flask from 3.0.3 to 3.1.0 in /tests/apps/multi
2024-11-14 20:56:00 -05:00
dependabot[bot]
3f4206fe4e chore(deps): bump flask from 3.0.3 to 3.1.0 in /tests/apps/python-flask
Bumps [flask](https://github.com/pallets/flask) from 3.0.3 to 3.1.0.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/3.0.3...3.1.0)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-14 13:39:38 +00:00
dependabot[bot]
984aa362ed chore(deps): bump flask from 3.0.3 to 3.1.0 in /tests/apps/multi
Bumps [flask](https://github.com/pallets/flask) from 3.0.3 to 3.1.0.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/3.0.3...3.1.0)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-14 13:27:49 +00:00
dependabot[bot]
7db5937bb2 chore(deps): bump google.golang.org/protobuf in /tests/apps/gogrpc
Bumps google.golang.org/protobuf from 1.35.1 to 1.35.2.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-14 13:18:39 +00:00
Dokku Bot
3e7fc28ab9 Release 0.35.11
# History

## 0.35.11

Install/update via the bootstrap script:

```shell
wget -NP . https://dokku.com/install/v0.35.11/bootstrap.sh
sudo DOKKU_TAG=v0.35.11 bash bootstrap.sh
```

### Bug Fixes

- #7353: @indrat Add missing export DOKKU_LIB_HOST_ROOT when running dokku in container

### New Features

- #7355: @josegonzalez Add support for http-based scaling when deploying on the k3s scheduler

### Documentation

- #7349: @josegonzalez Create .well-known/funding-manifest-urls

### Dependencies

- #7345: @dependabot[bot] chore(deps): bump google.golang.org/grpc from 1.67.1 to 1.68.0 in /tests/apps/gogrpc
- #7350: @dependabot[bot] chore(deps): bump zipp from 3.20.2 to 3.21.0 in /docs/_build
- #7351: @dependabot[bot] chore(deps): bump werkzeug from 3.1.2 to 3.1.3 in /tests/apps/python-flask
- #7347: @dependabot[bot] chore(deps): bump golang.org/x/crypto from 0.28.0 to 0.29.0 in /plugins/common
- #7348: @dependabot[bot] chore(deps): bump golang.org/x/sync from 0.8.0 to 0.9.0 in /plugins/common
- #7344: @dependabot[bot] chore(deps): bump tj-actions/changed-files from 45.0.3 to 45.0.4
- #7343: @dependabot[bot] chore(deps): bump golang.org/x/sync from 0.8.0 to 0.9.0 in /plugins/scheduler-docker-local
- #7342: @dependabot[bot] chore(deps): bump packaging from 24.1 to 24.2 in /docs/_build
- #7341: @dependabot[bot] chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/zombies-dockerfile-tini
- #7340: @dependabot[bot] chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/gogrpc
- #7339: @dependabot[bot] chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/go-fail-predeploy
- #7338: @dependabot[bot] chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/zombies-dockerfile-no-tini
- #7337: @dependabot[bot] chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/go-fail-postdeploy
- #7335: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.43 to 9.5.44 in /docs/_build
- #7334: @dependabot[bot] chore(deps): bump ruby from 3.3.5 to 3.3.6 in /tests/apps/dockerfile-entrypoint
- #7333: @dependabot[bot] chore(deps): bump werkzeug from 3.1.1 to 3.1.2 in /tests/apps/python-flask

### Other

- #7357: @josegonzalez Run brew cleanup before running brew doctor
2024-11-14 06:42:26 +00:00
Jose Diaz-Gonzalez
ddf82aa900 Merge pull request #7357 from dokku/josegonzalez-patch-1
feat: run brew cleanup before running brew doctor
2024-11-14 01:40:32 -05:00
Jose Diaz-Gonzalez
fc3716c0e9 feat: run brew cleanup before running brew doctor 2024-11-14 01:40:14 -05:00
Jose Diaz-Gonzalez
d63e05f4ef Merge pull request #7355 from dokku/k3s-keda-http-add-on 2024-11-14 01:32:59 -05:00
Jose Diaz-Gonzalez
dcdbe22d86 fix: add tolerations for keda 2024-11-13 20:13:38 -05:00
Jose Diaz-Gonzalez
44eab143ab fix: do not perform nil lookup 2024-11-13 17:10:41 -05:00
Jose Diaz-Gonzalez
4c0f415bad Merge pull request #7353 from indrat/fix-missing-dokku-lib-host-root-for-docker-container
Add missing export DOKKU_LIB_HOST_ROOT when running dokku in container
2024-11-13 04:27:19 -05:00
Jose Diaz-Gonzalez
6cb97e75c9 fix: update the master commit for the smoke-test-app repo 2024-11-13 04:06:58 -05:00
Jose Diaz-Gonzalez
52f08ff793 fix: do not perform nil lookup 2024-11-13 04:06:37 -05:00
Jose Diaz-Gonzalez
cd9f72db09 Merge pull request #7345 from dokku/dependabot/go_modules/tests/apps/gogrpc/google.golang.org/grpc-1.68.0
chore(deps): bump google.golang.org/grpc from 1.67.1 to 1.68.0 in /tests/apps/gogrpc
2024-11-13 03:34:42 -05:00
Jose Diaz-Gonzalez
56518de40b Merge pull request #7350 from dokku/dependabot/pip/docs/_build/zipp-3.21.0
chore(deps): bump zipp from 3.20.2 to 3.21.0 in /docs/_build
2024-11-13 03:34:33 -05:00
Jose Diaz-Gonzalez
b9c2f8fd49 Merge pull request #7351 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-3.1.3
chore(deps): bump werkzeug from 3.1.2 to 3.1.3 in /tests/apps/python-flask
2024-11-13 03:34:22 -05:00
Jose Diaz-Gonzalez
f2a4fe493a fix: do not force-reinstall the keda-http-add-on 2024-11-13 03:29:54 -05:00
Jose Diaz-Gonzalez
b98863b6a7 feat: add support for the keda-http-add-on
Externally, it is treated the same as any other scaling trigger, but requires that the chart be installed in order for it to be supported.
2024-11-13 03:29:26 -05:00
Jose Diaz-Gonzalez
1751bf30ba feat: install the keda-http-add-on 2024-11-13 02:15:47 -05:00
Jose Diaz-Gonzalez
7e406436fa fix: do not shadow the trigger variable 2024-11-13 02:15:18 -05:00
Jose Diaz-Gonzalez
62f25ad33f feat: give the trigger a default name if none is specified 2024-11-13 02:14:54 -05:00
Jose Diaz-Gonzalez
785af1611c fix: error if there is no type for the trigger specified 2024-11-13 02:14:29 -05:00
Jose Diaz-Gonzalez
f8d2768816 feat: default to no triggers on any created ScaledObject 2024-11-13 02:05:20 -05:00
Jose Diaz-Gonzalez
8aa311131e feat: add scheduler-k3s:ensure-charts
This command can be used to ensure charts are properly installed and configured according to Dokku's internal settings.
2024-11-13 01:18:40 -05:00
Jose Diaz-Gonzalez
69f94f64f0 fix: correct issue with locating existing chart 2024-11-13 01:17:27 -05:00
indra
d211c6bbc9 fix: missing export DOKKU_LIB_HOST_ROOT
Populates DOKKU_LIB_HOST_ROOT into /etc/default/dokku which is required
to enable plugins such as postgres to store data in the correct location.
2024-11-12 20:03:09 +11:00
dependabot[bot]
8a773cdf66 chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/3.1.2...3.1.3)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-11 13:54:17 +00:00
dependabot[bot]
851eb06d5e chore(deps): bump zipp from 3.20.2 to 3.21.0 in /docs/_build
Bumps [zipp](https://github.com/jaraco/zipp) from 3.20.2 to 3.21.0.
- [Release notes](https://github.com/jaraco/zipp/releases)
- [Changelog](https://github.com/jaraco/zipp/blob/main/NEWS.rst)
- [Commits](https://github.com/jaraco/zipp/compare/v3.20.2...v3.21.0)

---
updated-dependencies:
- dependency-name: zipp
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-11 13:17:15 +00:00
Jose Diaz-Gonzalez
a74f47d19c fix: update herokuish and ensure usage of a supported version of golang
The official heroku buildpack doesn't support the latest patch just yet.
2024-11-11 00:21:21 -05:00
Jose Diaz-Gonzalez
08157dde81 chore: update go modules 2024-11-10 16:28:13 -05:00
dependabot[bot]
ce1797cdb5 chore(deps): bump google.golang.org/grpc in /tests/apps/gogrpc
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.67.1 to 1.68.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.67.1...v1.68.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-10 16:25:47 -05:00
Jose Diaz-Gonzalez
025c8f6ad1 Merge pull request #7347 from dokku/dependabot/go_modules/plugins/common/golang.org/x/crypto-0.29.0
chore(deps): bump golang.org/x/crypto from 0.28.0 to 0.29.0 in /plugins/common
2024-11-10 16:23:51 -05:00
dependabot[bot]
14e2f003e2 chore(deps): bump golang.org/x/crypto in /plugins/common
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.28.0 to 0.29.0.
- [Commits](https://github.com/golang/crypto/compare/v0.28.0...v0.29.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-10 03:22:08 -05:00
Jose Diaz-Gonzalez
96c535923d Merge pull request #7348 from dokku/dependabot/go_modules/plugins/common/golang.org/x/sync-0.9.0
chore(deps): bump golang.org/x/sync from 0.8.0 to 0.9.0 in /plugins/common
2024-11-10 03:21:22 -05:00
Jose Diaz-Gonzalez
eea6a57e1f Merge pull request #7349 from dokku/josegonzalez-patch-1
chore: create .well-known/funding-manifest-urls
2024-11-10 02:19:17 -05:00
Jose Diaz-Gonzalez
abb6ccf08d chore: create .well-known/funding-manifest-urls 2024-11-10 02:19:09 -05:00
Jose Diaz-Gonzalez
6a7e65dd82 chore: update go modules 2024-11-10 01:11:52 -05:00
dependabot[bot]
326e52e5f8 chore(deps): bump golang.org/x/sync in /plugins/common
Bumps [golang.org/x/sync](https://github.com/golang/sync) from 0.8.0 to 0.9.0.
- [Commits](https://github.com/golang/sync/compare/v0.8.0...v0.9.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sync
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-10 01:11:43 -05:00
Jose Diaz-Gonzalez
e050f2437b Merge pull request #7344 from dokku/dependabot/github_actions/tj-actions/changed-files-45.0.4
chore(deps): bump tj-actions/changed-files from 45.0.3 to 45.0.4
2024-11-09 22:07:21 -05:00
Jose Diaz-Gonzalez
c052ff5c9e Merge pull request #7343 from dokku/dependabot/go_modules/plugins/scheduler-docker-local/golang.org/x/sync-0.9.0
chore(deps): bump golang.org/x/sync from 0.8.0 to 0.9.0 in /plugins/scheduler-docker-local
2024-11-09 22:07:15 -05:00
Jose Diaz-Gonzalez
c25d7932e7 Merge pull request #7342 from dokku/dependabot/pip/docs/_build/packaging-24.2
chore(deps): bump packaging from 24.1 to 24.2 in /docs/_build
2024-11-09 22:07:11 -05:00
Jose Diaz-Gonzalez
df7acfdd89 Merge pull request #7341 from dokku/dependabot/docker/tests/apps/zombies-dockerfile-tini/golang-1.23.3
chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/zombies-dockerfile-tini
2024-11-09 22:06:57 -05:00
Jose Diaz-Gonzalez
aab41a7b2d Merge pull request #7340 from dokku/dependabot/docker/tests/apps/gogrpc/golang-1.23.3
chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/gogrpc
2024-11-09 22:06:51 -05:00
Jose Diaz-Gonzalez
587bd2239f Merge pull request #7339 from dokku/dependabot/docker/tests/apps/go-fail-predeploy/golang-1.23.3
chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/go-fail-predeploy
2024-11-09 22:06:40 -05:00
Jose Diaz-Gonzalez
d4f543dcf6 Merge pull request #7338 from dokku/dependabot/docker/tests/apps/zombies-dockerfile-no-tini/golang-1.23.3
chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/zombies-dockerfile-no-tini
2024-11-09 22:06:34 -05:00
Jose Diaz-Gonzalez
49b6522e3b Merge pull request #7337 from dokku/dependabot/docker/tests/apps/go-fail-postdeploy/golang-1.23.3
chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/go-fail-postdeploy
2024-11-09 22:06:25 -05:00
Jose Diaz-Gonzalez
9fbeab43f7 Merge pull request #7335 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.44
chore(deps): bump mkdocs-material from 9.5.43 to 9.5.44 in /docs/_build
2024-11-09 22:06:18 -05:00
Jose Diaz-Gonzalez
22afaf202d Merge pull request #7334 from dokku/dependabot/docker/tests/apps/dockerfile-entrypoint/ruby-3.3.6
chore(deps): bump ruby from 3.3.5 to 3.3.6 in /tests/apps/dockerfile-entrypoint
2024-11-09 22:05:57 -05:00
dependabot[bot]
575dc41c30 chore(deps): bump tj-actions/changed-files from 45.0.3 to 45.0.4
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 45.0.3 to 45.0.4.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v45.0.3...v45.0.4)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-08 13:16:16 +00:00
dependabot[bot]
472c5f9b44 chore(deps): bump golang.org/x/sync in /plugins/scheduler-docker-local
Bumps [golang.org/x/sync](https://github.com/golang/sync) from 0.8.0 to 0.9.0.
- [Commits](https://github.com/golang/sync/compare/v0.8.0...v0.9.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sync
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-08 13:14:36 +00:00
dependabot[bot]
b6f92bf7c2 chore(deps): bump packaging from 24.1 to 24.2 in /docs/_build
Bumps [packaging](https://github.com/pypa/packaging) from 24.1 to 24.2.
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/packaging/compare/24.1...24.2)

---
updated-dependencies:
- dependency-name: packaging
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-08 13:08:51 +00:00
dependabot[bot]
3ef9ee3c60 chore(deps): bump golang in /tests/apps/zombies-dockerfile-tini
Bumps golang from 1.23.2 to 1.23.3.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-07 13:55:25 +00:00
dependabot[bot]
1d93611ee7 chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/gogrpc
Bumps golang from 1.23.2 to 1.23.3.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-07 13:26:05 +00:00
dependabot[bot]
044cc34b13 chore(deps): bump golang in /tests/apps/go-fail-predeploy
Bumps golang from 1.23.2 to 1.23.3.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-07 13:19:45 +00:00
dependabot[bot]
ecd603a9cf chore(deps): bump golang in /tests/apps/zombies-dockerfile-no-tini
Bumps golang from 1.23.2 to 1.23.3.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-07 13:09:21 +00:00
dependabot[bot]
7a4df6cc1a chore(deps): bump golang in /tests/apps/go-fail-postdeploy
Bumps golang from 1.23.2 to 1.23.3.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-07 13:04:40 +00:00
dependabot[bot]
9fc73d258f chore(deps): bump mkdocs-material from 9.5.43 to 9.5.44 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.43 to 9.5.44.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.43...9.5.44)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-06 13:48:20 +00:00
dependabot[bot]
19a19f10d6 chore(deps): bump ruby in /tests/apps/dockerfile-entrypoint
Bumps ruby from 3.3.5 to 3.3.6.

---
updated-dependencies:
- dependency-name: ruby
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-06 13:09:13 +00:00
Jose Diaz-Gonzalez
9c7ce581e7 Merge pull request #7333 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-3.1.2
chore(deps): bump werkzeug from 3.1.1 to 3.1.2 in /tests/apps/python-flask
2024-11-05 10:09:00 -05:00
dependabot[bot]
c2f5609ea2 chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/3.1.1...3.1.2)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-05 13:25:55 +00:00
Dokku Bot
1bb1fbbc84 Release 0.35.10
# History

## 0.35.10

Install/update via the bootstrap script:

```shell
wget -NP . https://dokku.com/install/v0.35.10/bootstrap.sh
sudo DOKKU_TAG=v0.35.10 bash bootstrap.sh
```

### Bug Fixes

- #7324: @josegonzalez Correctly pull the deployment id from an app's helm values when executing dokku run under the k3s scheduler
- #7332: @josegonzalez Drop the pod name from stdout output when creating one-off containers under the k3s scheduler
- #7331: @josegonzalez Output logs for completed containers launched by the k3s scheduler
- #7330: @josegonzalez Disable stdio buffering so log coloring happens normally when fetching logs for k3s-scheduler managed apps
- #7329: @josegonzalez Correctly wait for one-off k3s pods to be ready
- #7328: @josegonzalez Execute one-off commands with DOKKU_APP_SHELL as the initial command under the k3s scheduler
- #7323: @josegonzalez Correct errors in brew doctor output when making a formula release

### Dependencies

- #7327: @dependabot[bot] chore(deps): bump watchdog from 5.0.3 to 6.0.0 in /docs/_build
- #7326: @dependabot[bot] chore(deps): bump werkzeug from 3.1.0 to 3.1.1 in /tests/apps/python-flask
2024-11-04 22:37:37 +00:00
Jose Diaz-Gonzalez
01345f2bbf Merge pull request #7324 from dokku/fix-k3s-run
Correctly pull the deployment id from an app's helm values when executing dokku run under the k3s scheduler
2024-11-04 15:56:12 -05:00
Jose Diaz-Gonzalez
fd2cfe8080 fix: correctly pull the deployment id from an app's helm values when executing dokku run under the k3s scheduler
- Fix the internal identifier of deployment_id -> deployment_id
- Add tests for both enter and run.
2024-11-04 14:44:25 -05:00
Jose Diaz-Gonzalez
ef061ef32b Merge pull request #7332 from dokku/k3s-drop-pod-name
Drop the pod name from stdout output
2024-11-04 14:43:25 -05:00
Jose Diaz-Gonzalez
50244bf8ea chore: drop the pod name from stdout output
This adds unexpected output to the command, making parsing more difficult.
2024-11-04 14:42:53 -05:00
Jose Diaz-Gonzalez
b509aa7df1 Merge pull request #7331 from dokku/k3s-one-off-fixes
Output logs for completed containers launched by the k3s scheduler
2024-11-04 14:42:20 -05:00
Jose Diaz-Gonzalez
ec41dd2e70 refactor: output logs for completed containers
Previously, a container that exited immediately would just show an error message, which is probably not what we want.

If the pod has exited, we will display the logs on stdout for the user and then exit appropriately.

This change also refactors how log streaming works so that we respect exiting when the stream has no content (such as when the container has exited). Previously, the container would just hang around forever due to not being properly canceled. Due to this refactor, the prefix is now split out into a separate writer.
2024-11-04 14:41:42 -05:00
Jose Diaz-Gonzalez
2368161132 Merge pull request #7330 from dokku/k3s-color-buffering
Disable stdio buffering so log coloring happens normally when fetching logs for k3s-scheduler managed apps
2024-11-04 14:40:24 -05:00
Jose Diaz-Gonzalez
420656ea95 fix: disable stdio buffering so log coloring happens normally 2024-11-04 14:39:39 -05:00
Jose Diaz-Gonzalez
827adada11 Merge pull request #7329 from dokku/k3s-correct-wait
Correctly wait for one-off k3s pods to be ready
2024-11-04 14:38:50 -05:00
Jose Diaz-Gonzalez
adffab13d9 fix: correctly wait for the pod to be ready 2024-11-04 14:38:06 -05:00
Jose Diaz-Gonzalez
62125c5b72 Merge pull request #7328 from dokku/k3s-command-once
Execute one-off commands with DOKKU_APP_SHELL as the initial command under the k3s scheduler
2024-11-04 14:36:01 -05:00
Jose Diaz-Gonzalez
c3a573229d refactor: execute one-off commands with DOKKU_APP_SHELL as the initial command
This commit changes the launched pod to use the configured DOKKU_APP_SHELL - default /bin/bash - to launch processes. Without this, if a non-interactive process was executed and did not immediately exit, it was possible for that process to launch twice - once when the pod started, and once when entering the pod. Ideally we know whether the process is interactive or not, but this isn't always possible when running under a tty (non-tty == non-interactive). As such, this also removes the ability to launch one-off containers that do not have a configured shell in the container, but this is better than attempting to run commands twice.
2024-11-04 14:29:34 -05:00
Jose Diaz-Gonzalez
b979a32abf Merge pull request #7327 from dokku/dependabot/pip/docs/_build/watchdog-6.0.0
chore(deps): bump watchdog from 5.0.3 to 6.0.0 in /docs/_build
2024-11-04 10:49:55 -05:00
Jose Diaz-Gonzalez
66ca301ca9 Merge pull request #7326 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-3.1.1
chore(deps): bump werkzeug from 3.1.0 to 3.1.1 in /tests/apps/python-flask
2024-11-04 10:49:47 -05:00
dependabot[bot]
7e4835801d chore(deps): bump watchdog from 5.0.3 to 6.0.0 in /docs/_build
Bumps [watchdog](https://github.com/gorakhargosh/watchdog) from 5.0.3 to 6.0.0.
- [Release notes](https://github.com/gorakhargosh/watchdog/releases)
- [Changelog](https://github.com/gorakhargosh/watchdog/blob/master/changelog.rst)
- [Commits](https://github.com/gorakhargosh/watchdog/compare/v5.0.3...v6.0.0)

---
updated-dependencies:
- dependency-name: watchdog
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 13:26:54 +00:00
dependabot[bot]
2d109c7630 chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/3.1.0...3.1.1)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 13:20:34 +00:00
Jose Diaz-Gonzalez
5d97f90fd8 Merge pull request #7323 from dokku/josegonzalez-patch-1
Correct errors in brew doctor output when making a formula release
2024-11-03 14:23:16 -05:00
Jose Diaz-Gonzalez
84272b4725 fix: correct errors in brew doctor output when making a formula release
The default homebrew setup with the macos-latest runners has issues that cause `brew doctor` to exit non-zero. The exit codes of the commands are ignored in case they are no longer necessary in the future.
2024-11-03 14:22:31 -05:00
Dokku Bot
49af0bf631 Release 0.35.9
# History

## 0.35.9

Install/update via the bootstrap script:

```shell
wget -NP . https://dokku.com/install/v0.35.9/bootstrap.sh
sudo DOKKU_TAG=v0.35.9 bash bootstrap.sh
```

### Bug Fixes

- #7321: @josegonzalez Allow nginx commands when the scheduler is set to null
- #7313: @Tashows Remove prefixing releaseName with 'dokku-' in UninstallChart and GetValues calls in  scheduler-k3s/triggers.go

### New Features

- #7322: @josegonzalez Add debugging information to brew bump-formula-pr

### Documentation

- #7312: @toanalien Fix typo in nginx documentation

### Dependencies

- #7320: @dependabot[bot] chore(deps): bump github.com/onsi/gomega from 1.34.2 to 1.35.1 in /plugins/common
- #7311: @dependabot[bot] chore(deps): bump traefik from 3.1.6 to 3.2.0 in /plugins/traefik-vhosts
- #7300: @dependabot[bot] chore(deps): bump github.com/fatih/color from 1.17.0 to 1.18.0 in /plugins/common
- #7319: @dependabot[bot] chore(deps): bump werkzeug from 3.0.6 to 3.1.0 in /tests/apps/python-flask
- #7317: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.42 to 9.5.43 in /docs/_build
- #7310: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.11.2 to 10.12 in /docs/_build
- #7299: @dependabot[bot] chore(deps): bump timberio/vector from 0.41.1-debian to 0.42.0-debian in /plugins/logs
- #7306: @dependabot[bot] chore(deps): bump org.apache.maven.plugins:maven-dependency-plugin from 3.8.0 to 3.8.1 in /tests/apps/java
- #7305: @dependabot[bot] chore(deps): bump werkzeug from 3.0.4 to 3.0.6 in /tests/apps/python-flask
2024-11-03 04:46:02 +00:00
Jose Diaz-Gonzalez
80cf483ded Merge pull request #7321 from dokku/fix-nginx-commands
Allow nginx commands when the scheduler is set to null
2024-11-03 00:34:53 -04:00
Jose Diaz-Gonzalez
90a9d69cdf Merge pull request #7322 from dokku/brew-debug
Add debugging information to brew bump-formula-pr
2024-11-03 00:34:40 -04:00
Jose Diaz-Gonzalez
010952e9c0 feat: add debugging information to brew bump-formula-pr
This will let us better file reports upstream.
2024-11-03 00:07:19 -04:00
Jose Diaz-Gonzalez
0cb1adb38a fix: allow nginx commands when the scheduler is set to null 2024-11-03 00:01:19 -04:00
Jose Diaz-Gonzalez
e304fb11f2 Merge pull request #7320 from dokku/dependabot/go_modules/plugins/common/github.com/onsi/gomega-1.35.1
chore(deps): bump github.com/onsi/gomega from 1.34.2 to 1.35.1 in /plugins/common
2024-11-02 23:07:20 -04:00
Jose Diaz-Gonzalez
ae0ce1510a chore: bump go modules 2024-11-02 22:14:25 -04:00
dependabot[bot]
f24009919e chore(deps): bump github.com/onsi/gomega in /plugins/common
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.34.2 to 1.35.1.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.34.2...v1.35.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-02 21:48:12 +00:00
Jose Diaz-Gonzalez
113ac52c4e Merge pull request #7311 from dokku/dependabot/docker/plugins/traefik-vhosts/traefik-3.2.0
chore(deps): bump traefik from 3.1.6 to 3.2.0 in /plugins/traefik-vhosts
2024-11-02 17:47:29 -04:00
Jose Diaz-Gonzalez
fa63920938 Merge pull request #7300 from dokku/dependabot/go_modules/plugins/common/github.com/fatih/color-1.18.0
chore(deps): bump github.com/fatih/color from 1.17.0 to 1.18.0 in /plugins/common
2024-11-02 17:46:57 -04:00
Jose Diaz-Gonzalez
014c9f518f Merge pull request #7313 from Tashows/fix_release_name
Remove prefixing releaseName with 'dokku-' in UninstallChart and GetValues calls in  scheduler-k3s/triggers.go
2024-11-01 21:29:40 -04:00
Jose Diaz-Gonzalez
128e4bf9da Merge pull request #7319 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-3.1.0
chore(deps): bump werkzeug from 3.0.6 to 3.1.0 in /tests/apps/python-flask
2024-11-01 21:29:20 -04:00
Jose Diaz-Gonzalez
1e8154cde3 Merge pull request #7317 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.43
chore(deps): bump mkdocs-material from 9.5.42 to 9.5.43 in /docs/_build
2024-11-01 21:28:49 -04:00
dependabot[bot]
01b6281db0 chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 3.0.6 to 3.1.0.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/3.0.6...3.1.0)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-01 13:54:37 +00:00
dependabot[bot]
806f509b79 chore(deps): bump mkdocs-material from 9.5.42 to 9.5.43 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.42 to 9.5.43.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.42...9.5.43)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-31 13:38:53 +00:00
Jose Diaz-Gonzalez
a9d7bf8698 chore: bump go modules 2024-10-30 11:52:14 -04:00
dependabot[bot]
69bd70a61c chore(deps): bump github.com/fatih/color in /plugins/common
Bumps [github.com/fatih/color](https://github.com/fatih/color) from 1.17.0 to 1.18.0.
- [Release notes](https://github.com/fatih/color/releases)
- [Commits](https://github.com/fatih/color/compare/v1.17.0...v1.18.0)

---
updated-dependencies:
- dependency-name: github.com/fatih/color
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-30 11:51:30 -04:00
Jose Diaz-Gonzalez
7948a3cba7 Merge pull request #7310 from dokku/dependabot/pip/docs/_build/pymdown-extensions-10.12
chore(deps): bump pymdown-extensions from 10.11.2 to 10.12 in /docs/_build
2024-10-30 11:49:55 -04:00
Jose Diaz-Gonzalez
061cec61f5 Merge pull request #7312 from toanalien/patch-1
Fix typo in nginx documentation
2024-10-30 11:49:44 -04:00
Tasos Maschalidis
774fb546ef Remove prefixing releaseName with 'dokku-' in UninstallChart and GetValues calls in scheduler-k3s/triggers.go 2024-10-30 11:47:15 +02:00
Thiên Toán
5e740012c7 Update nginx.md
Fix typo
2024-10-30 14:27:24 +07:00
dependabot[bot]
07a036670b chore(deps): bump traefik from 3.1.6 to 3.2.0 in /plugins/traefik-vhosts
Bumps traefik from 3.1.6 to 3.2.0.

---
updated-dependencies:
- dependency-name: traefik
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-29 13:32:27 +00:00
dependabot[bot]
18d5c37fec chore(deps): bump pymdown-extensions in /docs/_build
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.11.2 to 10.12.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.11.2...10.12)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-29 13:11:02 +00:00
Jose Diaz-Gonzalez
f278fa2147 Merge pull request #7299 from dokku/dependabot/docker/plugins/logs/timberio/vector-0.42.0-debian
chore(deps): bump timberio/vector from 0.41.1-debian to 0.42.0-debian in /plugins/logs
2024-10-28 18:45:33 -04:00
Jose Diaz-Gonzalez
9801c5d11c Merge pull request #7306 from dokku/dependabot/maven/tests/apps/java/org.apache.maven.plugins-maven-dependency-plugin-3.8.1
chore(deps): bump org.apache.maven.plugins:maven-dependency-plugin from 3.8.0 to 3.8.1 in /tests/apps/java
2024-10-28 18:45:16 -04:00
Jose Diaz-Gonzalez
3f28a79c69 Merge pull request #7305 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-3.0.6
chore(deps): bump werkzeug from 3.0.4 to 3.0.6 in /tests/apps/python-flask
2024-10-28 18:45:05 -04:00
dependabot[bot]
fcd27a9506 chore(deps): bump org.apache.maven.plugins:maven-dependency-plugin
Bumps [org.apache.maven.plugins:maven-dependency-plugin](https://github.com/apache/maven-dependency-plugin) from 3.8.0 to 3.8.1.
- [Release notes](https://github.com/apache/maven-dependency-plugin/releases)
- [Commits](https://github.com/apache/maven-dependency-plugin/compare/maven-dependency-plugin-3.8.0...maven-dependency-plugin-3.8.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-dependency-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-28 13:21:48 +00:00
dependabot[bot]
04f8b6b4a1 chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 3.0.4 to 3.0.6.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/3.0.4...3.0.6)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-26 00:25:01 +00:00
dependabot[bot]
d82c4687de chore(deps): bump timberio/vector in /plugins/logs
Bumps timberio/vector from 0.41.1-debian to 0.42.0-debian.

---
updated-dependencies:
- dependency-name: timberio/vector
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 13:25:01 +00:00
Dokku Bot
f96a3b7330 Release 0.35.8
# History

## 0.35.8

Install/update via the bootstrap script:

```shell
wget -NP . https://dokku.com/install/v0.35.8/bootstrap.sh
sudo DOKKU_TAG=v0.35.8 bash bootstrap.sh
```

### Bug Fixes

- #7295: @josegonzalez Respect the exit code and pass flags correctly when tailing nginx logs on k3s
- #7294: @josegonzalez Tail the correct container in the ingress-nginx pod
- #7293: @josegonzalez Strip non-numeric characters from certain ingress-nginx annotation values

### New Features

- #7296: @josegonzalez Implement nginx:show-config for k3s plugin

### Documentation

- #7297: @josegonzalez Document a required ps:restart in order to apply annotations, labels, and nginx properties

### Dependencies

- #7287: @dependabot[bot] chore(deps): bump mvdan.cc/sh/v3 from 3.9.0 to 3.10.0 in /plugins/cron
- #7288: @dependabot[bot] chore(deps): bump markupsafe from 3.0.1 to 3.0.2 in /docs/_build
- #7289: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.41 to 9.5.42 in /docs/_build
2024-10-22 02:20:05 +00:00
Jose Diaz-Gonzalez
ae78bb82b2 Merge pull request #7297 from dokku/7266-annotation-docs
Document a required ps:restart in order to apply annotations, labels, and nginx properties
2024-10-21 22:15:29 -04:00
Jose Diaz-Gonzalez
8f372838e7 docs: document a required ps:restart in order to apply annotations, labels, and nginx properties
Closes #7266
2024-10-21 22:15:07 -04:00
Jose Diaz-Gonzalez
bbb4bd1996 Merge pull request #7296 from dokku/k3s-nginx-show-config
Implement nginx:show-config for k3s plugin
2024-10-21 22:09:55 -04:00
Jose Diaz-Gonzalez
90e8cac12f feat: implement nginx:show-config for k3s plugin
This allows users to see what nginx configs are in use for their applications.

Closes #7291
2024-10-21 22:09:09 -04:00
Jose Diaz-Gonzalez
778f563611 Merge pull request #7295 from dokku/fix-proxy-logs-again
Respect the exit code and pass flags correctly when tailing nginx logs on k3s
2024-10-21 21:51:58 -04:00
Jose Diaz-Gonzalez
51b951643b fix: respect the exit code and pass flags correctly when tailing nginx logs on k3s 2024-10-21 21:51:37 -04:00
Jose Diaz-Gonzalez
82b3c9dda6 Merge pull request #7294 from dokku/fix-container-name
Tail the correct container in the ingress-nginx pod
2024-10-21 21:40:00 -04:00
Jose Diaz-Gonzalez
9cd6727d12 Merge pull request #7287 from dokku/dependabot/go_modules/plugins/cron/mvdan.cc/sh/v3-3.10.0
chore(deps): bump mvdan.cc/sh/v3 from 3.9.0 to 3.10.0 in /plugins/cron
2024-10-21 21:39:56 -04:00
Jose Diaz-Gonzalez
1fe5b8927a Merge pull request #7293 from dokku/7292-remove-non-numeric
Strop non-numeric characters from certain ingress-nginx annotation values
2024-10-21 21:39:41 -04:00
Jose Diaz-Gonzalez
526ea43ae4 fix: tail the correct container in the ingress-nginx pod 2024-10-21 20:37:03 -04:00
Jose Diaz-Gonzalez
0130f7d984 chore: bump go modules 2024-10-21 20:28:28 -04:00
dependabot[bot]
75de6eb263 chore(deps): bump mvdan.cc/sh/v3 from 3.9.0 to 3.10.0 in /plugins/cron
Bumps [mvdan.cc/sh/v3](https://github.com/mvdan/sh) from 3.9.0 to 3.10.0.
- [Release notes](https://github.com/mvdan/sh/releases)
- [Changelog](https://github.com/mvdan/sh/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mvdan/sh/compare/v3.9.0...v3.10.0)

---
updated-dependencies:
- dependency-name: mvdan.cc/sh/v3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-21 20:27:30 -04:00
Jose Diaz-Gonzalez
3f612da0ac Merge pull request #7288 from dokku/dependabot/pip/docs/_build/markupsafe-3.0.2
chore(deps): bump markupsafe from 3.0.1 to 3.0.2 in /docs/_build
2024-10-21 20:25:50 -04:00
Jose Diaz-Gonzalez
b6549c401b Merge pull request #7289 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.42
chore(deps): bump mkdocs-material from 9.5.41 to 9.5.42 in /docs/_build
2024-10-21 20:25:23 -04:00
Jose Diaz-Gonzalez
aee62ebd2d fix: strip non-numeric characters from certain ingress-nginx annotation values
The controller does not do so on our behalf and ends up falling back to the default values.

Closes #7292
2024-10-21 20:24:36 -04:00
dependabot[bot]
4d06c80983 chore(deps): bump mkdocs-material from 9.5.41 to 9.5.42 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.41 to 9.5.42.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.41...9.5.42)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-21 13:47:39 +00:00
dependabot[bot]
167089c194 chore(deps): bump markupsafe from 3.0.1 to 3.0.2 in /docs/_build
Bumps [markupsafe](https://github.com/pallets/markupsafe) from 3.0.1 to 3.0.2.
- [Release notes](https://github.com/pallets/markupsafe/releases)
- [Changelog](https://github.com/pallets/markupsafe/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/markupsafe/compare/3.0.1...3.0.2)

---
updated-dependencies:
- dependency-name: markupsafe
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-21 13:47:34 +00:00
Dokku Bot
ec5480f330 Release 0.35.7
# History

## 0.35.7

Install/update via the bootstrap script:

```shell
wget -NP . https://dokku.com/install/v0.35.7/bootstrap.sh
sudo DOKKU_TAG=v0.35.7 bash bootstrap.sh
```

### Bug Fixes

- #7286: @josegonzalez Install netcat-traditional in 24.04 image
- #7284: @josegonzalez Use correct name for scheduler-proxy-logs trigger
- #7285: @josegonzalez Ensure builder pruning works when running under docker
- #7283: @danieldiekmeier Force `docker builder prune` to skip confirmation
2024-10-21 04:51:30 +00:00
Jose Diaz-Gonzalez
7dbda02e18 Merge pull request #7286 from dokku/install-netcat-in-image
Install netcat-traditional in 24.04 image
2024-10-21 00:35:01 -04:00
Jose Diaz-Gonzalez
38b04d92bd fix: install netcat-traditional in 24.04 image 2024-10-20 23:58:32 -04:00
Jose Diaz-Gonzalez
e4e04113b0 Merge pull request #7284 from dokku/fix-proxy-logs
Use correct name for scheduler-proxy-logs trigger
2024-10-20 23:53:17 -04:00
Jose Diaz-Gonzalez
3594ae0248 Merge pull request #7285 from dokku/josegonzalez-patch-1
Ensure builder pruning works when running under docker
2024-10-20 23:44:03 -04:00
Jose Diaz-Gonzalez
9ef0c35932 fix: ensure builder pruning works when running under docker 2024-10-20 23:43:50 -04:00
Jose Diaz-Gonzalez
ae03ac9878 Merge pull request #7283 from danieldiekmeier/patch-1
Force `docker builder prune` to skip confirmation
2024-10-20 23:42:48 -04:00
Jose Diaz-Gonzalez
30a2da196b fix: use correct name for scheduler-proxy-logs trigger 2024-10-20 23:41:54 -04:00
Daniel Diekmeier
125d4584bb Force docker builder prune to skip confirmation 2024-10-20 13:43:02 +02:00
Dokku Bot
ed6ba797b1 Release 0.35.6
# History

## 0.35.6

Install/update via the bootstrap script:

```shell
wget -NP . https://dokku.com/install/v0.35.6/bootstrap.sh
sudo DOKKU_TAG=v0.35.6 bash bootstrap.sh
```

### Bug Fixes

- #7279: @josegonzalez Allow exit code 2 when waiting for cloud-init to complete
- #7255: @josegonzalez Do not attempt to expose the same mapped port more than once

### New Features

- #7278: @josegonzalez Allow usage of newer nginx.conf.sigil on older versions of dokku
- #7271: @josegonzalez Add support for non-local nginx implementations
- #7269: @josegonzalez Add support for various timeout-related functions to nginx, openresty and k3s plugins

### Dependencies

- #7272: @dependabot[bot] chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile
- #7273: @dependabot[bot] chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile-procfile
- #7274: @dependabot[bot] chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile-app-json-formations
- #7275: @dependabot[bot] chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile-noexpose
- #7276: @dependabot[bot] chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile-procfile-bad
- #7270: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.40 to 9.5.41 in /docs/_build
- #7264: @dependabot[bot] chore(deps): bump pyparsing from 3.1.4 to 3.2.0 in /docs/_build
- #7244: @dependabot[bot] chore(deps): bump golang.org/x/crypto from 0.27.0 to 0.28.0 in /plugins/common
- #7260: @dependabot[bot] chore(deps): bump traefik from 3.1.5 to 3.1.6 in /plugins/traefik-vhosts
- #7259: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.39 to 9.5.40 in /docs/_build
- #7258: @dependabot[bot] chore(deps): bump markupsafe from 3.0.0 to 3.0.1 in /docs/_build
- #7254: @dependabot[bot] chore(deps): bump cookie and express in /tests/apps/checks-root
- #7246: @dependabot[bot] chore(deps): bump python from 3.12.7-alpine to 3.13.0-alpine in /docs/_build
- #7247: @dependabot[bot] chore(deps): bump python from 3.12.7-bookworm to 3.13.0-bookworm in /tests/apps/dockerfile-release
- #7248: @dependabot[bot] chore(deps): bump markupsafe from 2.1.5 to 3.0.0 in /docs/_build
- #7252: @dependabot[bot] chore(deps): bump django from 5.0.8 to 5.0.9 in /tests/apps/dockerfile-release

### Other

- #7282: @josegonzalez Skip ssh key setup when starting docker image
- #7281: @josegonzalez Set hostname to dokku.me for devcontainer
- #7280: @josegonzalez Merge changes from digitialocean's image-check script
2024-10-19 08:50:25 +00:00
Jose Diaz-Gonzalez
c6dbc2f572 Merge pull request #7282 from dokku/skip-keyfile
Skip ssh key setup when starting docker image
2024-10-19 04:02:45 -04:00
Jose Diaz-Gonzalez
40ca1fc5e5 Merge pull request #7281 from dokku/devcontainer-hostname
Set hostname to dokku.me for devcontainer
2024-10-19 04:02:41 -04:00
Jose Diaz-Gonzalez
83960e51a2 Merge pull request #7280 from dokku/merge-upstream-image-check
Merge changes from digitialocean's image-check script
2024-10-19 04:02:20 -04:00
Jose Diaz-Gonzalez
23e4f9e92f Merge pull request #7279 from dokku/fix-do-images
Allow exit code 2 when waiting for cloud-init to complete
2024-10-19 04:02:14 -04:00
Jose Diaz-Gonzalez
35042af9ec chore: skip ssh key setup when starting docker image
When deploying the Dokku via Docker, ssh keys are added directly via the ssh-keys:add command, and thus we can skip this step completely (as there won't be a public key in that path).
2024-10-19 01:00:13 -04:00
Jose Diaz-Gonzalez
b6f51bdae3 chore: set hostname to dokku.me for devcontainer 2024-10-19 00:58:17 -04:00
Jose Diaz-Gonzalez
cb0b47bcd4 chore: merge changes from digitialocean's image-check script
This includes changes up to May 2, 2024 from this link: https://github.com/digitalocean/marketplace-partners/commits/master/scripts/99-img-check.sh
2024-10-19 00:57:12 -04:00
Jose Diaz-Gonzalez
cdb188d7c8 fix: allow exit code 2 when waiting for cloud-init to complete
A change in cloud-init and/or the Ubuntu image provided by Digitalocean causes builds to fail due to cloud-init status exiting 2. The error is ignorable.

See digitalocean/marketplace-partners#186 for more details.
2024-10-19 00:55:41 -04:00
Jose Diaz-Gonzalez
6d3bb42783 Merge pull request #7278 from dokku/7277-if-guard
Allow usage of newer nginx.conf.sigil on older versions of dokku
2024-10-19 00:35:45 -04:00
Jose Diaz-Gonzalez
8bed755ab9 feat: allow usage of newer nginx.conf.sigil on older versions of dokku
Folks might mistakenly pull the latest template file - which introduces new variables - causing deployment failures.

This change allows them to use the newer template by checking if the variables are set before using them.

Closes #7277
2024-10-17 12:27:28 -04:00
Jose Diaz-Gonzalez
724615fe3e Merge pull request #7271 from dokku/7268-k3s-nginx-logs
Add support for non-local nginx implementations
2024-10-17 12:22:35 -04:00
Jose Diaz-Gonzalez
92a2e9532b Merge pull request #7272 from dokku/dependabot/docker/tests/apps/dockerfile/node-23-alpine
chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile
2024-10-17 12:22:09 -04:00
Jose Diaz-Gonzalez
e43392d013 Merge pull request #7273 from dokku/dependabot/docker/tests/apps/dockerfile-procfile/node-23-alpine
chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile-procfile
2024-10-17 12:21:56 -04:00
Jose Diaz-Gonzalez
7473a74576 Merge pull request #7274 from dokku/dependabot/docker/tests/apps/dockerfile-app-json-formations/node-23-alpine
chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile-app-json-formations
2024-10-17 12:20:26 -04:00
Jose Diaz-Gonzalez
812b9ad97c Merge pull request #7275 from dokku/dependabot/docker/tests/apps/dockerfile-noexpose/node-23-alpine
chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile-noexpose
2024-10-17 12:19:51 -04:00
Jose Diaz-Gonzalez
109cda8c30 Merge pull request #7276 from dokku/dependabot/docker/tests/apps/dockerfile-procfile-bad/node-23-alpine
chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile-procfile-bad
2024-10-17 12:19:45 -04:00
dependabot[bot]
e47fc2d513 chore(deps): bump node in /tests/apps/dockerfile-procfile-bad
Bumps node from 22-alpine to 23-alpine.

---
updated-dependencies:
- dependency-name: node
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-17 13:57:45 +00:00
dependabot[bot]
bf32aa52fa chore(deps): bump node in /tests/apps/dockerfile-noexpose
Bumps node from 22-alpine to 23-alpine.

---
updated-dependencies:
- dependency-name: node
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-17 13:47:47 +00:00
dependabot[bot]
9c351ac215 chore(deps): bump node in /tests/apps/dockerfile-app-json-formations
Bumps node from 22-alpine to 23-alpine.

---
updated-dependencies:
- dependency-name: node
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-17 13:42:59 +00:00
dependabot[bot]
ed3305ee14 chore(deps): bump node in /tests/apps/dockerfile-procfile
Bumps node from 22-alpine to 23-alpine.

---
updated-dependencies:
- dependency-name: node
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-17 13:36:49 +00:00
dependabot[bot]
b75286807d chore(deps): bump node in /tests/apps/dockerfile
Bumps node from 22-alpine to 23-alpine.

---
updated-dependencies:
- dependency-name: node
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-17 13:34:31 +00:00
Jose Diaz-Gonzalez
611006af73 feat: add support for non-local nginx implementations
If the scheduler is not docker-local, we will assume that a separate plugin trigger will pull access/error logs on our behalf. For k3s, the naive implementation is to pull logs from a single container (multiple ingress-nginx pods will be supported in a future release).

Closes #7268
2024-10-17 00:18:24 -04:00
Jose Diaz-Gonzalez
7730ffda49 Merge pull request #7269 from dokku/7267-timeout-options
Add support for various timeout-related functions to nginx, openresty and k3s plugins
2024-10-16 15:08:02 -04:00
Jose Diaz-Gonzalez
8fa3c30073 Merge pull request #7270 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.41
chore(deps): bump mkdocs-material from 9.5.40 to 9.5.41 in /docs/_build
2024-10-16 15:07:54 -04:00
dependabot[bot]
c69417664f chore(deps): bump mkdocs-material from 9.5.40 to 9.5.41 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.40 to 9.5.41.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.40...9.5.41)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-16 13:37:51 +00:00
Jose Diaz-Gonzalez
4d7f779c28 feat: add support for various timeout-related functions to nginx, openresty and k3s plugins
Closes #7267
2024-10-16 00:51:01 -04:00
Jose Diaz-Gonzalez
07149fb846 Merge pull request #7264 from dokku/dependabot/pip/docs/_build/pyparsing-3.2.0
chore(deps): bump pyparsing from 3.1.4 to 3.2.0 in /docs/_build
2024-10-14 13:33:08 -04:00
Jose Diaz-Gonzalez
1b330f5d76 Merge pull request #7244 from dokku/dependabot/go_modules/plugins/common/golang.org/x/crypto-0.28.0
chore(deps): bump golang.org/x/crypto from 0.27.0 to 0.28.0 in /plugins/common
2024-10-14 13:33:01 -04:00
dependabot[bot]
6ce16a8796 chore(deps): bump pyparsing from 3.1.4 to 3.2.0 in /docs/_build
Bumps [pyparsing](https://github.com/pyparsing/pyparsing) from 3.1.4 to 3.2.0.
- [Release notes](https://github.com/pyparsing/pyparsing/releases)
- [Changelog](https://github.com/pyparsing/pyparsing/blob/master/CHANGES)
- [Commits](https://github.com/pyparsing/pyparsing/compare/3.1.4...3.2.0)

---
updated-dependencies:
- dependency-name: pyparsing
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-14 13:33:29 +00:00
Jose Diaz-Gonzalez
87ca7a84af chore: bump go modules 2024-10-11 21:18:11 -04:00
Jose Diaz-Gonzalez
7c7a643cc3 Merge pull request #7260 from dokku/dependabot/docker/plugins/traefik-vhosts/traefik-3.1.6
chore(deps): bump traefik from 3.1.5 to 3.1.6 in /plugins/traefik-vhosts
2024-10-10 10:37:50 -04:00
Jose Diaz-Gonzalez
ac367e92c1 Merge pull request #7259 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.40
chore(deps): bump mkdocs-material from 9.5.39 to 9.5.40 in /docs/_build
2024-10-10 10:10:50 -04:00
dependabot[bot]
8a9647ac3f chore(deps): bump traefik from 3.1.5 to 3.1.6 in /plugins/traefik-vhosts
Bumps traefik from 3.1.5 to 3.1.6.

---
updated-dependencies:
- dependency-name: traefik
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-10 13:40:20 +00:00
dependabot[bot]
a5b732c818 chore(deps): bump mkdocs-material from 9.5.39 to 9.5.40 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.39 to 9.5.40.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.39...9.5.40)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-10 13:34:18 +00:00
Jose Diaz-Gonzalez
e472006efa Merge pull request #7258 from dokku/dependabot/pip/docs/_build/markupsafe-3.0.1
chore(deps): bump markupsafe from 3.0.0 to 3.0.1 in /docs/_build
2024-10-09 10:33:47 -04:00
dependabot[bot]
c1665e0ca0 chore(deps): bump markupsafe from 3.0.0 to 3.0.1 in /docs/_build
Bumps [markupsafe](https://github.com/pallets/markupsafe) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/pallets/markupsafe/releases)
- [Changelog](https://github.com/pallets/markupsafe/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/markupsafe/compare/3.0.0...3.0.1)

---
updated-dependencies:
- dependency-name: markupsafe
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-09 13:16:01 +00:00
Jose Diaz-Gonzalez
d1c79b8cd6 Merge pull request #7255 from dokku/7251-publish-once 2024-10-09 08:34:35 -04:00
Jose Diaz-Gonzalez
fd0cf263eb Merge pull request #7254 from dokku/dependabot/npm_and_yarn/tests/apps/checks-root/multi-744919c008
chore(deps): bump cookie and express in /tests/apps/checks-root
2024-10-09 08:04:48 -04:00
Jose Diaz-Gonzalez
0ac5dbc79b fix: do not attempt to expose the same mapped port more than once
A newer release of Docker (27.3.1) appears to have issues with the -p flag appearing the same time more than once for a given port. This was previously not an issue, but we should remove the problem on our end regardless.

Closes #7251
2024-10-08 23:56:30 -04:00
dependabot[bot]
7aee3b9601 chore(deps): bump cookie and express in /tests/apps/checks-root
Bumps [cookie](https://github.com/jshttp/cookie) to 0.7.1 and updates ancestor dependency [express](https://github.com/expressjs/express). These dependencies need to be updated together.


Updates `cookie` from 0.6.0 to 0.7.1
- [Release notes](https://github.com/jshttp/cookie/releases)
- [Commits](https://github.com/jshttp/cookie/compare/v0.6.0...v0.7.1)

Updates `express` from 5.0.0 to 5.0.1
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/v5.0.0...5.0.1)

---
updated-dependencies:
- dependency-name: cookie
  dependency-type: indirect
- dependency-name: express
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-09 03:52:34 +00:00
Jose Diaz-Gonzalez
8f7323e685 Merge pull request #7246 from dokku/dependabot/docker/docs/_build/python-3.13.0-alpine
chore(deps): bump python from 3.12.7-alpine to 3.13.0-alpine in /docs/_build
2024-10-08 23:51:45 -04:00
Jose Diaz-Gonzalez
33d39f33d7 Merge pull request #7247 from dokku/dependabot/docker/tests/apps/dockerfile-release/python-3.13.0-bookworm
chore(deps): bump python from 3.12.7-bookworm to 3.13.0-bookworm in /tests/apps/dockerfile-release
2024-10-08 23:51:38 -04:00
Jose Diaz-Gonzalez
257cd69842 Merge pull request #7248 from dokku/dependabot/pip/docs/_build/markupsafe-3.0.0
chore(deps): bump markupsafe from 2.1.5 to 3.0.0 in /docs/_build
2024-10-08 23:51:32 -04:00
Jose Diaz-Gonzalez
a8d057a164 Merge pull request #7252 from dokku/dependabot/pip/tests/apps/dockerfile-release/django-5.0.9
chore(deps): bump django from 5.0.8 to 5.0.9 in /tests/apps/dockerfile-release
2024-10-08 23:51:26 -04:00
dependabot[bot]
86c6f8ab09 chore(deps): bump django in /tests/apps/dockerfile-release
Bumps [django](https://github.com/django/django) from 5.0.8 to 5.0.9.
- [Commits](https://github.com/django/django/compare/5.0.8...5.0.9)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-08 21:36:08 +00:00
dependabot[bot]
1a58432b86 chore(deps): bump markupsafe from 2.1.5 to 3.0.0 in /docs/_build
Bumps [markupsafe](https://github.com/pallets/markupsafe) from 2.1.5 to 3.0.0.
- [Release notes](https://github.com/pallets/markupsafe/releases)
- [Changelog](https://github.com/pallets/markupsafe/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/markupsafe/compare/2.1.5...3.0.0)

---
updated-dependencies:
- dependency-name: markupsafe
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-08 13:30:42 +00:00
dependabot[bot]
4806f7a932 chore(deps): bump python in /tests/apps/dockerfile-release
Bumps python from 3.12.7-bookworm to 3.13.0-bookworm.

---
updated-dependencies:
- dependency-name: python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-08 13:06:52 +00:00
dependabot[bot]
9a74b049dd chore(deps): bump python in /docs/_build
Bumps python from 3.12.7-alpine to 3.13.0-alpine.

---
updated-dependencies:
- dependency-name: python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-08 13:05:08 +00:00
Dokku Bot
4b72d4d7c4 Release 0.35.5
# History

## 0.35.5

Install/update via the bootstrap script:

```shell
wget -NP . https://dokku.com/install/v0.35.5/bootstrap.sh
sudo DOKKU_TAG=v0.35.5 bash bootstrap.sh
```

### New Features

- #7213: @josegonzalez Release Dokku on supported versions of Debian and Raspbian

### Documentation

- #7241: @josegonzalez Clarify phase utilization in docker-options docs
- #7240: @josegonzalez Update testing docs to specify that CI is performed on Ubuntu Noble
- #7218: @josegonzalez Fix reference to arm64
- #7215: @Lewiscowles1986 Clarify x64 as amd64/arch64 in readme

### Tests

- #7212: @josegonzalez Update python version used in test apps

### Dependencies

- #7243: @dependabot[bot] chore(deps): bump google.golang.org/protobuf from 1.34.2 to 1.35.1 in /tests/apps/gogrpc
- #7238: @dependabot[bot] chore(deps): bump tj-actions/changed-files from 45.0.2 to 45.0.3
- #7237: @dependabot[bot] chore(deps): bump traefik from 3.1.4 to 3.1.5 in /plugins/traefik-vhosts
- #7227: @dependabot[bot] chore(deps): bump google.golang.org/grpc from 1.67.0 to 1.67.1 in /tests/apps/gogrpc
- #7231: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.11.1 to 10.11.2 in /docs/_build
- #7228: @dependabot[bot] chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/go-fail-postdeploy
- #7229: @dependabot[bot] chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/zombies-dockerfile-tini
- #7230: @dependabot[bot] chore(deps): bump python from 3.12.6-bookworm to 3.12.7-bookworm in /tests/apps/dockerfile-release
- #7232: @dependabot[bot] chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/go-fail-predeploy
- #7233: @dependabot[bot] chore(deps): bump python from 3.12.6-alpine to 3.12.7-alpine in /docs/_build
- #7234: @dependabot[bot] chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/zombies-dockerfile-no-tini
- #7235: @dependabot[bot] chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/gogrpc
- #7220: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.38 to 9.5.39 in /docs/_build
- #7221: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.10.2 to 10.11.1 in /docs/_build
- #7222: @dependabot[bot] chore(deps): bump watchdog from 5.0.2 to 5.0.3 in /docs/_build

### Other

- #7245: @moenoel fix: #7035 broke traefik https router rule
2024-10-07 16:36:54 +00:00
Jose Diaz-Gonzalez
f5aa90d1ab Merge pull request #7245 from moenoel/patch-1 2024-10-07 12:35:41 -04:00
moenoel
97a21ab738 fix: #7035 broke traefik https router rule
#7035 reworked how traefik domains are constructed but missed updating the https router rule accordingly.
2024-10-07 18:18:11 +02:00
Jose Diaz-Gonzalez
1c68f7bdee Merge pull request #7243 from dokku/dependabot/go_modules/tests/apps/gogrpc/google.golang.org/protobuf-1.35.1
chore(deps): bump google.golang.org/protobuf from 1.34.2 to 1.35.1 in /tests/apps/gogrpc
2024-10-07 11:02:40 -04:00
dependabot[bot]
dcebee8ca6 chore(deps): bump golang.org/x/crypto in /plugins/common
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.27.0 to 0.28.0.
- [Commits](https://github.com/golang/crypto/compare/v0.27.0...v0.28.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-07 13:25:28 +00:00
dependabot[bot]
5a931fd592 chore(deps): bump google.golang.org/protobuf in /tests/apps/gogrpc
Bumps google.golang.org/protobuf from 1.34.2 to 1.35.1.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-07 13:20:37 +00:00
Jose Diaz-Gonzalez
d79910c0ae Merge pull request #7241 from dokku/7219-clarify-options-docs 2024-10-06 07:45:22 -04:00
Jose Diaz-Gonzalez
cf11f08698 docs: clarify phase utilization in docker-options docs
Also generally update the docker-options docs to follow how documentation is written for the other plugins.

Refs #7219
2024-10-05 13:05:55 -04:00
Jose Diaz-Gonzalez
a13a20b4e4 Merge pull request #7240 from dokku/testing-docs
Update testing docs to specify that CI is performed on Ubuntu Noble
2024-10-05 12:40:36 -04:00
Jose Diaz-Gonzalez
453a079aa6 docs: update testing docs to specify that CI is performed on Ubuntu Noble 2024-10-05 12:40:07 -04:00
Jose Diaz-Gonzalez
9b8f207fde Merge pull request #7238 from dokku/dependabot/github_actions/tj-actions/changed-files-45.0.3
chore(deps): bump tj-actions/changed-files from 45.0.2 to 45.0.3
2024-10-04 15:00:57 -04:00
dependabot[bot]
667e7b0d4e chore(deps): bump tj-actions/changed-files from 45.0.2 to 45.0.3
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 45.0.2 to 45.0.3.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v45.0.2...v45.0.3)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-04 13:09:47 +00:00
Jose Diaz-Gonzalez
c76a634721 Merge pull request #7237 from dokku/dependabot/docker/plugins/traefik-vhosts/traefik-3.1.5
chore(deps): bump traefik from 3.1.4 to 3.1.5 in /plugins/traefik-vhosts
2024-10-03 10:39:27 -04:00
dependabot[bot]
895db4a26a chore(deps): bump traefik from 3.1.4 to 3.1.5 in /plugins/traefik-vhosts
Bumps traefik from 3.1.4 to 3.1.5.

---
updated-dependencies:
- dependency-name: traefik
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-03 13:41:17 +00:00
Jose Diaz-Gonzalez
d389a8c4e2 Merge pull request #7227 from dokku/dependabot/go_modules/tests/apps/gogrpc/google.golang.org/grpc-1.67.1
chore(deps): bump google.golang.org/grpc from 1.67.0 to 1.67.1 in /tests/apps/gogrpc
2024-10-02 14:16:54 -04:00
Jose Diaz-Gonzalez
affe2433a9 Merge pull request #7231 from dokku/dependabot/pip/docs/_build/pymdown-extensions-10.11.2
chore(deps): bump pymdown-extensions from 10.11.1 to 10.11.2 in /docs/_build
2024-10-02 14:16:47 -04:00
Jose Diaz-Gonzalez
1b781d557e Merge pull request #7228 from dokku/dependabot/docker/tests/apps/go-fail-postdeploy/golang-1.23.2
chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/go-fail-postdeploy
2024-10-02 14:16:33 -04:00
Jose Diaz-Gonzalez
7fb3806693 Merge pull request #7229 from dokku/dependabot/docker/tests/apps/zombies-dockerfile-tini/golang-1.23.2
chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/zombies-dockerfile-tini
2024-10-02 14:16:28 -04:00
Jose Diaz-Gonzalez
437623e69c Merge pull request #7230 from dokku/dependabot/docker/tests/apps/dockerfile-release/python-3.12.7-bookworm
chore(deps): bump python from 3.12.6-bookworm to 3.12.7-bookworm in /tests/apps/dockerfile-release
2024-10-02 14:16:22 -04:00
Jose Diaz-Gonzalez
1cf8f60e75 Merge pull request #7232 from dokku/dependabot/docker/tests/apps/go-fail-predeploy/golang-1.23.2
chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/go-fail-predeploy
2024-10-02 14:16:16 -04:00
Jose Diaz-Gonzalez
c2d96b3788 Merge pull request #7233 from dokku/dependabot/docker/docs/_build/python-3.12.7-alpine
chore(deps): bump python from 3.12.6-alpine to 3.12.7-alpine in /docs/_build
2024-10-02 14:16:10 -04:00
Jose Diaz-Gonzalez
bd2e365181 Merge pull request #7234 from dokku/dependabot/docker/tests/apps/zombies-dockerfile-no-tini/golang-1.23.2
chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/zombies-dockerfile-no-tini
2024-10-02 14:16:04 -04:00
Jose Diaz-Gonzalez
b5b3e9483d Merge pull request #7235 from dokku/dependabot/docker/tests/apps/gogrpc/golang-1.23.2
chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/gogrpc
2024-10-02 14:15:57 -04:00
dependabot[bot]
4831735a50 chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/gogrpc
Bumps golang from 1.23.1 to 1.23.2.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 13:58:31 +00:00
dependabot[bot]
10a35d132a chore(deps): bump golang in /tests/apps/zombies-dockerfile-no-tini
Bumps golang from 1.23.1 to 1.23.2.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 13:44:51 +00:00
dependabot[bot]
5567a55665 chore(deps): bump python in /docs/_build
Bumps python from 3.12.6-alpine to 3.12.7-alpine.

---
updated-dependencies:
- dependency-name: python
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 13:34:19 +00:00
dependabot[bot]
f08b01359d chore(deps): bump golang in /tests/apps/go-fail-predeploy
Bumps golang from 1.23.1 to 1.23.2.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 13:14:06 +00:00
dependabot[bot]
269bc59f5b chore(deps): bump pymdown-extensions in /docs/_build
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.11.1 to 10.11.2.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.11.1...10.11.2)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 13:13:29 +00:00
dependabot[bot]
093d371a83 chore(deps): bump python in /tests/apps/dockerfile-release
Bumps python from 3.12.6-bookworm to 3.12.7-bookworm.

---
updated-dependencies:
- dependency-name: python
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 13:12:33 +00:00
dependabot[bot]
10e00dc5bf chore(deps): bump golang in /tests/apps/zombies-dockerfile-tini
Bumps golang from 1.23.1 to 1.23.2.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 13:05:16 +00:00
dependabot[bot]
13c8d0afa0 chore(deps): bump golang in /tests/apps/go-fail-postdeploy
Bumps golang from 1.23.1 to 1.23.2.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 13:04:02 +00:00
dependabot[bot]
1dda883862 chore(deps): bump google.golang.org/grpc in /tests/apps/gogrpc
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.67.0 to 1.67.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.67.0...v1.67.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 13:33:02 +00:00
Jose Diaz-Gonzalez
a016127afe Merge pull request #7220 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.39
chore(deps): bump mkdocs-material from 9.5.38 to 9.5.39 in /docs/_build
2024-10-01 02:19:16 -04:00
Jose Diaz-Gonzalez
6e10579633 Merge pull request #7221 from dokku/dependabot/pip/docs/_build/pymdown-extensions-10.11.1
chore(deps): bump pymdown-extensions from 10.10.2 to 10.11.1 in /docs/_build
2024-10-01 02:19:08 -04:00
Jose Diaz-Gonzalez
a446ecd4fb Merge pull request #7222 from dokku/dependabot/pip/docs/_build/watchdog-5.0.3
chore(deps): bump watchdog from 5.0.2 to 5.0.3 in /docs/_build
2024-10-01 02:19:01 -04:00
dependabot[bot]
8da55ec81c chore(deps): bump watchdog from 5.0.2 to 5.0.3 in /docs/_build
Bumps [watchdog](https://github.com/gorakhargosh/watchdog) from 5.0.2 to 5.0.3.
- [Release notes](https://github.com/gorakhargosh/watchdog/releases)
- [Changelog](https://github.com/gorakhargosh/watchdog/blob/master/changelog.rst)
- [Commits](https://github.com/gorakhargosh/watchdog/compare/v5.0.2...v5.0.3)

---
updated-dependencies:
- dependency-name: watchdog
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-30 13:10:30 +00:00
dependabot[bot]
1caeaa0eb5 chore(deps): bump pymdown-extensions in /docs/_build
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.10.2 to 10.11.1.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.10.2...10.11.1)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-30 13:10:24 +00:00
dependabot[bot]
94aa642c30 chore(deps): bump mkdocs-material from 9.5.38 to 9.5.39 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.38 to 9.5.39.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.38...9.5.39)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-30 13:10:21 +00:00
Jose Diaz-Gonzalez
fbf8a04728 Merge pull request #7218 from dokku/josegonzalez-patch-1
Fix reference to arm64
2024-09-29 14:31:33 -04:00
Jose Diaz-Gonzalez
a712949cd1 docs: fix reference to arm64
See #7215
2024-09-29 14:31:17 -04:00
Jose Diaz-Gonzalez
e0557192c4 Merge pull request #7215 from Lewiscowles1986/patch-1
Clarify x64 as amd64/arch64 in readme
2024-09-29 13:31:25 -04:00
Jose Diaz-Gonzalez
ad914bf3b1 docs: refer to dpkg architecture in readme 2024-09-29 13:30:52 -04:00
Lewis Cowles
a7b91c19dd docs: make it clear that x64 means 64-bit, not a specific architecture
So I started by searching after reading README.md, and came across #6312 

Maybe others assume x64 is synonymous with 64-bit, but I find the long-hand, helped me to understand that arm64 and aarch64, and amd64 as well as x86_64 (which I thought x64 most closely resembled) are all supported, and it's a minimum native bus width limitation, dispensing with the history of x86 and 8086, than anything else.
2024-09-29 15:22:42 +01:00
Jose Diaz-Gonzalez
5aae42a2e4 Merge pull request #7212 from dokku/update-python-versions
Update python version used in test apps
2024-09-29 04:38:21 -04:00
Jose Diaz-Gonzalez
034541671d Merge pull request #7213 from dokku/update-released-packages
Release Dokku on supported versions of Debian and Raspbian
2024-09-29 03:30:12 -04:00
Jose Diaz-Gonzalez
355c98aa2a feat: release Dokku on supported versions of Debian and Raspbian
The policy has always been to only release for supported versions of operating systems, so this change aligns what we release for and how Dokku may be installed.

Folks running unmaintained operating systems should upgrade, as the packages are never guaranteed to exist in the Dokku apt repository.
2024-09-29 03:29:37 -04:00
Jose Diaz-Gonzalez
48234c908d tests: update python version used in test apps 2024-09-29 03:23:13 -04:00
Dokku Bot
e99ea77069 Release 0.35.4
# History

## 0.35.4

Install/update via the bootstrap script:

```shell
wget -NP . https://dokku.com/install/v0.35.4/bootstrap.sh
sudo DOKKU_TAG=v0.35.4 bash bootstrap.sh
```

### Bug Fixes

- #7209: @josegonzalez Exit non-zero if any deployment tasks fails
- #7211: @josegonzalez Always set the git rev env var when building an app via git:sync
- #7208: @josegonzalez Compute path for docker-container-healthchecker
- #7205: @Cactusbone chore: fix vagrant dokku-windows config

### Tests

- #7210: @josegonzalez Ensure pack binary is installed correctly when running tests in a devcontainer

### Dependencies

- #7206: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.37 to 9.5.38 in /docs/_build
- #7207: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.10.1 to 10.10.2 in /docs/_build
- #7203: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.36 to 9.5.37 in /docs/_build
2024-09-29 06:50:53 +00:00
Jose Diaz-Gonzalez
27ce6b622c Merge pull request #7209 from dokku/6919-failed-deployment-tasks
Exit non-zero if any deployment tasks fails
2024-09-29 01:09:47 -04:00
Jose Diaz-Gonzalez
24b5447ba7 Merge pull request #7211 from dokku/6827-set-git-rev-on-sync
Always set the git rev env var when building an app via git:sync
2024-09-29 00:38:09 -04:00
Jose Diaz-Gonzalez
9490034412 tests: update tests for cnb builder 2024-09-29 00:04:58 -04:00
Jose Diaz-Gonzalez
1abb180d1c fix: correct lint issue 2024-09-28 23:56:28 -04:00
Jose Diaz-Gonzalez
b8b112cb7b fix: exit non-zero if any deployment tasks fails 2024-09-28 23:56:28 -04:00
Jose Diaz-Gonzalez
fcb66a43cc Merge pull request #7210 from dokku/test-pack
Ensure pack binary is installed correctly when running tests in a devcontainer
2024-09-28 23:48:38 -04:00
Jose Diaz-Gonzalez
4ec6fa3eb0 fix: always set the git rev env var when building an app via git:sync
Closes #6827
2024-09-28 23:47:48 -04:00
Jose Diaz-Gonzalez
b9ebf2bcca Merge pull request #7208 from dokku/7010-docker-container-healthchecker-path
Compute path for docker-container-healthchecker
2024-09-28 22:31:31 -04:00
Jose Diaz-Gonzalez
03102cd681 tests: ensure pack binary is installed correctly when running tests in a devcontainer 2024-09-28 22:30:09 -04:00
Jose Diaz-Gonzalez
e905503bb9 fix: compute path for docker-container-healthchecker
This fixes an issue for source-based Dokku installs where the binary is installed in /usr/local/bin instead of /usr/bin due to not being installed via an OS package.

Closes #7010
2024-09-28 21:11:13 -04:00
Jose Diaz-Gonzalez
5857a937d5 Merge pull request #7206 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.38
chore(deps): bump mkdocs-material from 9.5.37 to 9.5.38 in /docs/_build
2024-09-26 11:11:21 -04:00
Jose Diaz-Gonzalez
ed4646153f Merge pull request #7207 from dokku/dependabot/pip/docs/_build/pymdown-extensions-10.10.2
chore(deps): bump pymdown-extensions from 10.10.1 to 10.10.2 in /docs/_build
2024-09-26 11:11:12 -04:00
Jose Diaz-Gonzalez
34df653536 Merge pull request #7205 from F4-Group/fix-vagrant-windows
chore: fix vagrant dokku-windows config
2024-09-26 11:10:52 -04:00
dependabot[bot]
8954e51224 chore(deps): bump pymdown-extensions in /docs/_build
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.10.1 to 10.10.2.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.10.1...10.10.2)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-26 14:50:28 +00:00
dependabot[bot]
ab18225237 chore(deps): bump mkdocs-material from 9.5.37 to 9.5.38 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.37 to 9.5.38.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.37...9.5.38)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-26 14:50:21 +00:00
Charly Koza
a7e2928f1e chore: fix vagrant dokku-windows config
Fixes #7202.
2024-09-26 11:20:01 +02:00
Jose Diaz-Gonzalez
de33c7375b Merge pull request #7203 from dokku/dependabot/pip/docs/_build/mkdocs-material-9.5.37
chore(deps): bump mkdocs-material from 9.5.36 to 9.5.37 in /docs/_build
2024-09-25 12:28:43 -04:00
dependabot[bot]
afe3ce4ab5 chore(deps): bump mkdocs-material from 9.5.36 to 9.5.37 in /docs/_build
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.36 to 9.5.37.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.36...9.5.37)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-25 13:14:54 +00:00
Dokku Bot
095995da87 Release 0.35.3
# History

## 0.35.3

Install/update via the bootstrap script:

```shell
wget -NP . https://dokku.com/install/v0.35.3/bootstrap.sh
sudo DOKKU_TAG=v0.35.3 bash bootstrap.sh
```

### Bug Fixes

- #7200: @josegonzalez Automatically select a container type if none is specified
- #7199: @josegonzalez Check if nginx is running before reloading during an app deletion
- #7198: @josegonzalez Add builder-herokuish to default help output
- #7197: @josegonzalez Implement missing network:info command

### Tests

- #7201: @josegonzalez Run arm build on 22.04

### Dependencies

- #7193: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.9 to 10.10.1 in /docs/_build
- #7194: @dependabot[bot] chore(deps): bump traefik from 3.1.2 to 3.1.4 in /plugins/traefik-vhosts
- #7195: @dependabot[bot] chore(deps): bump dokku/openresty-docker-proxy from 0.9.0 to 0.9.1 in /plugins/openresty-vhosts
- #7196: @dependabot[bot] chore(deps): bump socket.io from 4.7.5 to 4.8.0 in /tests/apps/.websocket.disabled
2024-09-24 19:01:02 +00:00
Jose Diaz-Gonzalez
5832523446 Merge pull request #7201 from dokku/buildjet-2204
Run arm build on 22.04
2024-09-23 21:54:05 -04:00
Jose Diaz-Gonzalez
68be10b661 Merge pull request #7200 from dokku/6893-enter-without-container-type
Automatically select a container type if none is specified
2024-09-23 21:53:21 -04:00
Jose Diaz-Gonzalez
0a9ce752cc Merge pull request #7199 from dokku/6832-is-nginx-running
Check if nginx is running before reloading during an app deletion
2024-09-23 21:52:51 -04:00
Jose Diaz-Gonzalez
9d76265e33 fix: run arm build on 22.04
There is no 24.04 buildjet runner, so this just stalls forever.
2024-09-23 21:46:48 -04:00
Jose Diaz-Gonzalez
4b30e33ce8 Merge pull request #7198 from dokku/6974-builder-herokuish-help
Add builder-herokuish to default help output
2024-09-23 21:45:51 -04:00
Jose Diaz-Gonzalez
34bdd15364 Merge pull request #7197 from dokku/7093-network-info
Implement missing network:info command
2024-09-23 21:45:44 -04:00
Jose Diaz-Gonzalez
caa7b10091 fix: automatically select a container type if none is specified
Closes #6893
2024-09-23 21:41:02 -04:00
Jose Diaz-Gonzalez
ac56a5ffdd fix: check if nginx is running before reloading during an app deletion
The purpose of the reload is to remove nginx from being loaded. If nginx isn't running, then by definition the config is not loaded.

Closes #6832
2024-09-23 21:25:23 -04:00
Jose Diaz-Gonzalez
aa74178622 fix: add builder-herokuish to default help output
Closes #6974
2024-09-23 20:33:16 -04:00
Jose Diaz-Gonzalez
61b7752cce fix: implement missing network:info command
Also add json format output to the network:list command.

Closes #7093
2024-09-23 20:27:13 -04:00
Jose Diaz-Gonzalez
0f8395365e Merge pull request #7193 from dokku/dependabot/pip/docs/_build/pymdown-extensions-10.10.1
chore(deps): bump pymdown-extensions from 10.9 to 10.10.1 in /docs/_build
2024-09-23 16:25:13 -04:00
Jose Diaz-Gonzalez
2fd9de8456 Merge pull request #7194 from dokku/dependabot/docker/plugins/traefik-vhosts/traefik-3.1.4
chore(deps): bump traefik from 3.1.2 to 3.1.4 in /plugins/traefik-vhosts
2024-09-23 16:24:51 -04:00
Jose Diaz-Gonzalez
a53d8cf5c7 Merge pull request #7195 from dokku/dependabot/docker/plugins/openresty-vhosts/dokku/openresty-docker-proxy-0.9.1
chore(deps): bump dokku/openresty-docker-proxy from 0.9.0 to 0.9.1 in /plugins/openresty-vhosts
2024-09-23 16:24:36 -04:00
Jose Diaz-Gonzalez
551ca6771f Merge pull request #7196 from dokku/dependabot/npm_and_yarn/tests/apps/dot-websocket.disabled/socket.io-4.8.0
chore(deps): bump socket.io from 4.7.5 to 4.8.0 in /tests/apps/.websocket.disabled
2024-09-23 16:24:24 -04:00
dependabot[bot]
04bae1efd9 chore(deps): bump socket.io in /tests/apps/.websocket.disabled
Bumps [socket.io](https://github.com/socketio/socket.io) from 4.7.5 to 4.8.0.
- [Release notes](https://github.com/socketio/socket.io/releases)
- [Changelog](https://github.com/socketio/socket.io/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io/compare/socket.io@4.7.5...socket.io@4.8.0)

---
updated-dependencies:
- dependency-name: socket.io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-23 13:57:13 +00:00
dependabot[bot]
e09a9185f5 chore(deps): bump dokku/openresty-docker-proxy
Bumps dokku/openresty-docker-proxy from 0.9.0 to 0.9.1.

---
updated-dependencies:
- dependency-name: dokku/openresty-docker-proxy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-23 13:30:59 +00:00
dependabot[bot]
fe89dc3ac4 chore(deps): bump traefik from 3.1.2 to 3.1.4 in /plugins/traefik-vhosts
Bumps traefik from 3.1.2 to 3.1.4.

---
updated-dependencies:
- dependency-name: traefik
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-23 13:21:10 +00:00
dependabot[bot]
66dbd22805 chore(deps): bump pymdown-extensions in /docs/_build
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.9 to 10.10.1.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.9...10.10.1)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-23 13:18:38 +00:00
241 changed files with 4281 additions and 1459 deletions

View File

@@ -2,7 +2,7 @@ FROM dokku/dokku:latest
RUN apt-get update
RUN apt-get install --no-install-recommends -y build-essential file nano && \
apt-get install --no-install-recommends -y help2man shellcheck uuid-runtime wget xmlstarlet && \
apt-get install --no-install-recommends -y software-properties-common help2man shellcheck uuid-runtime wget xmlstarlet && \
apt-get clean autoclean && \
apt-get autoremove --yes && \
rm -rf /var/lib/apt/lists/*

View File

@@ -4,7 +4,9 @@
"context": ".."
},
"containerEnv": {
"DOKKU_HOSTNAME": "dokku.me",
"DOKKU_HOST_ROOT": "${localWorkspaceFolder}/tmp/data/home/dokku",
"DOKKU_LIB_HOST_ROOT": "${localWorkspaceFolder}/tmp/data/var/lib/dokku",
"GO_ROOT_MOUNT": "${localWorkspaceFolder}:/go/src/github.com/dokku/dokku"
},
"customizations": {

View File

@@ -97,7 +97,7 @@ jobs:
build-image-arm64:
name: build-image.linux/arm64
needs: build
runs-on: buildjet-4vcpu-ubuntu-2404-arm
runs-on: buildjet-4vcpu-ubuntu-2204-arm
timeout-minutes: 20
steps:

View File

@@ -58,7 +58,7 @@ jobs:
PACKER_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Get changed files in the docs folder
id: changed-files-specific
uses: tj-actions/changed-files@v45.0.2
uses: tj-actions/changed-files@v45.0.6
with:
files: contrib/images/digitalocean/**
- name: Run `packer validate`

View File

@@ -136,6 +136,27 @@ jobs:
runs-on: macos-latest
needs: release
steps:
- name: Brew doctor
run: |
brew doctor || true
- name: Brew cleanup
run: |
echo "====> Running brew cleanup"
brew cleanup || true
echo "====> Untapping homebrew/core"
brew untap homebrew/core || true
echo "====> Untapping homebrew/cask"
brew untap homebrew/cask || true
echo "====> Uninstalling openssl@1.1"
brew uninstall openssl@1.1 || true
echo "====> Uninstalling ruby@3.0"
brew uninstall ruby@3.0 || true
echo "====> Running brew cleanup"
brew cleanup || true
- name: Brew doctor
run: brew doctor
- name: Brew config
run: brew config
- name: Bump Homebrew Formula
env:
HOMEBREW_GITHUB_USERNAME: ${{ secrets.HOMEBREW_GITHUB_USERNAME }}

View File

@@ -0,0 +1 @@
https://dokku.com/funding.json

View File

@@ -97,7 +97,7 @@ need to do
### Which branch to base the work
All changes should be be based on the latest master commit.
All changes should be based on the latest master commit.
### Submitting Changes

View File

@@ -1,5 +1,438 @@
# History
## 0.35.14
Install/update via the bootstrap script:
```shell
wget -NP . https://dokku.com/install/v0.35.14/bootstrap.sh
sudo DOKKU_TAG=v0.35.14 bash bootstrap.sh
```
### Bug Fixes
- #7441: @turicas Fix Vagrantfile NFS config
- #7417: @josegonzalez Write contents to stdout before writing to a file
- #7416: @josegonzalez Add missing DOKKU_LIB_HOST_ROOT to ensure plugins work in devcontainer setup
- #7412: @josegonzalez Remove cgroups dependencies
### New Features
- #7439: @josegonzalez Allow specifying a custom app label alias when shipping logs via vector
- #7419: @josegonzalez Add the ability to set a MAILFROM value for local cron emails
### Refactors
- #7415: @josegonzalez Use the golang version of CopyFromImage when copying files in bash
### Documentation
- #7437: @turicas Fix doc generation
- #7414: @josegonzalez Remove copyright date range
### Dependencies
- #7453: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.13 to 10.14 in /docs/_build
- #7451: @dependabot[bot] chore(deps): bump golang.org/x/crypto from 0.31.0 to 0.32.0 in /plugins/common
- #7449: @dependabot[bot] chore(deps): bump pygments from 2.19.0 to 2.19.1 in /docs/_build
- #7450: @dependabot[bot] chore(deps): bump google.golang.org/protobuf from 1.36.1 to 1.36.2 in /tests/apps/gogrpc
- #7452: @dependabot[bot] chore(deps): bump traefik from 3.2.3 to 3.3.0 in /plugins/traefik-vhosts
- #7446: @dependabot[bot] chore(deps): bump github.com/otiai10/copy from 1.14.0 to 1.14.1 in /plugins/common
- #7445: @dependabot[bot] chore(deps): bump pygments from 2.18.0 to 2.19.0 in /docs/_build
- #7444: @dependabot[bot] chore(deps): bump tj-actions/changed-files from 45.0.5 to 45.0.6
- #7436: @dependabot[bot] chore(deps): bump pyparsing from 3.2.0 to 3.2.1 in /docs/_build
- #7433: @dependabot[bot] chore(deps): bump k8s.io/kubernetes from 1.29.1 to 1.29.7 in /plugins/scheduler-k3s
- #7429: @dependabot[bot] chore(deps): bump github.com/onsi/gomega from 1.36.1 to 1.36.2 in /plugins/common
- #7427: @dependabot[bot] chore(deps): bump click from 8.1.7 to 8.1.8 in /docs/_build
- #7425: @dependabot[bot] chore(deps): bump jinja2 from 3.1.4 to 3.1.5 in /tests/apps/python-flask
- #7426: @dependabot[bot] chore(deps): bump google.golang.org/protobuf from 1.36.0 to 1.36.1 in /tests/apps/gogrpc
- #7428: @dependabot[bot] chore(deps): bump jinja2 from 3.1.4 to 3.1.5 in /docs/_build
- #7430: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.12 to 10.13 in /docs/_build
- #7432: @dependabot[bot] chore(deps): bump ruby from 3.3.6 to 3.4.1 in /tests/apps/dockerfile-entrypoint
- #7424: @dependabot[bot] chore(deps): bump google.golang.org/grpc from 1.69.0 to 1.69.2 in /tests/apps/gogrpc
- #7420: @dependabot[bot] chore(deps): bump google.golang.org/protobuf from 1.35.2 to 1.36.0 in /tests/apps/gogrpc
- #7421: @dependabot[bot] chore(deps): bump traefik from 3.2.2 to 3.2.3 in /plugins/traefik-vhosts
- #7418: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.48 to 9.5.49 in /docs/_build
- #7411: @dependabot[bot] chore(deps): bump google.golang.org/grpc from 1.68.1 to 1.69.0 in /tests/apps/gogrpc
### Other
- #7434: @turicas Add missing checks:set to checks help
- #7422: @Tashows Fix detached tty for k3s
## 0.35.13
Install/update via the bootstrap script:
```shell
wget -NP . https://dokku.com/install/v0.35.13/bootstrap.sh
sudo DOKKU_TAG=v0.35.13 bash bootstrap.sh
```
### Bug Fixes
- #7410: @josegonzalez Only raise nil responses for k8s list calls as errors
- #7403: @Tashows Properly resolve imagePullSecrets from app and deploymentID if relevant property does not exist
- #7404: @josegonzalez Correctly handle scale to zero with the Keda http addon
- #7400: @Tashows Check if tty is actually used and support proper output when it's not
### Documentation
- #7395: @josegonzalez Add documentation for all file formats dokku uses
- #7399: @nonZero Add -w 0 to base64 call in config:set docs for safe usage in ssh commands
### Tests
- #7380: @josegonzalez Run unit tests outside of docker by default
### Dependencies
- #7409: @dependabot[bot] chore(deps): bump golang.org/x/crypto from 0.30.0 to 0.31.0 in /plugins/docker-options
- #7405: @dependabot[bot] chore(deps): bump timberio/vector from 0.42.0-debian to 0.43.1-debian in /plugins/logs
- #7407: @dependabot[bot] chore(deps): bump traefik from 3.2.1 to 3.2.2 in /plugins/traefik-vhosts
- #7402: @dependabot[bot] chore(deps): bump github.com/onsi/gomega from 1.36.0 to 1.36.1 in /plugins/common
- #7390: @dependabot[bot] chore(deps): bump golang.org/x/crypto from 0.29.0 to 0.30.0 in /plugins/common
- #7397: @dependabot[bot] chore(deps): bump tj-actions/changed-files from 45.0.4 to 45.0.5
- #7398: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.47 to 9.5.48 in /docs/_build
- #7394: @dependabot[bot] chore(deps): bump django from 5.0.9 to 5.0.10 in /tests/apps/dockerfile-release
- #7385: @dependabot[bot] chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/go-fail-predeploy
- #7386: @dependabot[bot] chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/zombies-dockerfile-tini
- #7387: @dependabot[bot] chore(deps): bump google.golang.org/grpc from 1.68.0 to 1.68.1 in /tests/apps/gogrpc
- #7388: @dependabot[bot] chore(deps): bump python from 3.13.0-alpine to 3.13.1-alpine in /docs/_build
- #7389: @dependabot[bot] chore(deps): bump six from 1.16.0 to 1.17.0 in /docs/_build
- #7392: @dependabot[bot] chore(deps): bump golang.org/x/sync from 0.9.0 to 0.10.0 in /plugins/scheduler-docker-local
- #7393: @dependabot[bot] chore(deps): bump python from 3.13.0-bookworm to 3.13.1-bookworm in /tests/apps/dockerfile-release
- #7384: @dependabot[bot] chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/gogrpc
- #7383: @dependabot[bot] chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/zombies-dockerfile-no-tini
- #7382: @dependabot[bot] chore(deps): bump golang from 1.23.3 to 1.23.4 in /tests/apps/go-fail-postdeploy
## 0.35.12
Install/update via the bootstrap script:
```shell
wget -NP . https://dokku.com/install/v0.35.12/bootstrap.sh
sudo DOKKU_TAG=v0.35.12 bash bootstrap.sh
```
### Bug Fixes
- #7361: @josegonzalez Allow autoscaling config to have zero min replicas
### New Features
- #7379: @josegonzalez Provide ability to customize chart values via `scheduler-k3s:set`
### Documentation
- #7365: @binchengqu Correct some documentation types
### Dependencies
- #7378: @josegonzalez Update go modules
- #7376: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.46 to 9.5.47 in /docs/_build
- #7370: @dependabot[bot] chore(deps): bump github.com/onsi/gomega from 1.35.1 to 1.36.0 in /plugins/common
- #7377: @dependabot[bot] chore(deps): bump github.com/traefik/traefik/v2 from 2.11.9 to 2.11.14 in /plugins/scheduler-k3s
- #7369: @dependabot[bot] chore(deps): bump github.com/onsi/gomega from 1.35.1 to 1.36.0 in /plugins/config
- #7371: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.45 to 9.5.46 in /docs/_build
- #7366: @dependabot[bot] chore(deps): bump traefik from 3.2.0 to 3.2.1 in /plugins/traefik-vhosts
- #7364: @dependabot[bot] chore(deps): bump github.com/cert-manager/cert-manager from 1.13.3 to 1.15.4 in /plugins/scheduler-k3s
- #7363: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.44 to 9.5.45 in /docs/_build
- #7360: @dependabot[bot] chore(deps): bump flask from 3.0.3 to 3.1.0 in /tests/apps/python-flask
- #7358: @dependabot[bot] chore(deps): bump google.golang.org/protobuf from 1.35.1 to 1.35.2 in /tests/apps/gogrpc
- #7359: @dependabot[bot] chore(deps): bump flask from 3.0.3 to 3.1.0 in /tests/apps/multi
## 0.35.11
Install/update via the bootstrap script:
```shell
wget -NP . https://dokku.com/install/v0.35.11/bootstrap.sh
sudo DOKKU_TAG=v0.35.11 bash bootstrap.sh
```
### Bug Fixes
- #7353: @indrat Add missing export DOKKU_LIB_HOST_ROOT when running dokku in container
### New Features
- #7355: @josegonzalez Add support for http-based scaling when deploying on the k3s scheduler
### Documentation
- #7349: @josegonzalez Create .well-known/funding-manifest-urls
### Dependencies
- #7345: @dependabot[bot] chore(deps): bump google.golang.org/grpc from 1.67.1 to 1.68.0 in /tests/apps/gogrpc
- #7350: @dependabot[bot] chore(deps): bump zipp from 3.20.2 to 3.21.0 in /docs/_build
- #7351: @dependabot[bot] chore(deps): bump werkzeug from 3.1.2 to 3.1.3 in /tests/apps/python-flask
- #7347: @dependabot[bot] chore(deps): bump golang.org/x/crypto from 0.28.0 to 0.29.0 in /plugins/common
- #7348: @dependabot[bot] chore(deps): bump golang.org/x/sync from 0.8.0 to 0.9.0 in /plugins/common
- #7344: @dependabot[bot] chore(deps): bump tj-actions/changed-files from 45.0.3 to 45.0.4
- #7343: @dependabot[bot] chore(deps): bump golang.org/x/sync from 0.8.0 to 0.9.0 in /plugins/scheduler-docker-local
- #7342: @dependabot[bot] chore(deps): bump packaging from 24.1 to 24.2 in /docs/_build
- #7341: @dependabot[bot] chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/zombies-dockerfile-tini
- #7340: @dependabot[bot] chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/gogrpc
- #7339: @dependabot[bot] chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/go-fail-predeploy
- #7338: @dependabot[bot] chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/zombies-dockerfile-no-tini
- #7337: @dependabot[bot] chore(deps): bump golang from 1.23.2 to 1.23.3 in /tests/apps/go-fail-postdeploy
- #7335: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.43 to 9.5.44 in /docs/_build
- #7334: @dependabot[bot] chore(deps): bump ruby from 3.3.5 to 3.3.6 in /tests/apps/dockerfile-entrypoint
- #7333: @dependabot[bot] chore(deps): bump werkzeug from 3.1.1 to 3.1.2 in /tests/apps/python-flask
### Other
- #7357: @josegonzalez Run brew cleanup before running brew doctor
## 0.35.10
Install/update via the bootstrap script:
```shell
wget -NP . https://dokku.com/install/v0.35.10/bootstrap.sh
sudo DOKKU_TAG=v0.35.10 bash bootstrap.sh
```
### Bug Fixes
- #7324: @josegonzalez Correctly pull the deployment id from an app's helm values when executing dokku run under the k3s scheduler
- #7332: @josegonzalez Drop the pod name from stdout output when creating one-off containers under the k3s scheduler
- #7331: @josegonzalez Output logs for completed containers launched by the k3s scheduler
- #7330: @josegonzalez Disable stdio buffering so log coloring happens normally when fetching logs for k3s-scheduler managed apps
- #7329: @josegonzalez Correctly wait for one-off k3s pods to be ready
- #7328: @josegonzalez Execute one-off commands with DOKKU_APP_SHELL as the initial command under the k3s scheduler
- #7323: @josegonzalez Correct errors in brew doctor output when making a formula release
### Dependencies
- #7327: @dependabot[bot] chore(deps): bump watchdog from 5.0.3 to 6.0.0 in /docs/_build
- #7326: @dependabot[bot] chore(deps): bump werkzeug from 3.1.0 to 3.1.1 in /tests/apps/python-flask
## 0.35.9
Install/update via the bootstrap script:
```shell
wget -NP . https://dokku.com/install/v0.35.9/bootstrap.sh
sudo DOKKU_TAG=v0.35.9 bash bootstrap.sh
```
### Bug Fixes
- #7321: @josegonzalez Allow nginx commands when the scheduler is set to null
- #7313: @Tashows Remove prefixing releaseName with 'dokku-' in UninstallChart and GetValues calls in scheduler-k3s/triggers.go
### New Features
- #7322: @josegonzalez Add debugging information to brew bump-formula-pr
### Documentation
- #7312: @toanalien Fix typo in nginx documentation
### Dependencies
- #7320: @dependabot[bot] chore(deps): bump github.com/onsi/gomega from 1.34.2 to 1.35.1 in /plugins/common
- #7311: @dependabot[bot] chore(deps): bump traefik from 3.1.6 to 3.2.0 in /plugins/traefik-vhosts
- #7300: @dependabot[bot] chore(deps): bump github.com/fatih/color from 1.17.0 to 1.18.0 in /plugins/common
- #7319: @dependabot[bot] chore(deps): bump werkzeug from 3.0.6 to 3.1.0 in /tests/apps/python-flask
- #7317: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.42 to 9.5.43 in /docs/_build
- #7310: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.11.2 to 10.12 in /docs/_build
- #7299: @dependabot[bot] chore(deps): bump timberio/vector from 0.41.1-debian to 0.42.0-debian in /plugins/logs
- #7306: @dependabot[bot] chore(deps): bump org.apache.maven.plugins:maven-dependency-plugin from 3.8.0 to 3.8.1 in /tests/apps/java
- #7305: @dependabot[bot] chore(deps): bump werkzeug from 3.0.4 to 3.0.6 in /tests/apps/python-flask
## 0.35.8
Install/update via the bootstrap script:
```shell
wget -NP . https://dokku.com/install/v0.35.8/bootstrap.sh
sudo DOKKU_TAG=v0.35.8 bash bootstrap.sh
```
### Bug Fixes
- #7295: @josegonzalez Respect the exit code and pass flags correctly when tailing nginx logs on k3s
- #7294: @josegonzalez Tail the correct container in the ingress-nginx pod
- #7293: @josegonzalez Strip non-numeric characters from certain ingress-nginx annotation values
### New Features
- #7296: @josegonzalez Implement nginx:show-config for k3s plugin
### Documentation
- #7297: @josegonzalez Document a required ps:restart in order to apply annotations, labels, and nginx properties
### Dependencies
- #7287: @dependabot[bot] chore(deps): bump mvdan.cc/sh/v3 from 3.9.0 to 3.10.0 in /plugins/cron
- #7288: @dependabot[bot] chore(deps): bump markupsafe from 3.0.1 to 3.0.2 in /docs/_build
- #7289: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.41 to 9.5.42 in /docs/_build
## 0.35.7
Install/update via the bootstrap script:
```shell
wget -NP . https://dokku.com/install/v0.35.7/bootstrap.sh
sudo DOKKU_TAG=v0.35.7 bash bootstrap.sh
```
### Bug Fixes
- #7286: @josegonzalez Install netcat-traditional in 24.04 image
- #7284: @josegonzalez Use correct name for scheduler-proxy-logs trigger
- #7285: @josegonzalez Ensure builder pruning works when running under docker
- #7283: @danieldiekmeier Force `docker builder prune` to skip confirmation
## 0.35.6
Install/update via the bootstrap script:
```shell
wget -NP . https://dokku.com/install/v0.35.6/bootstrap.sh
sudo DOKKU_TAG=v0.35.6 bash bootstrap.sh
```
### Bug Fixes
- #7279: @josegonzalez Allow exit code 2 when waiting for cloud-init to complete
- #7255: @josegonzalez Do not attempt to expose the same mapped port more than once
### New Features
- #7278: @josegonzalez Allow usage of newer nginx.conf.sigil on older versions of dokku
- #7271: @josegonzalez Add support for non-local nginx implementations
- #7269: @josegonzalez Add support for various timeout-related functions to nginx, openresty and k3s plugins
### Dependencies
- #7272: @dependabot[bot] chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile
- #7273: @dependabot[bot] chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile-procfile
- #7274: @dependabot[bot] chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile-app-json-formations
- #7275: @dependabot[bot] chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile-noexpose
- #7276: @dependabot[bot] chore(deps): bump node from 22-alpine to 23-alpine in /tests/apps/dockerfile-procfile-bad
- #7270: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.40 to 9.5.41 in /docs/_build
- #7264: @dependabot[bot] chore(deps): bump pyparsing from 3.1.4 to 3.2.0 in /docs/_build
- #7244: @dependabot[bot] chore(deps): bump golang.org/x/crypto from 0.27.0 to 0.28.0 in /plugins/common
- #7260: @dependabot[bot] chore(deps): bump traefik from 3.1.5 to 3.1.6 in /plugins/traefik-vhosts
- #7259: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.39 to 9.5.40 in /docs/_build
- #7258: @dependabot[bot] chore(deps): bump markupsafe from 3.0.0 to 3.0.1 in /docs/_build
- #7254: @dependabot[bot] chore(deps): bump cookie and express in /tests/apps/checks-root
- #7246: @dependabot[bot] chore(deps): bump python from 3.12.7-alpine to 3.13.0-alpine in /docs/_build
- #7247: @dependabot[bot] chore(deps): bump python from 3.12.7-bookworm to 3.13.0-bookworm in /tests/apps/dockerfile-release
- #7248: @dependabot[bot] chore(deps): bump markupsafe from 2.1.5 to 3.0.0 in /docs/_build
- #7252: @dependabot[bot] chore(deps): bump django from 5.0.8 to 5.0.9 in /tests/apps/dockerfile-release
### Other
- #7282: @josegonzalez Skip ssh key setup when starting docker image
- #7281: @josegonzalez Set hostname to dokku.me for devcontainer
- #7280: @josegonzalez Merge changes from digitialocean's image-check script
## 0.35.5
Install/update via the bootstrap script:
```shell
wget -NP . https://dokku.com/install/v0.35.5/bootstrap.sh
sudo DOKKU_TAG=v0.35.5 bash bootstrap.sh
```
### New Features
- #7213: @josegonzalez Release Dokku on supported versions of Debian and Raspbian
### Documentation
- #7241: @josegonzalez Clarify phase utilization in docker-options docs
- #7240: @josegonzalez Update testing docs to specify that CI is performed on Ubuntu Noble
- #7218: @josegonzalez Fix reference to arm64
- #7215: @Lewiscowles1986 Clarify x64 as amd64/arch64 in readme
### Tests
- #7212: @josegonzalez Update python version used in test apps
### Dependencies
- #7243: @dependabot[bot] chore(deps): bump google.golang.org/protobuf from 1.34.2 to 1.35.1 in /tests/apps/gogrpc
- #7238: @dependabot[bot] chore(deps): bump tj-actions/changed-files from 45.0.2 to 45.0.3
- #7237: @dependabot[bot] chore(deps): bump traefik from 3.1.4 to 3.1.5 in /plugins/traefik-vhosts
- #7227: @dependabot[bot] chore(deps): bump google.golang.org/grpc from 1.67.0 to 1.67.1 in /tests/apps/gogrpc
- #7231: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.11.1 to 10.11.2 in /docs/_build
- #7228: @dependabot[bot] chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/go-fail-postdeploy
- #7229: @dependabot[bot] chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/zombies-dockerfile-tini
- #7230: @dependabot[bot] chore(deps): bump python from 3.12.6-bookworm to 3.12.7-bookworm in /tests/apps/dockerfile-release
- #7232: @dependabot[bot] chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/go-fail-predeploy
- #7233: @dependabot[bot] chore(deps): bump python from 3.12.6-alpine to 3.12.7-alpine in /docs/_build
- #7234: @dependabot[bot] chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/zombies-dockerfile-no-tini
- #7235: @dependabot[bot] chore(deps): bump golang from 1.23.1 to 1.23.2 in /tests/apps/gogrpc
- #7220: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.38 to 9.5.39 in /docs/_build
- #7221: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.10.2 to 10.11.1 in /docs/_build
- #7222: @dependabot[bot] chore(deps): bump watchdog from 5.0.2 to 5.0.3 in /docs/_build
### Other
- #7245: @moenoel fix: #7035 broke traefik https router rule
## 0.35.4
Install/update via the bootstrap script:
```shell
wget -NP . https://dokku.com/install/v0.35.4/bootstrap.sh
sudo DOKKU_TAG=v0.35.4 bash bootstrap.sh
```
### Bug Fixes
- #7209: @josegonzalez Exit non-zero if any deployment tasks fails
- #7211: @josegonzalez Always set the git rev env var when building an app via git:sync
- #7208: @josegonzalez Compute path for docker-container-healthchecker
- #7205: @Cactusbone chore: fix vagrant dokku-windows config
### Tests
- #7210: @josegonzalez Ensure pack binary is installed correctly when running tests in a devcontainer
### Dependencies
- #7206: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.37 to 9.5.38 in /docs/_build
- #7207: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.10.1 to 10.10.2 in /docs/_build
- #7203: @dependabot[bot] chore(deps): bump mkdocs-material from 9.5.36 to 9.5.37 in /docs/_build
## 0.35.3
Install/update via the bootstrap script:
```shell
wget -NP . https://dokku.com/install/v0.35.3/bootstrap.sh
sudo DOKKU_TAG=v0.35.3 bash bootstrap.sh
```
### Bug Fixes
- #7200: @josegonzalez Automatically select a container type if none is specified
- #7199: @josegonzalez Check if nginx is running before reloading during an app deletion
- #7198: @josegonzalez Add builder-herokuish to default help output
- #7197: @josegonzalez Implement missing network:info command
### Tests
- #7201: @josegonzalez Run arm build on 22.04
### Dependencies
- #7193: @dependabot[bot] chore(deps): bump pymdown-extensions from 10.9 to 10.10.1 in /docs/_build
- #7194: @dependabot[bot] chore(deps): bump traefik from 3.1.2 to 3.1.4 in /plugins/traefik-vhosts
- #7195: @dependabot[bot] chore(deps): bump dokku/openresty-docker-proxy from 0.9.0 to 0.9.1 in /plugins/openresty-vhosts
- #7196: @dependabot[bot] chore(deps): bump socket.io from 4.7.5 to 4.8.0 in /tests/apps/.websocket.disabled
## 0.35.2
Install/update via the bootstrap script:

View File

@@ -74,9 +74,8 @@ Support us with a monthly donation and help us continue our activities. [[Become
A fresh VM running any of the following operating systems:
- Ubuntu 20.04 / 22.04 / 24.04 x64 - Any currently supported release
- Debian 10+ x64
- Arch Linux x64 *(experimental)*
- Ubuntu 20.04 / 22.04 / 24.04 (amd64/arm64) - Any currently supported release
- Debian 11+ (amd64/arm64)
An SSH keypair that can be used for application deployment. If this exists before installation, it will be automatically imported into dokku.
Otherwise, you will need to import the keypair manually after installation using `dokku ssh-keys:add`.
@@ -86,8 +85,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 -NP . https://dokku.com/install/v0.35.2/bootstrap.sh
sudo DOKKU_TAG=v0.35.2 bash bootstrap.sh
wget -NP . https://dokku.com/install/v0.35.14/bootstrap.sh
sudo DOKKU_TAG=v0.35.14 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.

16
Vagrantfile vendored
View File

@@ -39,9 +39,11 @@ Vagrant::configure("2") do |config|
end
config.vm.define "empty", autostart: false
config.vm.synced_folder ".", "/vagrant", type: "nfs", nfs_version: 4, nfs_udp: false
config.vm.define "dokku", primary: true do |vm|
vm.vm.synced_folder File.dirname(__FILE__), "/root/dokku"
vm.vm.synced_folder File.dirname(__FILE__), "/root/dokku", type: "nfs", nfs_version: 4, nfs_udp: false
vm.vm.hostname = "#{DOKKU_DOMAIN}"
vm.vm.network :private_network, ip: DOKKU_IP
@@ -53,7 +55,7 @@ Vagrant::configure("2") do |config|
vb.customize ["modifyvm", :id, "--cableconnected1", "on"]
end
vm.vm.provision :shell, :inline => "export DEBIAN_FRONTEND=noninteractive && apt-get update -qq >/dev/null && apt-get -qq -y --no-install-recommends install git build-essential jq >/dev/null && cd /root/dokku && #{make_cmd}"
vm.vm.provision :shell, :inline => "export DEBIAN_FRONTEND=noninteractive && apt-get update -qq >/dev/null && apt-get -qq -y --no-install-recommends install git build-essential jq nginx >/dev/null && cd /root/dokku && #{make_cmd}"
vm.vm.provision :shell do |s|
s.inline = <<-EOT
echo '"\e[5~": history-search-backward' > /root/.inputrc
@@ -72,19 +74,19 @@ Vagrant::configure("2") do |config|
config.vm.define "dokku-windows", autostart: false do |vm|
vm.vm.hostname = "#{DOKKU_DOMAIN}"
vm.vm.network :private_network, ip: DOKKU_IP
vm.vm.provision :shell, :inline => "export DEBIAN_FRONTEND=noninteractive && apt-get update -qq >/dev/null && apt-get -qq -y --no-install-recommends install git dos2unix >/dev/null"
vm.vm.provision :shell, :inline => "export DEBIAN_FRONTEND=noninteractive && apt-get update -qq >/dev/null && apt-get -qq -y --no-install-recommends install git dos2unix nginx >/dev/null"
vm.vm.provision :shell, :inline => "cd /vagrant/ && export DOKKU_BRANCH=`git symbolic-ref -q --short HEAD 2>/dev/null` && export DOKKU_TAG=`git describe --tags --exact-match 2>/dev/null` && cd /root/ && cp /vagrant/bootstrap.sh ./ && dos2unix bootstrap.sh && bash bootstrap.sh"
end
config.vm.define "dokku-deb", autostart: false do |vm|
vm.vm.synced_folder File.dirname(__FILE__), "/root/dokku"
vm.vm.synced_folder File.dirname(__FILE__), "/root/dokku", type: "nfs", nfs_version: 4, nfs_udp: false
vm.vm.hostname = "#{DOKKU_DOMAIN}"
vm.vm.network :private_network, ip: DOKKU_IP
vm.vm.provision :shell, :inline => "cd /root/dokku && make install-from-deb"
end
config.vm.define "build", autostart: false do |vm|
vm.vm.synced_folder File.dirname(__FILE__), "/root/dokku"
vm.vm.synced_folder File.dirname(__FILE__), "/root/dokku", type: "nfs", nfs_version: 4, nfs_udp: false
vm.vm.hostname = "#{DOKKU_DOMAIN}"
vm.vm.network :private_network, ip: DOKKU_IP
vm.vm.provision :shell, :inline => "export DEBIAN_FRONTEND=noninteractive && apt-get update -qq >/dev/null && apt-get -qq -y --no-install-recommends install git >/dev/null && cd /root/dokku && #{make_cmd}"
@@ -93,9 +95,9 @@ Vagrant::configure("2") do |config|
config.vm.define "build-arch", autostart: false do |vm|
vm.vm.box = "bugyt/archlinux"
vm.vm.synced_folder File.dirname(__FILE__), "/dokku"
vm.vm.synced_folder File.dirname(__FILE__), "/dokku", type: "nfs", nfs_version: 4, nfs_udp: false
if Pathname.new("#{File.dirname(__FILE__)}/../dokku-arch").exist?
vm.vm.synced_folder "#{File.dirname(__FILE__)}/../dokku-arch", "/dokku-arch"
vm.vm.synced_folder "#{File.dirname(__FILE__)}/../dokku-arch", "/dokku-arch", type: "nfs", nfs_version: 4, nfs_udp: false
end
vm.vm.hostname = "#{DOKKU_DOMAIN}"
vm.vm.network :private_network, ip: DOKKU_IP

View File

@@ -12,7 +12,7 @@ set -eo pipefail
# That's good because it prevents our output overlapping with wget's.
# It also means that we can't run a partially downloaded script.
SUPPORTED_VERSIONS="Debian [10, 11, 12], Ubuntu [20.04, 22.04, 24.04]"
SUPPORTED_VERSIONS="Debian [11, 12], Ubuntu [20.04, 22.04, 24.04]"
log-fail() {
declare desc="log fail formatter"
@@ -193,14 +193,14 @@ install-dokku-from-deb-package() {
OS_ID="noble"
fi
elif [[ "$DOKKU_DISTRO" == "debian" ]]; then
OS_IDS=("stretch" "buster" "bullseye" "bookworm")
OS_IDS=("bullseye" "bookworm")
if ! in-array "$OS_ID" "${OS_IDS[@]}"; then
OS_ID="bullseye"
OS_ID="bookworm"
fi
elif [[ "$DOKKU_DISTRO" == "raspbian" ]]; then
OS_IDS=("buster" "bullseye")
OS_IDS=("bullseye" "bookworm")
if ! in-array "$OS_ID" "${OS_IDS[@]}"; then
OS_ID="bullseye"
OS_ID="bookworm"
fi
fi

View File

@@ -86,11 +86,11 @@
},
{
"name": "herokuish",
"version": "0.10.1",
"version": "0.10.2",
"urls": {
"amd64": "https://github.com/gliderlabs/herokuish/releases/download/v0.10.1/herokuish_0.10.1_linux_x86_64.tgz",
"arm64": "https://github.com/gliderlabs/herokuish/releases/download/v0.10.1/herokuish_0.10.1_linux_x86_64.tgz"
"amd64": "https://github.com/gliderlabs/herokuish/releases/download/v0.10.2/herokuish_0.10.2_linux_x86_64.tgz",
"arm64": "https://github.com/gliderlabs/herokuish/releases/download/v0.10.2/herokuish_0.10.2_linux_x86_64.tgz"
}
}
]
}
}

View File

@@ -12,7 +12,7 @@ pkgs=(apache2-utils
curl
man-db
netcat
netcat-traditional
net-tools
parallel

View File

@@ -513,6 +513,9 @@ elif [[ "$OS" =~ Debian.* ]]; then
11)
osv=1
;;
12)
osv=1
;;
*)
osv=2
;;
@@ -538,7 +541,7 @@ elif [[ $OS == "CentOS Stream" ]]; then
fi
elif [[ $OS == "Rocky Linux" ]]; then
ost=1
if [[ $VER =~ 8\. ]]; then
if [[ $VER =~ 8\. ]] || [[ $VER =~ 9\. ]]; then
osv=1
else
osv=2

View File

@@ -30,6 +30,7 @@ build {
"echo '--> Waiting until cloud-init is complete'",
"/usr/bin/cloud-init status --wait",
]
valid_exit_codes = [0, 2]
}
provisioner "file" {

View File

@@ -134,7 +134,7 @@ fn-publish-package() {
[[ "$RELEASE_TYPE" == "raspbian" ]] && DIST=raspbian
if [[ "$RELEASE_TYPE" == "raspbian" ]]; then
OS_IDS=("buster" "bullseye")
OS_IDS=("bullseye" "bookworm")
for OS_ID in "${OS_IDS[@]}"; do
log-info "(release-dokku) pushing deb to packagecloud.com/${REPOSITORY}/${DIST}"
package_cloud push "${REPOSITORY}/${DIST}/${OS_ID}" "$PACKAGE_NAME"
@@ -155,7 +155,7 @@ fn-publish-package() {
done
DIST=debian
OS_IDS=("buster" "bullseye" "bookworm")
OS_IDS=("bullseye" "bookworm")
for OS_ID in "${OS_IDS[@]}"; do
log-info "(release-dokku) pushing ${RELEASE_TYPE} to packagecloud.com/${REPOSITORY}/${DIST}"
package_cloud push "${REPOSITORY}/${DIST}/${OS_ID}" "$PACKAGE_NAME"

View File

@@ -70,7 +70,7 @@ def get_nav_from_selector(soup: BeautifulSoup, selector: str, docs_dir: str):
children = os.listdir(docs_dir + "/" + child_dir)
children.sort(
key=lambda x: list(map(int, x.split("-")[0].split("."))),
key=lambda x: list(map(int, x.split("-")[0].split("."))) if "." in x else [-1, -1, -1],
reverse=True,
)
children = [child_dir + c for c in children]

4
debian/control vendored
View File

@@ -1,11 +1,11 @@
Package: dokku
Version: 0.35.2
Version: 0.35.14
Section: web
Priority: optional
Architecture: amd64
Depends: apache2-utils, locales, git, cpio, cron, curl, man-db, netcat, sshcommand, docker-engine-cs (>= 19.03.0) | docker-engine (>= 19.03.0) | docker-io (>= 19.03.0) | docker.io (>= 19.03.0) | docker-ce (>= 19.03.0) | docker-ee (>= 19.03.0) | moby-engine, docker-compose-plugin | moby-compose, docker-buildx-plugin | moby-buildx, docker-container-healthchecker, docker-image-labeler, lambda-builder, net-tools, netrc, parallel, procfile-util, rsync, dos2unix, jq, unzip, util-linux
Recommends: herokuish, bash-completion, dokku-update, dokku-event-listener
Pre-Depends: gliderlabs-sigil, nginx (>= 1.8.0) | openresty, bind9-dnsutils, cgroupfs-mount | cgroup-lite, debconf, plugn, sudo, python3, rsyslog
Pre-Depends: gliderlabs-sigil, nginx (>= 1.8.0) | openresty, bind9-dnsutils, debconf, plugn, sudo, python3, rsyslog
Maintainer: Jose Diaz-Gonzalez <dokku@josediazgonzalez.com>
Description: Docker-powered PaaS that helps build and manage the lifecycle of applications
Dokku is an extensible, open source Platform as a Service

View File

@@ -1,4 +1,4 @@
PATH=/usr/local/bin:/usr/bin:/bin
SHELL=/bin/bash
5 4 * * * root /usr/local/bin/docker builder prune >>/var/log/dokku/builder-prune.log 2>&1
5 4 * * * root /usr/local/bin/docker builder prune -f >>/var/log/dokku/builder-prune.log 2>&1

View File

@@ -69,6 +69,11 @@ main() {
chown dokku:dokku /etc/default/dokku
fi
if [[ -n "$DOKKU_LIB_HOST_ROOT" ]]; then
echo "export DOKKU_LIB_HOST_ROOT=$DOKKU_LIB_HOST_ROOT" >>/etc/default/dokku
chown dokku:dokku /etc/default/dokku
fi
if [[ -f /mnt/dokku/plugin-list ]]; then
while read line; do
local plugin_name="$(echo "$line" | awk -F: '{print $1}')"
@@ -89,6 +94,9 @@ main() {
dokku --quiet domains:set-global "$DOKKU_HOSTNAME"
fi
echo "dokku dokku/skip_key_file boolean true" | debconf-set-selections
echo "dokku dokku/key_file string /root/.ssh/id_rsa.pub" | debconf-set-selections
NGINX_ROOT="/etc/nginx"
if [[ -x /usr/bin/openresty ]]; then
NGINX_ROOT="/usr/local/openresty/nginx/conf"

View File

@@ -1,4 +1,4 @@
FROM python:3.12.6-alpine
FROM python:3.13.1-alpine
WORKDIR /usr/src/app

View File

@@ -1,23 +1,23 @@
beautifulsoup4==4.12.3
click==8.1.7
click==8.1.8
ghp-import==2.1.0
importlib-metadata==8.5.0
Jinja2==3.1.4
Jinja2==3.1.5
Markdown>=3.2.1,<3.8
MarkupSafe==2.1.5
MarkupSafe==3.0.2
mergedeep==1.3.4
mkdocs==1.6.1
mkdocs-exclude==1.0.2
mkdocs-material==9.5.36
mkdocs-material==9.5.49
mkdocs-material-extensions==1.3.1
packaging==24.1
Pygments==2.18.0
pymdown-extensions==10.9
pyparsing==3.1.4
packaging==24.2
Pygments==2.19.1
pymdown-extensions==10.14
pyparsing==3.2.1
python-dateutil==2.9.0.post0
PyYAML==6.0.2
pyyaml_env_tag==0.1
six==1.16.0
six==1.17.0
soupsieve==2.6
watchdog==5.0.2
zipp==3.20.2
watchdog==6.0.0
zipp==3.21.0

View File

@@ -3,57 +3,89 @@
> [!IMPORTANT]
> New as of 0.3.17
Pass [container options](https://docs.docker.com/engine/reference/run/) to the `docker run` command during Dokku's `build`, `deploy` and `run` phases
```
docker-options:add <app> <phase(s)> OPTION # Add Docker option to app for phase (comma-separated phase list)
docker-options:clear <app> [<phase(s)>...] # Clear a docker options from application
docker-options:clear <app> [<phase(s)>...] # Clear a docker options from app
docker-options:remove <app> <phase(s)> OPTION # Remove Docker option from app for phase (comma-separated phase list)
docker-options:report [<app>] [<flag>] # Displays a docker options report for one or more apps
```
> When specifying multiple phases, they **must** be comma-separated _without_ spaces in between each phase, like so:
>
> ```shell
> dokku docker-options:add node-js-app deploy,run "-v /var/log/node-js-app:/app/logs"
> ```
The `docker-options` plugin allows users to specify custom [container options](https://docs.docker.com/engine/reference/run/) for containers created by Dokku at various phases.
## About Dokku phases
## Usage
Dokku deploys your application in multiple "phases" and the `docker-options` plugin allows you to pass arguments to their underlying docker container:
### Background
- `build`: the container that executes the appropriate buildpack
- `deploy`: the container that executes your running/deployed application
- `run`: the container that executes any arbitrary command via `dokku run`
#### Phases
Manipulation of docker options will not restart running containers. This enables multiple options to be set/unset before final application. As such, changing an app's docker options must be followed by a `dokku ps:rebuild` in order to take effect.
Dokku deploys your app in multiple "phases" and the `docker-options` plugin allows you to pass arguments to their underlying docker container:
- `build`: The `build` phase is used to provide container options that are available during the build process for use by the various builders.
- A given builder may strip out or ignore options that are unsupported by the builder in question - as an example, the `dockerfile` builder does not support mounted volumes.
- `deploy`: The `deploy` phase is used to provide container options that are set on _deployed_ process types. This covers every process type specified in an app `Procfile` as well as any default processes your app may deploy.
- The `deploy` phase is usually the correct phase to add options for
- `run`: The `run` phase is used to provide container options to one-off containers created by `dokku run`, `dokku run:detached`, and any cron tasks specified in your `app.json`.
> [!IMPORTANT]
> The `run` phase does _not_ correspond 1-to-1 to `docker run` or `docker container run` commands. Specifying a container option at the `run` phase will only be invoked on containers created by the `run` plugin and cron tasks. Please be sure to specify options at the correct phase for your use-case.
Adding or removing docker-options will not apply to any running containers, and only applies to containers created _after_ the options have been modified. As such, changing an app's docker options must be followed by a `dokku ps:rebuild` or a deploy in order to take effect.
#### Supported Docker Options
More information on supported Docker options can be found [here](https://docs.docker.com/engine/reference/commandline/run/).
Container options configured via the `docker-options` plugin are not used to modify the process a container runs. Container options are the `[OPTIONS]` portion of the following, where `[CONTAINER_COMMAND]` and `[ARG]` are the process and the arguments passed to it that are launched in the created container: `docker run [OPTIONS] [CONTAINER_COMMAND] [ARG...]`. Please see the documentation for [customizing the run command](/docs/deployment/builders/dockerfiles.md#customizing-the-run-command) or use a [Procfile](/docs/deployment/builders/dockerfiles.md#procfiles-and-multiple-processes) to modify the command used by a Dockerfile-based container.
## Examples
#### Mounting volumes and host directories
### Add Docker options
Docker supports volume and host directory mounting via the `-v` or `--volume` flags. In order to simplify usage, Dokku provides a `storage` plugin as an abstraction to interact with persistent storage. In most cases, the Dokku project recommends using the persistent storage plugin over directly manipulating docker options at different phases. See the [persistent storage documentation](/docs/advanced-usage/persistent-storage.md) for more information on how to attach persistent storage to your app.
Add some options for the deployed/running app and when executing [`dokku run`](/docs/processes/one-off-tasks.md):
### Commands
#### Add Docker options
To add a docker option to an app, use the `docker-options:add` command. This takes an app name, a comma-separated list of phases, and the docker-option to add.
```shell
# Mount a host volume in a Docker container: "-v /host/path:/container/path"
dokku docker-options:add node-js-app deploy "-v /var/log/node-js-app:/app/logs"
dokku docker-options:add node-js-app run "-v /var/log/node-js-app:/app/logs"
dokku docker-options:add node-js-app deploy "--ulimit nofile=12"
```
> [!NOTE]
> When [mounting a host directory](https://docs.docker.com/engine/reference/run/#volume-shared-filesystems) in a Dokku app you should first create that directory as user `dokku` and then mount the directory under `/app` in the container using `docker-options` as above. Otherwise the app will lack write permission in the directory.
### Remove a Docker option
Multiple phases can be specified by using a comma when specifying phases:
```shell
dokku docker-options:remove node-js-app run "-v /var/log/node-js-app:/app/logs"
dokku docker-options:add node-js-app deploy,run "--ulimit nofile=12"
```
### Clear all Docker options for an app
The `docker-options:add` does not support setting multiple options in a single call. To specify multiple options, call `docker-options:add` multiple times.
```shell
dokku docker-options:add node-js-app deploy "--ulimit nofile=12"
dokku docker-options:add node-js-app deploy "--shm-size 256m"
```
#### Remove a Docker option
To remove docker options from an app, use the `docker-options:remove` command. This takes an app name, a comma-separated list of phases, and the docker-option to remove.
```shell
dokku docker-options:remove node-js-app run ""--ulimit nofile=12"
```
Multiple phases can be specified by using a comma when specifying phases:
```shell
dokku docker-options:remove node-js-app deploy,run "--ulimit nofile=12"
```
The `docker-options:remove` does not support setting multiple options in a single call. To specify multiple options, call `docker-options:remove` multiple times.
```shell
dokku docker-options:remove node-js-app deploy "--ulimit nofile=12"
dokku docker-options:remove node-js-app deploy "--shm-size 256m"
```
#### Clear all Docker options for an app
Docker options can be removed for a specific app using the `docker-options:clear` command.
@@ -84,7 +116,7 @@ dokku docker-options:clear node-js-app build,run
-----> Clearing docker-options for node-js-app on phase run
```
### Displaying docker-options reports for an app
#### Displaying docker-options reports for an app
> [!IMPORTANT]
> New as of 0.8.1
@@ -98,8 +130,8 @@ dokku docker-options:report
```
=====> node-js-app docker options information
Docker options build:
Docker options deploy: -v /var/log/node-js-app:/app/logs
Docker options run: -v /var/log/node-js-app:/app/logs
Docker options deploy: --ulimit nofile=12 --shm-size 256m
Docker options run: --ulimit nofile=12 --shm-size 256m
=====> python-sample docker options information
Docker options build:
Docker options deploy:

View File

@@ -36,35 +36,35 @@ dokku plugin:list
```
plugn: dev
00_dokku-standard 0.35.2 enabled dokku core standard plugin
20_events 0.35.2 enabled dokku core events logging plugin
app-json 0.35.2 enabled dokku core app-json plugin
apps 0.35.2 enabled dokku core apps plugin
build-env 0.35.2 enabled dokku core build-env plugin
buildpacks 0.35.2 enabled dokku core buildpacks plugin
certs 0.35.2 enabled dokku core certificate management plugin
checks 0.35.2 enabled dokku core checks plugin
common 0.35.2 enabled dokku core common plugin
config 0.35.2 enabled dokku core config plugin
docker-options 0.35.2 enabled dokku core docker-options plugin
domains 0.35.2 enabled dokku core domains plugin
enter 0.35.2 enabled dokku core enter plugin
git 0.35.2 enabled dokku core git plugin
logs 0.35.2 enabled dokku core logs plugin
network 0.35.2 enabled dokku core network plugin
nginx-vhosts 0.35.2 enabled dokku core nginx-vhosts plugin
plugin 0.35.2 enabled dokku core plugin plugin
proxy 0.35.2 enabled dokku core proxy plugin
ps 0.35.2 enabled dokku core ps plugin
repo 0.35.2 enabled dokku core repo plugin
resource 0.35.2 enabled dokku core resource plugin
scheduler-docker-local 0.35.2 enabled dokku core scheduler-docker-local plugin
shell 0.35.2 enabled dokku core shell plugin
ssh-keys 0.35.2 enabled dokku core ssh-keys plugin
storage 0.35.2 enabled dokku core storage plugin
tags 0.35.2 enabled dokku core tags plugin
tar 0.35.2 enabled dokku core tar plugin
trace 0.35.2 enabled dokku core trace plugin
00_dokku-standard 0.35.14 enabled dokku core standard plugin
20_events 0.35.14 enabled dokku core events logging plugin
app-json 0.35.14 enabled dokku core app-json plugin
apps 0.35.14 enabled dokku core apps plugin
build-env 0.35.14 enabled dokku core build-env plugin
buildpacks 0.35.14 enabled dokku core buildpacks plugin
certs 0.35.14 enabled dokku core certificate management plugin
checks 0.35.14 enabled dokku core checks plugin
common 0.35.14 enabled dokku core common plugin
config 0.35.14 enabled dokku core config plugin
docker-options 0.35.14 enabled dokku core docker-options plugin
domains 0.35.14 enabled dokku core domains plugin
enter 0.35.14 enabled dokku core enter plugin
git 0.35.14 enabled dokku core git plugin
logs 0.35.14 enabled dokku core logs plugin
network 0.35.14 enabled dokku core network plugin
nginx-vhosts 0.35.14 enabled dokku core nginx-vhosts plugin
plugin 0.35.14 enabled dokku core plugin plugin
proxy 0.35.14 enabled dokku core proxy plugin
ps 0.35.14 enabled dokku core ps plugin
repo 0.35.14 enabled dokku core repo plugin
resource 0.35.14 enabled dokku core resource plugin
scheduler-docker-local 0.35.14 enabled dokku core scheduler-docker-local plugin
shell 0.35.14 enabled dokku core shell plugin
ssh-keys 0.35.14 enabled dokku core ssh-keys plugin
storage 0.35.14 enabled dokku core storage plugin
tags 0.35.14 enabled dokku core tags plugin
tar 0.35.14 enabled dokku core tar plugin
trace 0.35.14 enabled dokku core trace plugin
```
> [!WARNING]

View File

@@ -0,0 +1,153 @@
# app.json
`app.json` is a manifest format for describing web apps. It declares cron tasks, healthchecks, and other information required to run an app on Dokku. This document describes the schema in detail.
> [!IMPORTANT]
> While the `app.json` format used by Dokku is based on the one [supported by Heroku](https://devcenter.heroku.com/articles/app-json-schema), not all Heroku functionality is supported by Dokku.
## Cron
```json
{
"crons": [
{
"command": "echo 'hello'",
"schedule": "0 1 * * *"
}
]
}
```
(list, optional) A list of cron resources. Keys are the names of the process types. The values are an object containing one or more of the following properties:
- `command`: (string, required)
- `schedule`: (string, required)
## Formation
```json
{
"formation": {
"web": {
"max_parallel": 1,
"quantity": 1
}
}
}
```
(object, optional) A key-value object for process type configuration. Keys are the names of the process types. The values are an object containing one or more of the following properties:
- `autoscaling` (map of string to object, optional) autoscaling rules. See the autoscaling section for more details
- `max_parallel`: (int, optional) number of instances to deploy in parallel at a given time
- `quantity`: (int, optional) number of processes to maintain. Default 1 for web processes, 0 for all others.
### Autoscaling
```json
{
"formation": {
"web": {
"autoscaling": {
"cooldown_period_seconds": 300,
"max_quantity": 10,
"min_quantity": 1,
"polling_interval_seconds": 30,
"triggers": {
"http": {
"metadata": {
"url": "https://example.com/health"
}
}
}
}
}
}
}
```
(object, optional) A key-value object for autoscaling configuration. Keys are the names of the process types. The values are an object containing one or more of the following properties:
- `cooldown_period_seconds`: (int, optional)
- `max_quantity`: (int, optional)
- `min_quantity`: (int, optional)
- `polling_interval_seconds`: (int, optional)
- `triggers`: (object, optional)
An autoscaling trigger consists of the following properties:
- `name`: (string, optional)
- `type`: (string, optional)
- `metadata`: (object, optional)
## Healthchecks
```json
{
"healthchecks": {
"web": [
{
"type": "startup",
"name": "web check",
"description": "Checking if the app responds to the /health/ready endpoint",
"path": "/health/ready",
"attempts": 3
}
]
}
}
```
(object, optional) A key-value object specifying healthchecks to run for a given process type.
- `attempts`: (int, optional)
- `command`: (list of strings, optional)
- `content`: (string, optional)
- `httpHeaders`: (list of header objects, optional)
- `initialDelay`: (int, optional)
- `listening`: (boolean, optional)
- `name`: (string, optional)
- `path`: (string, optional)
- `port`: (int, optional)
- `scheme`: (string, optional)
- `timeout`: (int, optional)
- `type`: (string, optional)
- `uptime`: (int, optional)
- `wait`: (int, optional)
- `warn`: (boolean, optional)
- `onFailure`: (object, optional)
## Scripts
```json
{
"scripts": {
"dokku": {
"predeploy": "touch /app/predeploy.test",
"postdeploy": "curl https://some.external.api.service.com/deployment?state=success"
},
"postdeploy": "curl https://some.external.api.service.com/created?state=success"
}
}
```
(object, optional) A key-value object specifying scripts or shell commands to execute at different stages in the build/release process.
- `dokku.predeploy`: (string, optional)
- When to use: This should be used if your app does not support arbitrary build commands and you need to make changes to the built image.
- Are changes committed to the image at this phase: Yes
- Example use-cases
- Bundling assets in a slightly different way
- Installing a custom package from source or copying a binary into place
- `dokku.postdeploy`: (string, optional)
- When to use: This should be used in conjunction with external systems to signal the completion of your deploy.
- Are changes committed to the image at this phase: No
- Example use-cases
- Notifying slack that your app is deployed
- Coordinating traffic routing with a central load balancer
- `postdeploy`: (string, optional)
- When to use: This should be used when you wish to run a command _once_, after the app is created and not on subsequent deploys to the app.
- Are changes committed to the image at this phase: No
- Example use-cases
- Setting up OAuth clients and DNS
- Loading seed/test data into the app’s test database

View File

@@ -0,0 +1,14 @@
# .buildpacks
The `.buildpacks` file is used to specify the buildpacks for an application. It is a list of buildpack URLs.
```shell
https://github.com/heroku/heroku-buildpack-nodejs.git
https://github.com/heroku/heroku-buildpack-ruby.git
```
When installed, a buildpack is checked to see if it is a git repository via `git ls-remote`. If it is not, the buildpack is checked to see if it ends in `.tgz`, `.tar.gz`, `.tbz`, `tar.bz`, or `.tar` and is downloaded/extracted before being executed.
If the buildpack is located on Github, a shorthand can be used in the form of `organization/buildpack-name`. This will be expanded to the `https://github.com/organization/heroku-buildpack-buildpack-name.git`. The `heroku-community` organization name is treated as `heroku`.
Comments are not allowed in the `.buildpacks` file.

View File

@@ -0,0 +1,3 @@
# Dockerfile
A Dockerfile is used to build a Docker image for an application. Please refer to the [Dockerfile reference](https://docs.docker.com/reference/dockerfile/) for more information.

View File

@@ -0,0 +1,16 @@
# lambda.yml
The `lambda.yml` file is used to configure a Lambda application.
```yaml
---
build_image: mlupin/docker-lambda:dotnetcore3.1-build
builder: dotnet
run_image: mlupin/docker-lambda:dotnetcore3.1
```
## Fields
`build_image`: A docker image that is accessible by the docker daemon. The `build_image` should be based on an existing Lambda image - builders may fail if they cannot run within the specified `build_image`. The build will fail if the image is inaccessible by the docker daemon.
`builder`: The name of a builder. This may be used if multiple builders match and a specific builder is desired. If an invalid builder is specified, the build will fail.
`run_image`: A docker image that is accessible by the docker daemon. The `run_image` should be based on an existing Lambda image - built images may fail to start if they are not compatible with the produced artifact. The generation of the `run_image` will fail if the image is inaccessible by the docker daemon.

View File

@@ -0,0 +1,3 @@
# nginx.conf.sigil
The `nginx.conf.sigil` file is used to configure the nginx server for an application. The default template can be found [here](https://github.com/dokku/dokku/blob/master/plugins/nginx-vhosts/templates/nginx.conf.sigil). Dokku uses a tool named [sigil](https://github.com/gliderlabs/sigil) to generate the nginx configuration based on the template provided.

View File

@@ -0,0 +1,3 @@
# nixpacks.toml
The `nixpacks.toml` file is used to configure an application when built with the `nixpacks` builder. Please refer to the [nixpacks.toml documentation](https://nixpacks.com/docs/configuration/file.md) for more information.

View File

@@ -0,0 +1,48 @@
# Procfile
A Procfile is a file that was [promoted by Heroku](https://blog.heroku.com/the_new_heroku_1_process_model_procfile) for their platform as an easy way to specify one or more distinct processes to run within Heroku. This format has since been picked up by various other tools and platforms.
## General Overview
The `procfile-util` tool expects a Procfile to be defined as one or more lines containing one of:
- a comment (preceeded by a `#` symbol or two `//` characters)
- a process-type/command combination (with optional trailing whitespace or trailing comment)
- when there is a trailing comment, the `#` symbol/`//` characters _must_ be preceeded by one or more `whitespace` characters.
- a blank line (with optional trailing whitespace)
Comments and blank lines are ignored, while process-type/command combinations look like the following:
```
<process type>: <command>
```
The syntax is defined as follows:
- `<process type>` – any character in the class `[A-Za-z0-9_-]+`, a process type is a name for your command, such as `web`, `worker`, `urgentworker`, `clock`, etc.
- `<command>` – a command used to launch the process, such as `rake jobs:work`
Additional rules are as follows:
- contain at most 63 characters
A Procfile that does not match any of the above rules will be considered invalid, and not be processed. This is to avoid issues where a Procfile may contain merge conflicts or other improper content, thus resulting in unwanted runtime behavior for applications.
Finally, process types within a Procfile may not overlap and must be unique. Rather than assuming that the last or first specified is correct, `procfile-util` will fail to parse the Procfile with the relevant error.
### Strict Mode
> Strict mode can be triggered on `procfile-util` via the `--strict` flag.
In strict mode, the character set of a process type changes.
- `<process type>` – a valid DNS Label Name as per [RFC 1123](https://tools.ietf.org/html/rfc1123), a process type is a name for your command, such as `web`, `worker`, `urgentworker`, `clock`, etc.
This syntax differs common interpretations of valid `<process type>` values in that we define the process type as a DNS Label name, versus the regex `[A-Za-z0-9_]+`. The reason for this is that processes defined within Procfiles are commonly used in DNS entries. Rather than have a second level of platform-specific validation in place, this project implicitly defines the format for the process-type.
Given the above, a valid process type can be generalized to the following rules (as taken from the [Kubernetes documentation](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-label-names)):
- contain at most 63 characters
- contain only lowercase alphanumeric characters or '-'
- start with an alphanumeric character
- end with an alphanumeric character

View File

@@ -0,0 +1,3 @@
# project.toml
The project descriptor file allows app developers to provide configuration for apps deployed to Dokku via the `pack` builder. Please refer to the [project.toml documentation](https://buildpacks.io/docs/reference/config/project-descriptor/) for more information.

View File

@@ -2,10 +2,10 @@
<browserconfig>
<msapplication>
<tile>
<square70x70logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/mstile-70x70.png"/>
<square150x150logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/mstile-150x150.png"/>
<square310x310logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/mstile-310x310.png"/>
<wide310x150logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/mstile-310x150.png"/>
<square70x70logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/mstile-70x70.png"/>
<square150x150logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/mstile-150x150.png"/>
<square310x310logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/mstile-310x310.png"/>
<wide310x150logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/mstile-310x150.png"/>
<TileColor>#da532c</TileColor>
</tile>
</msapplication>

View File

@@ -2,37 +2,37 @@
"name": "Dokku",
"icons": [
{
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.35.2\/docs\/assets\/favicons\/android-chrome-36x36.png",
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.35.14\/docs\/assets\/favicons\/android-chrome-36x36.png",
"sizes": "36x36",
"type": "image\/png",
"density": "0.75"
},
{
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.35.2\/docs\/assets\/favicons\/android-chrome-48x48.png",
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.35.14\/docs\/assets\/favicons\/android-chrome-48x48.png",
"sizes": "48x48",
"type": "image\/png",
"density": "1.0"
},
{
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.35.2\/docs\/assets\/favicons\/android-chrome-72x72.png",
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.35.14\/docs\/assets\/favicons\/android-chrome-72x72.png",
"sizes": "72x72",
"type": "image\/png",
"density": "1.5"
},
{
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.35.2\/docs\/assets\/favicons\/android-chrome-96x96.png",
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.35.14\/docs\/assets\/favicons\/android-chrome-96x96.png",
"sizes": "96x96",
"type": "image\/png",
"density": "2.0"
},
{
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.35.2\/docs\/assets\/favicons\/android-chrome-144x144.png",
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.35.14\/docs\/assets\/favicons\/android-chrome-144x144.png",
"sizes": "144x144",
"type": "image\/png",
"density": "3.0"
},
{
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.35.2\/docs\/assets\/favicons\/android-chrome-192x192.png",
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.35.14\/docs\/assets\/favicons\/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image\/png",
"density": "4.0"

View File

@@ -32,6 +32,6 @@
"0.32.4",
"0.33.9",
"0.34.9",
"0.35.2"
"0.35.14"
]
}

View File

@@ -39,7 +39,7 @@ dokku config:set node-js-app KEY="VAL\ WITH\ SPACES"
Dokku can also read base64 encoded values. That's the easiest way to set a value with newlines or spaces. To set a value with newlines you need to base64 encode it first and pass the `--encoded` flag:
```shell
dokku config:set --encoded node-js-app KEY="$(base64 ~/.ssh/id_rsa)"
dokku config:set --encoded node-js-app KEY="$(base64 -w 0 ~/.ssh/id_rsa)"
```
When setting or unsetting environment variables, you may wish to avoid an application restart. This is useful when developing plugins or when setting multiple environment variables in a scripted manner. To do so, use the `--no-restart` flag:

View File

@@ -233,3 +233,33 @@ dokku logs:set test vector-sink "http://?uri=https%3A//loggerservice.com%3A1234/
```
Please read the [sink documentation](https://vector.dev/docs/reference/configuration/sinks/) for your sink of choice to configure the sink as desired.
##### Configuring the app label
Logs shipped by vector include the label `com.dokku.app-name`, which is an alias for the app name. This can be changed via the `app-label-alias` logs property with the `logs:set` command. Specifying a new alias will reload any running vector container.
```shell
# setting the sink value in quotes is encouraged to avoid
# issues with ampersand encoding in shell commands
dokku logs:set node-js-app app-label-alias "app-name"
```
An alias may be removed by setting an empty value, which will also reload the running vector container.
```shell
dokku logs:set node-js-app app-label-alias
```
Only one alias may be specified on a per-app basis at a given time.
App label aliases can also be specified globally by specifying the `--global` flag to `logs:set` with no app name specified:
```shell
dokku logs:set --global app-label-alias "app-name"
```
As with app-specific label alias settings, the global value may also be cleared by setting no value.
```shell
dokku logs:set --global app-label-alias
```

View File

@@ -10,6 +10,7 @@ scheduler-k3s:autoscaling-auth:report <app|--global> [--format stdout|json] [--i
scheduler-k3s:cluster-add [ssh://user@host:port] # Adds a server node to a Dokku-managed cluster
scheduler-k3s:cluster-list # Lists all nodes in a Dokku-managed cluster
scheduler-k3s:cluster-remove [node-id] # Removes client node to a Dokku-managed cluster
scheduler-k3s:ensure-charts # Ensures the k3s charts are installed
scheduler-k3s:initialize # Initializes a cluster
scheduler-k3s:labels:set <app|--global> <property> (<value>) [--process-type PROCESS_TYPE] <--resource-type RESOURCE_TYPE>, Set or clear a label for a given app/process-type/resource-type combination
scheduler-k3s:report [<app>] [<flag>] # Displays a scheduler-k3s report for one or more apps
@@ -61,7 +62,7 @@ By default, Dokku will attempt to auto-detect the IP address of the server. In c
dokku scheduler-k3s:initialize --server-ip 192.168.20.15
```
Dokku's k3s integration natively uses `nginx` as it's ingress load balancer via [ingress-nginx](https://github.com/kubernetes/ingress-nginx). Properties set by the `nginx` plugin will be respected, either by turning them into annotations or creating a custom server/location snippet that the `ingress-nginx` project can use.
Dokku's k3s integration natively uses `nginx` as it's ingress load balancer via [ingress-nginx](https://github.com/kubernetes/ingress-nginx). Properties set by the `nginx` plugin will be respected, either by turning them into annotations or creating a custom server/location snippet that the `ingress-nginx` project can use. A `ps:restart` is required after changing nginx properties in order to have them apply to running resources.
Dokku can also use Traefik on cluster initialization via the [Traefik's CRDs](https://doc.traefik.io/traefik/providers/kubernetes-crd/). To change the ingress, set the `--ingress-class` flag:
@@ -312,6 +313,8 @@ The following resource types are supported:
- `traefik_ingressroute`
- `traefik_middleware`
A `ps:restart` is required after setting annotations in order to have them apply to running resources.
#### Removing an annotation
To unset an annotation, pass an empty value:
@@ -321,6 +324,8 @@ dokku scheduler-k3s:annotations:set node-js-app annotation.key --resource-type d
dokku scheduler-k3s:annotations:set node-js-app annotation.key --resource-type deployment --process-type web
```
A `ps:restart` is required after removing annotations in order to remove them from running resources.
#### Setting Labels
Dokku injects certain labels into each created resource by default, but it may be necessary to inject others for tighter integration with third-party tools. The `scheduler-k3s:labels:set` command can be used to perform this task. The command takes an app name and a required `--resource-type` flag.
@@ -349,6 +354,8 @@ The following resource types are supported:
- `traefik_ingressroute`
- `traefik_middleware`
A `ps:restart` is required after setting labels in order to have them apply to running resources.
#### Removing a label
To unset an label, pass an empty value:
@@ -358,6 +365,8 @@ dokku scheduler-k3s:annotations:set node-js-app label.key --resource-type deploy
dokku scheduler-k3s:labels:set node-js-app label.key --resource-type deployment --process-type web
```
A `ps:restart` is required after removing labels in order to remove them from running resources.
### Autoscaling
#### Workload Autoscaling
@@ -408,6 +417,56 @@ Each value in the `metadata` stanza can use the following interpolated strings:
- `DOKKU_PROCESS_TYPE`: The name of the process being scaled
- `DOKKU_APP_NAME`: The name of the app being scaled
##### HTTP Autoscaling
In addition to the built-in scalers that Keda provides, Dokku also supports Keda's HTTP Add On. This requires that the addon be properly installed and configured. For existing k3s clusters, this can be performed by the `scheduler-k3s:ensure-charts` command:
```shell
dokku scheduler-k3s:ensure-charts
```
> [!NOTE]
> Users who wish to use this functionality on a cluster not managed by Dokku will need to manually install the `keda-http-add-on` into the `keda` namespace. Please consult the `keda-http-add-on` [install documentation](https://kedacore.github.io/http-add-on/install.html) for further details.
> [!WARNING]
> If the `keda-http-add-on` chart is not installed, then this trigger will be ignored.
Once the chart is configured, an `http` trigger can be specified like so:
```json
{
"formation": {
"web": {
"autoscaling": {
"min_quantity": 1,
"max_quantity": 10,
"triggers": [
{
"type": "http",
"metadata": {
"scaledown_period_seconds": "150",
"request_rate_target_value": "50"
}
}
]
}
}
}
}
```
The following metadata properties are supported with the http autoscaler:
- `scale_by`: (default: `request_rate`) whether to scale by `concurrency` or `request_rate`.
- `scaledown_period_seconds`: (default: `300`) period to wait after the last reported active before scaling the resource back to 0.
- `request_rate_granularity_seconds`: (default: `1`) granualarity of the aggregated requests for the request rate calculation.
- `request_rate_target_value`: (default: `100`) target value for the request rate.
- `request_rate_window_seconds`: (default: `60`) aggregation window for the request rate calculation.
- `concurrency_target_value`: (default: `100`) target value for the request concurrency.
Note that due to Keda limitations, scaling is done by _either_ `concurrency` or `request_rate`.
#### Workload Autoscaling Authentication
Most Keda triggers require some form of authentication to query for data. In the Kubernetes API, they are represented by `TriggerAuthentication` and `ClusterTriggerAuthentication` resources. Dokku can manage these via the `scheduler-k3s:autoscaling-auth` commands, and includes generated resources with each helm release generated by a deploy.
@@ -513,6 +572,36 @@ dokku scheduler-k3s:set --global kube-context
The default value for the `kube-context` is an empty string, and will result in Dokku using the current context within the kubeconfig.
### Customizing Helm Chart Properties
Dokku includes a number of helm charts by default with settings that are optimized for Dokku. That said, it may be useful to further customize the charts for a given environment. Users can customize which charts are installed by setting properties prefixed with `chart.$CHART_NAME.` with the `--global` flag.
```shell
dokku scheduler-k3s:set --global chart.cert-manager.version 1.13.3
```
> [!NOTE]
> Properties follow dot-notation, and are expanded according to Helm's internal logic. See the [Helm documentation](https://helm.sh/docs/helm/helm_install/#helm-install) for `helm install` for further details.
To unset a chart property, omit the value from the `scheduler-k3s:set` call:
```shell
dokku scheduler-k3s:set --global chart.cert-manager.version
```
A `scheduler-k3s:ensure-charts` command with the `--force` flag is required after changing any chart properties in order to have them apply. This will install all charts, not just the ones that have changed.
```shell
dokku scheduler-k3s:ensure-charts --force
```
Alternatively, a comma separated list of chart names can be specified to only force install the specified charts:
```shell
dokku scheduler-k3s:ensure-charts --force --chart-names cert-manager
```
## Scheduler Interface
The following sections describe implemented and unimplemented scheduler functionality for the `k3s` scheduler.
@@ -528,13 +617,17 @@ This plugin implements various functionality through `plugn` triggers to integra
- `enter`
- `deploy`
- healthchecks
- Due to Kubernetes limitations, only a single healthcheck is supported for each of the `liveness`, `readiness`, and `startup` healthchecks
- Due to Kubernetes limitations, content checks are not supported
- Ports specified in the `app.json` are ignored in favor of the container port on the port mapping detected
- Due to Kubernetes limitations, only a single healthcheck is supported for each of the `liveness`, `readiness`, and `startup` healthchecks
- Due to Kubernetes limitations, content checks are not supported
- Ports specified in the `app.json` are ignored in favor of the container port on the port mapping detected
- `logs`
- `nginx`
- Properties set by the `nginx` plugin will be respected, either by turning them into annotations or creating a custom server/location snippet that the `ingress-nginx` project can use. A `ps:restart` after changing any nginx properties is required in order to have them apply.
- The `nginx:access-logs` and `nginx:error-logs` commands will fetch logs from one running `ingress-nginx` pod.
- The `nginx:show-config` command will retrieve any `server` blocks associated with a domain attached to the app from one running `ingress-nginx` pod.
- `ps:stop`
- `run`
- The `scheduler-post-run` trigger is not always triggered
- The `scheduler-post-run` trigger is not always triggered
- `run:detached`
- `run:list`

View File

@@ -150,13 +150,13 @@ One or more healthchecks can be defined in the `app.json` file - see the [deploy
{
"healthchecks": {
"web": [
{
"type": "startup",
"name": "web check",
"description": "Checking if the app responds to the /health/ready endpoint",
"path": "/health/ready",
"attempts": 3
}
{
"type": "startup",
"name": "web check",
"description": "Checking if the app responds to the /health/ready endpoint",
"path": "/health/ready",
"attempts": 3
}
]
}
}

View File

@@ -2583,6 +2583,25 @@ DOKKU_SCHEDULER="$1"; APP="$2";
# TODO
```
### `scheduler-proxy-logs`
> [!WARNING]
> The scheduler plugin trigger apis are under development and may change
> between minor releases until the 1.0 release.
- Description: Allows you to run scheduler commands when retrieving failed container logs
- Invoked by: `dokku nginx:access-logs` and `dokku nginx:error-logs`
- Arguments: `$DOKKU_SCHEDULER $APP $PROXY_TYPE $LOG_TYPE $TAIL $NUM_LINES`
- Example:
```shell
#!/usr/bin/env bash
set -eo pipefail; [[ $DOKKU_TRACE ]] && set -x
DOKKU_SCHEDULER="$1"; APP="$2"; $PROXY_TYPE="$3"; LOG_TYPE="$4"; TAIL="$5"; NUM_LINES="$6"
# TODO
```
### `scheduler-pre-restore`
> [!WARNING]

View File

@@ -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.35.2-2 (Mon Feb 22 23:20:37 CET 2016)"
# wait for "==> build-arch: ==> Finished making: dokku 0.35.14-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'

View File

@@ -9,11 +9,11 @@ We maintain the Dokku test harness within the `tests` directory:
## Continuous Integration
All pull requests have tests run against them on [GitHub Actions](https://github.com/features/actions), a continuous integration platform that provides Docker support for Ubuntu Jammy 22.04.
All pull requests have tests run against them on [GitHub Actions](https://github.com/features/actions), a continuous integration platform that provides Docker support for Ubuntu Noble 24.04.
If you wish to skip tests for a particular commit, e.g. documentation changes, you may add the `[ci skip]` designator to your commit message. Commits that _should_ be tested but have the above designator will not be merged.
While we do provide official packages for a variety of platforms, as our test suite currently runs on Ubuntu Jammy 22.04, we only provide official installation support for that platform and the supported LTS releases of Ubuntu (currently 20.04, 22.04, and 24.04).
While we do provide official packages for a variety of platforms, as our test suite currently runs on Ubuntu Noble 24.04, we only provide official installation support for that platform and the supported LTS releases of Ubuntu (currently 20.04, 22.04, and 24.04).
## Local Test Execution

View File

@@ -3,7 +3,7 @@
Pull the dokku/dokku image:
```shell
docker pull dokku/dokku:0.35.2
docker pull dokku/dokku:0.35.14
```
Next, run the image.
@@ -19,7 +19,7 @@ docker container run -d \
--publish 8443:443 \
--volume /var/lib/dokku:/mnt/dokku \
--volume /var/run/docker.sock:/var/run/docker.sock \
dokku/dokku:0.35.2
dokku/dokku:0.35.14
```
Alternatively, you can use `docker-compose.yml`:
@@ -27,7 +27,7 @@ Alternatively, you can use `docker-compose.yml`:
```yaml
services:
dokku:
image: dokku/dokku:0.35.2
image: dokku/dokku:0.35.14
container_name: dokku
network_mode: bridge
ports:
@@ -83,7 +83,7 @@ redis: https://github.com/dokku/dokku-redis.git
The alternative is to build a custom docker image via a custom Dockerfile. This Dockerfile can run any `plugin:install` command. Note that the version installed at that time will be the one that persists. Below is an example Dockerfile showing this method.
```Dockerfile
FROM dokku/dokku:0.35.2
FROM dokku/dokku:0.35.14
RUN dokku plugin:install https://github.com/dokku/dokku-postgres.git postgres
RUN dokku plugin:install https://github.com/dokku/dokku-redis.git redis
```

View File

@@ -10,7 +10,7 @@ To start using Dokku, you'll need a system that meets the following minimum requ
- A fresh installation of any of the following operating systems:
- [Ubuntu 20.04/22.04/24.04](https://www.ubuntu.com/download)
- [Debian 10+ x64](https://www.debian.org/distrib/)
- [Debian 11+ x64](https://www.debian.org/distrib/)
- A server with one of the following architectures
- AMD64 (alternatively known as `x86_64`), commonly used for Intel cloud servers
- ARMV8 (alternatively known as `arm64`), commonly used for Raspberry PI and AWS Graviton
@@ -37,8 +37,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 -NP . https://dokku.com/install/v0.35.2/bootstrap.sh
sudo DOKKU_TAG=v0.35.2 bash bootstrap.sh
wget -NP . https://dokku.com/install/v0.35.14/bootstrap.sh
sudo DOKKU_TAG=v0.35.14 bash bootstrap.sh
```
The installation process takes about 5-10 minutes, depending upon internet connection speed.

View File

@@ -10,26 +10,26 @@
<meta name="author" content="">
<title>Dokku - The smallest PaaS implementation you've ever seen</title>
<link rel="apple-touch-icon" sizes="57x57" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-180x180.png">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/favicon-32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/android-chrome-192x192.png" sizes="192x192">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/favicon-96x96.png" sizes="96x96">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/favicon-16x16.png" sizes="16x16">
<link rel="manifest" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/manifest.json">
<link rel="shortcut icon" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/favicon.ico">
<link rel="apple-touch-icon" sizes="57x57" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-180x180.png">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/favicon-32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/android-chrome-192x192.png" sizes="192x192">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/favicon-96x96.png" sizes="96x96">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/favicon-16x16.png" sizes="16x16">
<link rel="manifest" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/manifest.json">
<link rel="shortcut icon" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/favicon.ico">
<meta name="apple-mobile-web-app-title" content="Dokku">
<meta name="application-name" content="Dokku">
<meta name="msapplication-TileColor" content="#da532c">
<meta name="msapplication-TileImage" content="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/mstile-144x144.png">
<meta name="msapplication-config" content="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/browserconfig.xml">
<meta name="msapplication-TileImage" content="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/mstile-144x144.png">
<meta name="msapplication-config" content="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/browserconfig.xml">
<meta name="theme-color" content="#ffffff">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-0evHe/X+R7YkIZDRvuzKMRqM+OrBnVFBL6DOitfPri4tjfHxaWutUpFmBp4vmVor" crossorigin="anonymous">
@@ -38,7 +38,7 @@
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&display=swap" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/style.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/style.css" rel="stylesheet">
<!-- <link href="./assets/style.css" rel="stylesheet"> -->
</head>
@@ -98,7 +98,7 @@
<main class="container px-4 px-lg-5">
<div class="row">
<div class="col-lg-7">
<a class="badge-link" href="https://github.com/dokku/dokku/releases"><span class="badge py-2 d-flex fit-content"><div class="circle align-self-center me-2"></div>Latest release <span id="releaseVersion" class="ms-1">v0.35.2</span></span></a>
<a class="badge-link" href="https://github.com/dokku/dokku/releases"><span class="badge py-2 d-flex fit-content"><div class="circle align-self-center me-2"></div>Latest release <span id="releaseVersion" class="ms-1">v0.35.14</span></span></a>
<h1 class="text-white hero-heading mt-5">An open source PAAS alternative to Heroku.</h1>
<h4 class="text-white mt-5">Dokku helps you build and manage the lifecycle of applications from building to scaling.</h4>
<div class="d-flex mt-5">
@@ -125,7 +125,7 @@
</p>
<p class="line">
<span class="prompt">$</span>
<span class="command">sudo DOKKU_TAG=v0.35.2 bash bootstrap.sh</span>
<span class="command">sudo DOKKU_TAG=v0.35.14 bash bootstrap.sh</span>
</p>
<br>
@@ -668,7 +668,7 @@
<div class="container">
<div class="row">
<div class="col-lg-12 align-self-start text-white">
<p class="m-0 py-3">© 2013-2022 Dokku. Website designed & developed by <a data-bs-toggle="tooltip" data-bs-placement="right" title="Available for freelance" href="https://yasoob.me" class="text-decoration-none text-white">Yasoob Khalid</a></p>
<p class="m-0 py-3">© Dokku. Website designed & developed by <a data-bs-toggle="tooltip" data-bs-placement="right" title="Available for freelance" href="https://yasoob.me" class="text-decoration-none text-white">Yasoob Khalid</a></p>
</div>
</div>
</div>

View File

@@ -4,15 +4,15 @@
> New as of 0.11.0, Enhanced in 0.20.0
```
network:create <network> # Creates an attachable docker network
network:destroy <network> # Destroys a docker network
network:exists <network> # Checks if a docker network exists
network:info <network> # Outputs information about a docker network
network:list # Lists all docker networks
network:report [<app>] [<flag>] # Displays a network report for one or more apps
network:rebuild <app> # Rebuilds network settings for an app
network:rebuildall # Rebuild network settings for all apps
network:set <app> <key> (<value>) # Set or clear a network property for an app
network:create <network> # Creates an attachable docker network
network:destroy <network> # Destroys a docker network
network:exists <network> # Checks if a docker network exists
network:info <network> [--format text|json] # Outputs information about a docker network
network:list [--format text|json] # Lists all docker networks
network:report [<app>] [<flag>] # Displays a network report for one or more apps
network:rebuild <app> # Rebuilds network settings for an app
network:rebuildall # Rebuild network settings for all apps
network:set <app> <key> (<value>) # Set or clear a network property for an app
```
The Network plugin allows developers to abstract the concept of container network management, allowing developers to both change what networks a given container is attached to as well as rebuild the configuration on the fly.
@@ -51,6 +51,21 @@ none
test-network
```
The `network:list` command also takes a `--format` flag, with the valid options including `text` (default) and `json`. The `json` output format can be used for automation purposes:
```shell
dokku network:list --format json
```
```
[
{"CreatedAt":"2024-02-25T01:55:24.275184461Z","Driver":"bridge","ID":"d18df2d21433","Internal":false,"IPv6":false,"Labels":{},"Name":"bridge","Scope":"local"},
{"CreatedAt":"2024-02-25T01:55:24.275184461Z","Driver":"bridge","ID":"f50fa882e7de","Internal":false,"IPv6":false,"Labels":{},"Name":"test-network","Scope":"local"},
{"CreatedAt":"2024-02-25T01:55:24.275184461Z","Driver":"host","ID":"ab6a59291443","Internal":false,"IPv6":false,"Labels":{},"Name":"host","Scope":"local"},
{"CreatedAt":"2024-02-25T01:55:24.275184461Z","Driver":"null","ID":"e2506bc8b7d7","Internal":false,"IPv6":false,"Labels":{},"Name":"none","Scope":"local"}
]
```
### Creating a network
> [!IMPORTANT]
@@ -117,16 +132,30 @@ The `network:exists` command will return non-zero if the network does not exist,
### Checking network info
> [!IMPORTANT]
> New as of 0.20.0, Requires Docker 1.21+
> New as of 0.35.3
Network information can be retrieved via the `network:info` command. This is a slightly different version of the `docker network` command.
```shell
dokku network:info test-network
dokku network:info bridge
```
```
// TODO
=====> bridge network information
ID: d18df2d21433
Name: bridge
Driver: bridge
Scope: local
```
The `network:info` command also takes a `--format` flag, with the valid options including `text` (default) and `json`. The `json` output format can be used for automation purposes:
```shell
dokku network:info bridge --format json
```
```
{"CreatedAt":"2024-02-25T01:55:24.275184461Z","Driver":"bridge","ID":"d18df2d21433","Internal":false,"IPv6":false,"Labels":{},"Name":"bridge","Scope":"local"}
```
### Routing an app to a known ip:port combination
@@ -255,7 +284,7 @@ The default value may be set by passing an empty value for the option:
dokku network:set node-js-app tld
```
The `tld` property can also be set globally. The global default is emty string, and the global value is used when no app-specific value is set.
The `tld` property can also be set globally. The global default is empty string, and the global value is used when no app-specific value is set.
```shell
dokku network:set --global tld svc.cluster.local

View File

@@ -190,7 +190,7 @@ Sometimes it may be desirable to set a different path for a given app, e.g. when
dokku nginx:set node-js-app nginx-conf-sigil-path .dokku/nginx.conf.sigil
```
The value is the path to the desired file *relative* to the base search directory, and will never be treated as absolute paths in any context. If that file does not exist within the repository, Dokku will continue the build process as if the repository has no `nginx.conf.sigil`.
The value is the path to the desired file _relative_ to the base search directory, and will never be treated as absolute paths in any context. If that file does not exist within the repository, Dokku will continue the build process as if the repository has no `nginx.conf.sigil`.
The default value may be set by passing an empty value for the option:
@@ -315,28 +315,35 @@ Changing these value globally or on a per-app basis will require rebuilding the
> [!WARNING]
> Validation is not performed against the values, and they are used as is within Dokku.
| Property | Default | Type | Explanation |
| Property | Default | Type | Explanation |
| --------------------------|---------------------------------------|---------|-------------------------------------------------------------------------------------|
| access-log-format | empty string | string | Name of custom log format to use (log format must be specified elsewhere) |
| access-log-path | `${NGINX_LOG_ROOT}/${APP}-access.log` | string | Log path for nginx access logs (set to `off` to disable) |
| bind-address-ipv4 | `0.0.0.0` | string | Default IPv4 address to bind to |
| bind-address-ipv6 | `[::]` | string | Default IPv6 address to bind to |
| client-max-body-size | `1m` | string | Size (with units) of client request body (usually modified for file uploads) |
| client-body-timeout | `60s` | string | Timeout (with units) for reading the client request body |
| client-header-timeout | `60s` | string | Timeout (with units) for reading the client request headers |
| error-log-path | `${NGINX_LOG_ROOT}/${APP}-error.log` | string | Log path for nginx error logs (set to `off` to disable) |
| hsts | `true` | boolean | Enables or disables HSTS for your application |
| hsts-include-subdomains | `true` | boolean | Forces the browser to apply the HSTS policy to all app subdomains |
| hsts-max-age | `15724800` | integer | Time in seconds to cache HSTS configuration |
| hsts-preload | `false` | boolean | Tells the browser to include the domain in their HSTS preload lists |
| keepalive-timeout | `75s` | string | Timeout (with units) during which a keep-alive client connection will stay open on the server side |
| lingering-timeout | `5s` | string | Timeout (with units) is the maximum waiting time for more client data to arrive |
| nginx-conf-sigil-path | `nginx.conf.sigil` | string | Path in the repository to the `nginx.conf.sigil` file |
| proxy-buffer-size | `8k` (# is os pagesize) | string | Size of the buffer used for reading the first part of proxied server response |
| proxy-buffering | `on` | string | Enables or disables buffering of responses from the proxied server |
| proxy-buffers | `8 8k` | string | Number and size of the buffers used for reading the proxied server response, for a single connection |
| proxy-busy-buffers-size | `16k` | string | Limits the total size of buffers that can be busy sending a response to the client while the response is not yet fully read. |
| proxy-connect-timeout | `60s` | string | Timeout (with units) for establishing a connection to your backend server |
| proxy-read-timeout | `60s` | string | Timeout (with units) for reading response from your backend server |
| proxy-send-timeout | `60s` | string | Timeout (with units) for transmitting a request to your backend server |
| send-timeout | `60s` | string | Timeout (with units) for transmitting a response to your the client |
| underscore-in-headers | `off` | string | Enables or disables the use of underscores in client request header fields. |
| x-forwarded-for-value | `$remote_addr` | string | Used for specifying the header value to set for the `X-Forwarded-For` header |
| x-forwarded-port-value | `$server_port` | string | Used for specifying the header value to set for the `X-Forwarded-Port` header |
| x-forwarded-proto-value | `$scheme` | string | Used for specifying the header value to set for the `X-Forwarded-Proto` header |
| x-forwarded-for-value | `$remote_addr` | string | Used for specifying the header value to set for the `X-Forwarded-For` header |
| x-forwarded-port-value | `$server_port` | string | Used for specifying the header value to set for the `X-Forwarded-Port` header |
| x-forwarded-proto-value | `$scheme` | string | Used for specifying the header value to set for the `X-Forwarded-Proto` header |
| x-forwarded-ssl | empty string | string | Less commonly used alternative to `X-Forwarded-Proto` (valid values: `on` or `off`) |
#### Binding to specific addresses
@@ -377,7 +384,6 @@ Properties:
- `x-forwarded-proto-value`
- `x-forwarded-ssl`
Dokku's default Nginx configuration passes the de-facto standard HTTP headers [`X-Forwarded-For`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For), [`X-Forwarded-Proto`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Proto), and `X-Forwarded-Port` to your application.
These headers indicate the IP address of the original client making the request, the protocol of the original request (HTTP or HTTPS), and the port number of the original request, respectively.
@@ -426,7 +432,7 @@ dokku nginx:set node-js-app error-log-path off
Properties:
- `acccess-log-format`
- `access-log-format`
Prior to changing the log-format, log formats should be specified at a file such as `/etc/nginx/conf.d/00-log-formats.conf`. This will ensure they are available within your app's nginx context. For instance, the following may be added to the above file. It only needs to be specified once to be used for all apps.
@@ -469,7 +475,6 @@ This property is commonly used to increase the max file upload size.
Changing this value when using the PHP buildpack (or any other buildpack that uses an intermediary server) will require changing the value in the server config shipped with that buildpack. Consult your buildpack documentation for further details.
## Other
### Domains plugin

View File

@@ -12,6 +12,9 @@ enter <app> [<container-type> || --container-id <container-id>] # Connect to a
The `enter` command can be used to enter a running container. The following variations of the command exist:
```shell
# enter the first container
dokku enter node-js-app
# enter the web process
dokku enter node-js-app web

View File

@@ -66,7 +66,7 @@ dokku run --no-tty node-js-app ls -lah
> [!IMPORTANT]
> New as of 0.25.0
Finally, a container can be run in "detached" mode via the `run:detached` Dokku command. Running a process in detached mode will immediately return a `CONTAINER_ID`. Detached containers are run without a tty and are also removed at the end of process execution.
Finally, a container can be run in "detached" mode via the `run:detached` Dokku command. Running a process in detached mode will immediately return the container name (or pod name when using the k3s scheduler). Detached containers run without a tty by default and are also removed at the end of process execution.
```shell
dokku run:detached node-js-app ls -lah

View File

@@ -48,10 +48,30 @@ When running scheduled cron tasks, there are a few items to be aware of:
- Schedules are performed on the hosting server's timezone, which is typically UTC.
- At this time, only the `PATH` and `SHELL` environment variables are specified in the cron template.
- A `MAILTO` value can be set via the `cron:set` command.
- A `MAILFROM` value can be set via the `cron:set` command.
- Each scheduled task is executed within a one-off `run` container, and thus inherit any docker-options specified for `run` containers. Resources are never shared between scheduled tasks.
- Scheduled cron tasks are supported on a per-scheduler basis, and are currently only implemented by the `docker-local` scheduler.
- Tasks for _all_ apps managed by the `docker-local` scheduler are written to a single crontab file owned by the `dokku` user. The `dokku` user's crontab should be considered reserved for this purpose.
#### Specifying a MAILFROM value
> [!IMPORTANT]
> New as of 0.35.14
Users can specify a value for `MAILFROM` via the global `mailfrom` cron property by using the `cron:set` command.
```shell
dokku cron:set --global mailfrom example@example.com
```
All output for individual cron runs will be sent from the specified email.
Cron emails can be reset to use the system email by running the `cron:set` command for the global `mailfrom` property with no value.
```shell
dokku cron:set --global mailfrom
```
#### Specifying a MAILTO value
By default, cron tasks complete and do not perform any reporting. Users can specify a value for `MAILTO` via the global `mailto` cron property by using the `cron:set` command.

View File

@@ -9,26 +9,26 @@
<meta name="author" content="">
<title>Dokku - {{DOC_TITLE}}</title>
<link rel="apple-touch-icon" sizes="57x57" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/apple-touch-icon-180x180.png">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/favicon-32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/android-chrome-192x192.png" sizes="192x192">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/favicon-96x96.png" sizes="96x96">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/favicon-16x16.png" sizes="16x16">
<link rel="manifest" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/manifest.json">
<link rel="shortcut icon" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/favicon.ico">
<link rel="apple-touch-icon" sizes="57x57" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/apple-touch-icon-180x180.png">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/favicon-32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/android-chrome-192x192.png" sizes="192x192">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/favicon-96x96.png" sizes="96x96">
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/favicon-16x16.png" sizes="16x16">
<link rel="manifest" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/manifest.json">
<link rel="shortcut icon" href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/favicon.ico">
<meta name="apple-mobile-web-app-title" content="Dokku">
<meta name="application-name" content="Dokku">
<meta name="msapplication-TileColor" content="#da532c">
<meta name="msapplication-TileImage" content="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/mstile-144x144.png">
<meta name="msapplication-config" content="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/favicons/browserconfig.xml">
<meta name="msapplication-TileImage" content="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/mstile-144x144.png">
<meta name="msapplication-config" content="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/favicons/browserconfig.xml">
<meta name="theme-color" content="#ffffff">
<script>
@@ -48,7 +48,7 @@
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&display=swap" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.2/docs/assets/style.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.35.14/docs/assets/style.css" rel="stylesheet">
<!-- <link href="./assets/style.css" rel="stylesheet"> -->
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.5.0/css/font-awesome.min.css" rel="stylesheet">
</head>
@@ -260,7 +260,7 @@
<div class="container">
<div class="row">
<div class="col-lg-12 align-self-start text-white">
<p class="m-0 py-3">© 2013-2022 Dokku. Website designed & developed by <a href="https://yasoob.me" class="text-decoration-none text-white">Yasoob Khalid</a></p>
<p class="m-0 py-3">© Dokku. Website designed & developed by <a href="https://yasoob.me" class="text-decoration-none text-white">Yasoob Khalid</a></p>
</div>
</div>
</div>

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core standard plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core events logging plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -1,7 +1,6 @@
package appjson
import (
"context"
"encoding/json"
"errors"
"fmt"
@@ -12,7 +11,6 @@ import (
"github.com/dokku/dokku/plugins/common"
shellquote "github.com/kballard/go-shellquote"
"golang.org/x/sync/errgroup"
)
func constructScript(command string, shell string, isHerokuishImage bool, isCnbImage bool, dockerfileEntrypoint string) []string {
@@ -99,7 +97,7 @@ func getPhaseScript(appName string, phase string) (string, error) {
}
// getReleaseCommand extracts the release command from a given app's procfile
func getReleaseCommand(appName string, image string) string {
func getReleaseCommand(appName string) string {
processType := "release"
port := "5000"
results, _ := common.CallPlugnTrigger(common.PlugnTriggerInput{
@@ -109,40 +107,6 @@ func getReleaseCommand(appName string, image string) string {
return results.StdoutContents()
}
func getDokkuAppShell(appName string) string {
shell := "/bin/bash"
globalShell := ""
appShell := ""
ctx := context.Background()
errs, ctx := errgroup.WithContext(ctx)
errs.Go(func() error {
results, _ := common.CallPlugnTriggerWithContext(ctx, common.PlugnTriggerInput{
Trigger: "config-get-global",
Args: []string{"DOKKU_APP_SHELL"},
})
globalShell = results.StdoutContents()
return nil
})
errs.Go(func() error {
results, _ := common.CallPlugnTriggerWithContext(ctx, common.PlugnTriggerInput{
Trigger: "config-get",
Args: []string{appName, "DOKKU_APP_SHELL"},
})
appShell = results.StdoutContents()
return nil
})
errs.Wait()
if appShell != "" {
shell = appShell
} else if globalShell != "" {
shell = globalShell
}
return shell
}
func hasAppJSON(appName string) bool {
appJSONPath := getAppJSONPath(appName)
if common.FileExists(fmt.Sprintf("%s.%s.missing", appJSONPath, os.Getenv("DOKKU_PID"))) {
@@ -156,7 +120,7 @@ func hasAppJSON(appName string) bool {
return common.FileExists(appJSONPath)
}
func cleanupDeploymentContainer(appName string, containerID string, phase string) error {
func cleanupDeploymentContainer(containerID string, phase string) error {
if phase != "predeploy" {
os.Setenv("DOKKU_SKIP_IMAGE_RETIRE", "true")
}
@@ -177,7 +141,7 @@ func executeScript(appName string, image string, imageTag string, phase string)
command := ""
phaseSource := ""
if phase == "release" {
command = getReleaseCommand(appName, image)
command = getReleaseCommand(appName)
phaseSource = "Procfile"
} else {
var err error
@@ -207,7 +171,7 @@ func executeScript(appName string, image string, imageTag string, phase string)
dockerfileCommand, _ = getCommandFromImage(image)
}
dokkuAppShell := getDokkuAppShell(appName)
dokkuAppShell := common.GetDokkuAppShell(appName)
script := constructScript(command, dokkuAppShell, isHerokuishImage, isCnbImage, dockerfileEntrypoint)
imageSourceType := "dockerfile"
@@ -304,7 +268,7 @@ func executeScript(appName string, image string, imageTag string, phase string)
return fmt.Errorf("Failed to create %s execution container: %s", phase, err.Error())
}
defer cleanupDeploymentContainer(appName, containerID, phase)
defer cleanupDeploymentContainer(containerID, phase)
if !waitForExecution(containerID) {
common.LogInfo2Quiet(fmt.Sprintf("Start of %s %s task (%s) output", appName, phaseName, containerID[0:9]))
@@ -455,7 +419,7 @@ func createdContainerID(appName string, dockerArgs []string, image string, comma
return containerID, err
}
func setScale(appName string, image string) error {
func setScale(appName string) error {
appJSON, err := GetAppJSON(appName)
if err != nil {
return err

View File

@@ -6,25 +6,26 @@ require (
github.com/dokku/dokku/plugins/common v0.0.0-00010101000000-000000000000
github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51
github.com/spf13/pflag v1.0.5
golang.org/x/sync v0.8.0
k8s.io/utils v0.0.0-20240102154912-e7106e64919e
)
require (
github.com/alexellis/go-execute/v2 v2.2.1 // indirect
github.com/fatih/color v1.17.0 // indirect
github.com/fatih/color v1.18.0 // indirect
github.com/hashicorp/errwrap v1.0.0 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
github.com/kr/fs v0.1.0 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/melbahja/goph v1.4.0 // indirect
github.com/otiai10/copy v1.14.0 // indirect
github.com/otiai10/copy v1.14.1 // indirect
github.com/otiai10/mint v1.6.3 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/sftp v1.13.5 // indirect
github.com/ryanuber/columnize v2.1.2+incompatible // indirect
golang.org/x/crypto v0.27.0 // indirect
golang.org/x/sys v0.25.0 // indirect
golang.org/x/crypto v0.32.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/sys v0.29.0 // indirect
)
replace github.com/dokku/dokku/plugins/common => ../common

View File

@@ -3,8 +3,8 @@ github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4=
github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI=
github.com/fatih/color v1.18.0 h1:S8gINlzdQ840/4pfAwic/ZE0djQEH3wM94VfqLTZcOM=
github.com/fatih/color v1.18.0/go.mod h1:4FelSpRwEGDpQ12mAdzqdOukCy4u8WUtOY6lkT/6HfU=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/hashicorp/errwrap v1.0.0 h1:hLrqtEDnRye3+sgx6z4qVLNuviH3MR5aQ0ykNJa/UYA=
@@ -22,12 +22,12 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/melbahja/goph v1.4.0 h1:z0PgDbBFe66lRYl3v5dGb9aFgPy0kotuQ37QOwSQFqs=
github.com/melbahja/goph v1.4.0/go.mod h1:uG+VfK2Dlhk+O32zFrRlc3kYKTlV6+BtvPWd/kK7U68=
github.com/onsi/gomega v1.34.2 h1:pNCwDkzrsv7MS9kpaQvVb1aVLahQXyJ/Tv5oAZMI3i8=
github.com/onsi/gomega v1.34.2/go.mod h1:v1xfxRgk0KIsG+QOdm7p8UosrOzPYRo60fd3B/1Dukc=
github.com/otiai10/copy v1.14.0 h1:dCI/t1iTdYGtkvCuBG2BgR6KZa83PTclw4U5n2wAllU=
github.com/otiai10/copy v1.14.0/go.mod h1:ECfuL02W+/FkTWZWgQqXPWZgW9oeKCSQ5qVfSc4qc4w=
github.com/otiai10/mint v1.5.1 h1:XaPLeE+9vGbuyEHem1JNk3bYc7KKqyI/na0/mLd/Kks=
github.com/otiai10/mint v1.5.1/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/onsi/gomega v1.36.2 h1:koNYke6TVk6ZmnyHrCXba/T/MoLBXFjeC1PtvYgw0A8=
github.com/onsi/gomega v1.36.2/go.mod h1:DdwyADRjrc825LhMEkD76cHR5+pUnjhUN8GlHlRPHzY=
github.com/otiai10/copy v1.14.1 h1:5/7E6qsUMBaH5AnQ0sSLzzTg1oTECmcCmT6lvF45Na8=
github.com/otiai10/copy v1.14.1/go.mod h1:oQwrEDDOci3IM8dJF0d8+jnbfPDllW6vUjNc3DoZm9I=
github.com/otiai10/mint v1.6.3 h1:87qsV/aw1F5as1eH1zS/yqHY85ANKVMgkDrf9rcxbQs=
github.com/otiai10/mint v1.6.3/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/sftp v1.13.5 h1:a3RLUqkyjYRtBTZJZ1VRrKbN3zhuPLlUc3sphVz81go=
@@ -46,20 +46,20 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58=
golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A=
golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70=
golang.org/x/crypto v0.32.0 h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc=
golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I=
golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -70,20 +70,20 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU=
golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.24.0 h1:Mh5cbb+Zk2hqqXNO7S1iTjEphVL+jb8ZWaqh/g+JWkM=
golang.org/x/term v0.24.0/go.mod h1:lOBK/LVxemqiMij05LGJ0tzNr8xlmwBRJ81PX6wVLH8=
golang.org/x/term v0.28.0 h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg=
golang.org/x/term v0.28.0/go.mod h1:Sw/lC2IAUZ92udQNf3WodGtn4k/XoLyZoh8v/8uiwek=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core app-json plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -226,7 +226,7 @@ func TriggerPostReleaseBuilder(builderType string, appName string, image string)
return err
}
if err := setScale(appName, image); err != nil {
if err := setScale(appName); err != nil {
return err
}

View File

@@ -9,20 +9,21 @@ require (
require (
github.com/alexellis/go-execute/v2 v2.2.1 // indirect
github.com/fatih/color v1.17.0 // indirect
github.com/fatih/color v1.18.0 // indirect
github.com/hashicorp/errwrap v1.0.0 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
github.com/kr/fs v0.1.0 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/melbahja/goph v1.4.0 // indirect
github.com/otiai10/copy v1.14.0 // indirect
github.com/otiai10/copy v1.14.1 // indirect
github.com/otiai10/mint v1.6.3 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/sftp v1.13.5 // indirect
github.com/ryanuber/columnize v2.1.2+incompatible // indirect
golang.org/x/crypto v0.27.0 // indirect
golang.org/x/sync v0.8.0 // indirect
golang.org/x/sys v0.25.0 // indirect
golang.org/x/crypto v0.32.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/sys v0.29.0 // indirect
)
replace github.com/dokku/dokku/plugins/common => ../common

View File

@@ -2,8 +2,8 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhs
github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4=
github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI=
github.com/fatih/color v1.18.0 h1:S8gINlzdQ840/4pfAwic/ZE0djQEH3wM94VfqLTZcOM=
github.com/fatih/color v1.18.0/go.mod h1:4FelSpRwEGDpQ12mAdzqdOukCy4u8WUtOY6lkT/6HfU=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/hashicorp/errwrap v1.0.0 h1:hLrqtEDnRye3+sgx6z4qVLNuviH3MR5aQ0ykNJa/UYA=
@@ -19,12 +19,12 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/melbahja/goph v1.4.0 h1:z0PgDbBFe66lRYl3v5dGb9aFgPy0kotuQ37QOwSQFqs=
github.com/melbahja/goph v1.4.0/go.mod h1:uG+VfK2Dlhk+O32zFrRlc3kYKTlV6+BtvPWd/kK7U68=
github.com/onsi/gomega v1.34.2 h1:pNCwDkzrsv7MS9kpaQvVb1aVLahQXyJ/Tv5oAZMI3i8=
github.com/onsi/gomega v1.34.2/go.mod h1:v1xfxRgk0KIsG+QOdm7p8UosrOzPYRo60fd3B/1Dukc=
github.com/otiai10/copy v1.14.0 h1:dCI/t1iTdYGtkvCuBG2BgR6KZa83PTclw4U5n2wAllU=
github.com/otiai10/copy v1.14.0/go.mod h1:ECfuL02W+/FkTWZWgQqXPWZgW9oeKCSQ5qVfSc4qc4w=
github.com/otiai10/mint v1.5.1 h1:XaPLeE+9vGbuyEHem1JNk3bYc7KKqyI/na0/mLd/Kks=
github.com/otiai10/mint v1.5.1/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/onsi/gomega v1.36.2 h1:koNYke6TVk6ZmnyHrCXba/T/MoLBXFjeC1PtvYgw0A8=
github.com/onsi/gomega v1.36.2/go.mod h1:DdwyADRjrc825LhMEkD76cHR5+pUnjhUN8GlHlRPHzY=
github.com/otiai10/copy v1.14.1 h1:5/7E6qsUMBaH5AnQ0sSLzzTg1oTECmcCmT6lvF45Na8=
github.com/otiai10/copy v1.14.1/go.mod h1:oQwrEDDOci3IM8dJF0d8+jnbfPDllW6vUjNc3DoZm9I=
github.com/otiai10/mint v1.6.3 h1:87qsV/aw1F5as1eH1zS/yqHY85ANKVMgkDrf9rcxbQs=
github.com/otiai10/mint v1.6.3/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/sftp v1.13.5 h1:a3RLUqkyjYRtBTZJZ1VRrKbN3zhuPLlUc3sphVz81go=
@@ -43,20 +43,20 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58=
golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A=
golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70=
golang.org/x/crypto v0.32.0 h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc=
golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I=
golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -67,20 +67,20 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU=
golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.24.0 h1:Mh5cbb+Zk2hqqXNO7S1iTjEphVL+jb8ZWaqh/g+JWkM=
golang.org/x/term v0.24.0/go.mod h1:lOBK/LVxemqiMij05LGJ0tzNr8xlmwBRJ81PX6wVLH8=
golang.org/x/term v0.28.0 h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg=
golang.org/x/term v0.28.0/go.mod h1:Sw/lC2IAUZ92udQNf3WodGtn4k/XoLyZoh8v/8uiwek=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core apps plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core builder-dockerfile plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -0,0 +1,15 @@
#!/usr/bin/env bash
set -eo pipefail
[[ $DOKKU_TRACE ]] && set -x
source "$PLUGIN_AVAILABLE_PATH/builder-herokuish/help-functions"
case "$1" in
help | builder-herokuish:help)
cmd-builder-herokuish-help "$@"
;;
*)
exit "$DOKKU_NOT_IMPLEMENTED_EXIT"
;;
esac

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core builder-herokuish plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core builder-lambda plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core builder-nixpacks plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core builder-null plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core builder-pack plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -9,20 +9,21 @@ require (
require (
github.com/alexellis/go-execute/v2 v2.2.1 // indirect
github.com/fatih/color v1.17.0 // indirect
github.com/fatih/color v1.18.0 // indirect
github.com/hashicorp/errwrap v1.0.0 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
github.com/kr/fs v0.1.0 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/melbahja/goph v1.4.0 // indirect
github.com/otiai10/copy v1.14.0 // indirect
github.com/otiai10/copy v1.14.1 // indirect
github.com/otiai10/mint v1.6.3 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/sftp v1.13.5 // indirect
github.com/ryanuber/columnize v2.1.2+incompatible // indirect
golang.org/x/crypto v0.27.0 // indirect
golang.org/x/sync v0.8.0 // indirect
golang.org/x/sys v0.25.0 // indirect
golang.org/x/crypto v0.32.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/sys v0.29.0 // indirect
)
replace github.com/dokku/dokku/plugins/common => ../common

View File

@@ -2,8 +2,8 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhs
github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4=
github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI=
github.com/fatih/color v1.18.0 h1:S8gINlzdQ840/4pfAwic/ZE0djQEH3wM94VfqLTZcOM=
github.com/fatih/color v1.18.0/go.mod h1:4FelSpRwEGDpQ12mAdzqdOukCy4u8WUtOY6lkT/6HfU=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/hashicorp/errwrap v1.0.0 h1:hLrqtEDnRye3+sgx6z4qVLNuviH3MR5aQ0ykNJa/UYA=
@@ -19,12 +19,12 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/melbahja/goph v1.4.0 h1:z0PgDbBFe66lRYl3v5dGb9aFgPy0kotuQ37QOwSQFqs=
github.com/melbahja/goph v1.4.0/go.mod h1:uG+VfK2Dlhk+O32zFrRlc3kYKTlV6+BtvPWd/kK7U68=
github.com/onsi/gomega v1.34.2 h1:pNCwDkzrsv7MS9kpaQvVb1aVLahQXyJ/Tv5oAZMI3i8=
github.com/onsi/gomega v1.34.2/go.mod h1:v1xfxRgk0KIsG+QOdm7p8UosrOzPYRo60fd3B/1Dukc=
github.com/otiai10/copy v1.14.0 h1:dCI/t1iTdYGtkvCuBG2BgR6KZa83PTclw4U5n2wAllU=
github.com/otiai10/copy v1.14.0/go.mod h1:ECfuL02W+/FkTWZWgQqXPWZgW9oeKCSQ5qVfSc4qc4w=
github.com/otiai10/mint v1.5.1 h1:XaPLeE+9vGbuyEHem1JNk3bYc7KKqyI/na0/mLd/Kks=
github.com/otiai10/mint v1.5.1/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/onsi/gomega v1.36.2 h1:koNYke6TVk6ZmnyHrCXba/T/MoLBXFjeC1PtvYgw0A8=
github.com/onsi/gomega v1.36.2/go.mod h1:DdwyADRjrc825LhMEkD76cHR5+pUnjhUN8GlHlRPHzY=
github.com/otiai10/copy v1.14.1 h1:5/7E6qsUMBaH5AnQ0sSLzzTg1oTECmcCmT6lvF45Na8=
github.com/otiai10/copy v1.14.1/go.mod h1:oQwrEDDOci3IM8dJF0d8+jnbfPDllW6vUjNc3DoZm9I=
github.com/otiai10/mint v1.6.3 h1:87qsV/aw1F5as1eH1zS/yqHY85ANKVMgkDrf9rcxbQs=
github.com/otiai10/mint v1.6.3/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/sftp v1.13.5 h1:a3RLUqkyjYRtBTZJZ1VRrKbN3zhuPLlUc3sphVz81go=
@@ -43,20 +43,20 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58=
golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A=
golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70=
golang.org/x/crypto v0.32.0 h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc=
golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I=
golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -67,20 +67,20 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU=
golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.24.0 h1:Mh5cbb+Zk2hqqXNO7S1iTjEphVL+jb8ZWaqh/g+JWkM=
golang.org/x/term v0.24.0/go.mod h1:lOBK/LVxemqiMij05LGJ0tzNr8xlmwBRJ81PX6wVLH8=
golang.org/x/term v0.28.0 h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg=
golang.org/x/term v0.28.0/go.mod h1:Sw/lC2IAUZ92udQNf3WodGtn4k/XoLyZoh8v/8uiwek=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=

View File

@@ -16,7 +16,7 @@ After=docker.service
[Service]
Type=oneshot
User=$DOKKU_SYSTEM_USER
ExecStart=$DOCKER_BIN builder prune
ExecStart=$DOCKER_BIN builder prune -f
[Install]
WantedBy=docker.service

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core builder plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -9,20 +9,21 @@ require (
require (
github.com/alexellis/go-execute/v2 v2.2.1 // indirect
github.com/fatih/color v1.17.0 // indirect
github.com/fatih/color v1.18.0 // indirect
github.com/hashicorp/errwrap v1.0.0 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
github.com/kr/fs v0.1.0 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/melbahja/goph v1.4.0 // indirect
github.com/otiai10/copy v1.14.0 // indirect
github.com/otiai10/copy v1.14.1 // indirect
github.com/otiai10/mint v1.6.3 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/sftp v1.13.5 // indirect
github.com/ryanuber/columnize v2.1.2+incompatible // indirect
golang.org/x/crypto v0.27.0 // indirect
golang.org/x/sync v0.8.0 // indirect
golang.org/x/sys v0.25.0 // indirect
golang.org/x/crypto v0.32.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/sys v0.29.0 // indirect
)
replace github.com/dokku/dokku/plugins/common => ../common

View File

@@ -2,8 +2,8 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhs
github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4=
github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI=
github.com/fatih/color v1.18.0 h1:S8gINlzdQ840/4pfAwic/ZE0djQEH3wM94VfqLTZcOM=
github.com/fatih/color v1.18.0/go.mod h1:4FelSpRwEGDpQ12mAdzqdOukCy4u8WUtOY6lkT/6HfU=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/hashicorp/errwrap v1.0.0 h1:hLrqtEDnRye3+sgx6z4qVLNuviH3MR5aQ0ykNJa/UYA=
@@ -19,12 +19,12 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/melbahja/goph v1.4.0 h1:z0PgDbBFe66lRYl3v5dGb9aFgPy0kotuQ37QOwSQFqs=
github.com/melbahja/goph v1.4.0/go.mod h1:uG+VfK2Dlhk+O32zFrRlc3kYKTlV6+BtvPWd/kK7U68=
github.com/onsi/gomega v1.34.2 h1:pNCwDkzrsv7MS9kpaQvVb1aVLahQXyJ/Tv5oAZMI3i8=
github.com/onsi/gomega v1.34.2/go.mod h1:v1xfxRgk0KIsG+QOdm7p8UosrOzPYRo60fd3B/1Dukc=
github.com/otiai10/copy v1.14.0 h1:dCI/t1iTdYGtkvCuBG2BgR6KZa83PTclw4U5n2wAllU=
github.com/otiai10/copy v1.14.0/go.mod h1:ECfuL02W+/FkTWZWgQqXPWZgW9oeKCSQ5qVfSc4qc4w=
github.com/otiai10/mint v1.5.1 h1:XaPLeE+9vGbuyEHem1JNk3bYc7KKqyI/na0/mLd/Kks=
github.com/otiai10/mint v1.5.1/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/onsi/gomega v1.36.2 h1:koNYke6TVk6ZmnyHrCXba/T/MoLBXFjeC1PtvYgw0A8=
github.com/onsi/gomega v1.36.2/go.mod h1:DdwyADRjrc825LhMEkD76cHR5+pUnjhUN8GlHlRPHzY=
github.com/otiai10/copy v1.14.1 h1:5/7E6qsUMBaH5AnQ0sSLzzTg1oTECmcCmT6lvF45Na8=
github.com/otiai10/copy v1.14.1/go.mod h1:oQwrEDDOci3IM8dJF0d8+jnbfPDllW6vUjNc3DoZm9I=
github.com/otiai10/mint v1.6.3 h1:87qsV/aw1F5as1eH1zS/yqHY85ANKVMgkDrf9rcxbQs=
github.com/otiai10/mint v1.6.3/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/sftp v1.13.5 h1:a3RLUqkyjYRtBTZJZ1VRrKbN3zhuPLlUc3sphVz81go=
@@ -43,20 +43,20 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58=
golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A=
golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70=
golang.org/x/crypto v0.32.0 h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc=
golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I=
golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -67,20 +67,20 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU=
golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.24.0 h1:Mh5cbb+Zk2hqqXNO7S1iTjEphVL+jb8ZWaqh/g+JWkM=
golang.org/x/term v0.24.0/go.mod h1:lOBK/LVxemqiMij05LGJ0tzNr8xlmwBRJ81PX6wVLH8=
golang.org/x/term v0.28.0 h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg=
golang.org/x/term v0.28.0/go.mod h1:Sw/lC2IAUZ92udQNf3WodGtn4k/XoLyZoh8v/8uiwek=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core buildpacks plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core caddy-vhosts plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core certificate management plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -31,6 +31,7 @@ fn-help-content() {
checks:enable <app> [process-type(s)], Enable zero-downtime deployment for all processes (or comma-separated process-type list)
checks:report [<app>] [<flag>], Displays a checks report for one or more apps
checks:run <app> [process-type(s)], Runs zero-downtime checks for all processes (or comma-separated process-type list)
checks:set [--global|<app>] <key> <value>, Set or clear a logs property for an app
checks:skip <app> [process-type(s)], Skip zero-downtime checks for all processes (or comma-separated process-type list)
help_content
}

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core checks plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -285,6 +285,41 @@ func GetRunningImageTag(appName string, imageTag string) (string, error) {
return imageTag, nil
}
// GetDokkuAppShell returns the shell for a given app
func GetDokkuAppShell(appName string) string {
shell := "/bin/bash"
globalShell := ""
appShell := ""
ctx := context.Background()
errs, ctx := errgroup.WithContext(ctx)
errs.Go(func() error {
results, _ := CallPlugnTriggerWithContext(ctx, PlugnTriggerInput{
Trigger: "config-get-global",
Args: []string{"DOKKU_APP_SHELL"},
})
globalShell = results.StdoutContents()
return nil
})
errs.Go(func() error {
results, _ := CallPlugnTriggerWithContext(ctx, PlugnTriggerInput{
Trigger: "config-get",
Args: []string{appName, "DOKKU_APP_SHELL"},
})
appShell = results.StdoutContents()
return nil
})
errs.Wait()
if appShell != "" {
shell = appShell
} else if globalShell != "" {
shell = globalShell
}
return shell
}
// DokkuApps returns a list of all local apps
func DokkuApps() ([]string, error) {
apps, err := UnfilteredDokkuApps()

View File

@@ -28,7 +28,7 @@ func setupTests() (err error) {
}
func setupTestApp() (err error) {
Expect(os.MkdirAll(testAppDir, 0644)).To(Succeed())
Expect(os.MkdirAll(testAppDir, 0766)).To(Succeed())
b := []byte(testEnvLine + "\n")
if err = os.WriteFile(testEnvFile, b, 0644); err != nil {
return
@@ -37,7 +37,7 @@ func setupTestApp() (err error) {
}
func setupTestApp2() (err error) {
Expect(os.MkdirAll(testAppDir2, 0644)).To(Succeed())
Expect(os.MkdirAll(testAppDir2, 0766)).To(Succeed())
b := []byte(testEnvLine2 + "\n")
if err = os.WriteFile(testEnvFile2, b, 0644); err != nil {
return

View File

@@ -1,8 +1,12 @@
package common
import (
"archive/tar"
"bytes"
"fmt"
"io"
"os"
"strconv"
"strings"
"time"
)
@@ -64,6 +68,17 @@ func ContainerWait(containerID string) bool {
if err != nil {
return false
}
stdout := result.StdoutContents()
if stdout != "0" {
exitCode, err := strconv.Atoi(stdout)
if err != nil {
return false
}
return exitCode == 0
}
return result.ExitCode == 0
}
@@ -92,14 +107,6 @@ func CopyFromImage(appName string, image string, source string, destination stri
}
}
tmpFile, err := os.CreateTemp(os.TempDir(), fmt.Sprintf("dokku-%s-%s", MustGetEnv("DOKKU_PID"), "CopyFromImage"))
if err != nil {
return fmt.Errorf("Cannot create temporary file: %v", err)
}
defer tmpFile.Close()
defer os.Remove(tmpFile.Name())
globalRunArgs := MustGetEnv("DOKKU_GLOBAL_RUN_ARGS")
createLabelArgs := []string{"--label", fmt.Sprintf("com.dokku.app-name=%s", appName), globalRunArgs}
containerID, err := DockerContainerCreate(image, createLabelArgs)
@@ -113,7 +120,7 @@ func CopyFromImage(appName string, image string, source string, destination stri
// ref: https://github.com/dotcloud/docker/issues/3986
result, err := CallExecCommand(ExecCommandInput{
Command: DockerBin(),
Args: []string{"container", "cp", fmt.Sprintf("%s:%s", containerID, source), tmpFile.Name()},
Args: []string{"container", "cp", "--quiet", fmt.Sprintf("%s:%s", containerID, source), "-"},
})
if err != nil {
return fmt.Errorf("Unable to copy file %s from image: %w", source, err)
@@ -122,6 +129,36 @@ func CopyFromImage(appName string, image string, source string, destination stri
return fmt.Errorf("Unable to copy file %s from image: %v", source, result.StderrContents())
}
tarContents := result.StdoutContents()
if tarContents == "" {
return fmt.Errorf("Unable to copy file %s from image", source)
}
// extract the contents via tar
content, err := extractTarToString(tarContents)
if err != nil {
return fmt.Errorf("Unable to extract contents from tar: %v", err)
}
tmpFile, err := os.CreateTemp(os.TempDir(), fmt.Sprintf("dokku-%s-%s", MustGetEnv("DOKKU_PID"), "CopyFromImage"))
if err != nil {
return fmt.Errorf("Cannot create temporary file: %v", err)
}
defer func() {
if err := tmpFile.Close(); err != nil {
LogWarn(fmt.Sprintf("Unable to close temporary file: %v", err))
}
if err := os.Remove(tmpFile.Name()); err != nil {
LogWarn(fmt.Sprintf("Unable to remove temporary file: %v", err))
}
}()
// write contents to tmpFile
if _, err := tmpFile.Write([]byte(content)); err != nil {
return fmt.Errorf("Unable to write to temporary file: %v", err)
}
fi, err := os.Stat(tmpFile.Name())
if err != nil {
return err
@@ -160,6 +197,36 @@ func CopyFromImage(appName string, image string, source string, destination stri
return nil
}
// Function to extract tar contents and return them as a string
func extractTarToString(in string) (string, error) {
// Initialize a buffer to accumulate the extracted content
var extractedContent bytes.Buffer
// Create a tar reader from standard input
tarReader := tar.NewReader(strings.NewReader(in))
// Iterate through the files in the tar archive
for {
// Read the next header (file entry)
_, err := tarReader.Next()
if err == io.EOF {
break // End of archive
}
if err != nil {
return "", fmt.Errorf("error reading tar header: %v", err)
}
// Write the content of the current file into the buffer
_, err = io.Copy(&extractedContent, tarReader)
if err != nil {
return "", fmt.Errorf("error copying file content: %v", err)
}
}
// Return the accumulated content as a string
return strings.TrimSpace(extractedContent.String()), nil
}
// DockerBin returns a string which contains a path to the current docker binary
func DockerBin() string {
dockerBin := os.Getenv("DOCKER_BIN")

View File

@@ -490,46 +490,7 @@ copy_from_image() {
declare IMAGE="$1" SRC_FILE="$2" DST_FILE="$3"
local WORK_DIR=""
local DOCKER_CREATE_LABEL_ARGS="--label=com.dokku.app-name=$APP"
if verify_image "$IMAGE"; then
if ! is_abs_path "$SRC_FILE"; then
if is_image_cnb_based "$IMAGE"; then
WORKDIR="/workspace"
elif is_image_herokuish_based "$IMAGE" "$APP"; then
WORKDIR="/app"
else
WORKDIR="$("$DOCKER_BIN" image inspect --format '{{.Config.WorkingDir}}' "$IMAGE")"
fi
if [[ -n "$WORKDIR" ]]; then
SRC_FILE="${WORKDIR}/${SRC_FILE}"
fi
fi
TMP_FILE_COMMAND_OUTPUT=$(mktemp "/tmp/dokku-${DOKKU_PID}-${FUNCNAME[0]}.XXXXXX")
trap "rm -rf '$TMP_FILE_COMMAND_OUTPUT' &>/dev/null || true" RETURN
local CID=$("$DOCKER_BIN" container create "${DOCKER_CREATE_LABEL_ARGS[@]}" $DOKKU_GLOBAL_RUN_ARGS "$IMAGE")
"$DOCKER_BIN" container cp "$CID:$SRC_FILE" "$TMP_FILE_COMMAND_OUTPUT" 2>/dev/null || true
"$DOCKER_BIN" container rm --force "$CID" &>/dev/null
plugn trigger scheduler-register-retired "$APP" "$CID"
# docker cp exits with status 1 when run as non-root user when it tries to chown the file
# after successfully copying the file. Thus, we suppress stderr.
# ref: https://github.com/dotcloud/docker/issues/3986
if [[ ! -s "$TMP_FILE_COMMAND_OUTPUT" ]]; then
return 1
fi
# workaround for CHECKS file when owner is root. seems to only happen when running inside docker
dos2unix -l <"$TMP_FILE_COMMAND_OUTPUT" >"$DST_FILE"
# add trailing newline for certain places where file parsing depends on it
if [[ "$(tail -c1 "$DST_FILE")" != "" ]]; then
echo "" >>"$DST_FILE"
fi
else
if ! "$PLUGIN_CORE_AVAILABLE_PATH/common/common" copy-from-image "$APP" "$IMAGE" "$SRC_FILE" "$DST_FILE"; then
return 1
fi
}

View File

@@ -4,15 +4,15 @@ go 1.23
require (
github.com/alexellis/go-execute/v2 v2.2.1
github.com/fatih/color v1.17.0
github.com/fatih/color v1.18.0
github.com/hashicorp/go-multierror v1.1.1
github.com/melbahja/goph v1.4.0
github.com/onsi/gomega v1.34.2
github.com/otiai10/copy v1.14.0
github.com/onsi/gomega v1.36.2
github.com/otiai10/copy v1.14.1
github.com/ryanuber/columnize v2.1.2+incompatible
github.com/spf13/pflag v1.0.5
golang.org/x/crypto v0.27.0
golang.org/x/sync v0.8.0
golang.org/x/crypto v0.32.0
golang.org/x/sync v0.10.0
)
require (
@@ -21,10 +21,11 @@ require (
github.com/kr/fs v0.1.0 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/otiai10/mint v1.6.3 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/sftp v1.13.5 // indirect
golang.org/x/net v0.28.0 // indirect
golang.org/x/sys v0.25.0 // indirect
golang.org/x/text v0.18.0 // indirect
golang.org/x/net v0.33.0 // indirect
golang.org/x/sys v0.29.0 // indirect
golang.org/x/text v0.21.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
)

View File

@@ -2,16 +2,16 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhs
github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4=
github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI=
github.com/fatih/color v1.18.0 h1:S8gINlzdQ840/4pfAwic/ZE0djQEH3wM94VfqLTZcOM=
github.com/fatih/color v1.18.0/go.mod h1:4FelSpRwEGDpQ12mAdzqdOukCy4u8WUtOY6lkT/6HfU=
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI=
github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5 h1:5iH8iuqE5apketRbSFBy+X1V0o+l+8NF1avt4HWl7cA=
github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144=
github.com/google/pprof v0.0.0-20241210010833-40e02aabc2ad h1:a6HEuzUHeKH6hwfN/ZoQgRgVIWFJljSWa/zetS2WTvg=
github.com/google/pprof v0.0.0-20241210010833-40e02aabc2ad/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144=
github.com/hashicorp/errwrap v1.0.0 h1:hLrqtEDnRye3+sgx6z4qVLNuviH3MR5aQ0ykNJa/UYA=
github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo=
@@ -25,14 +25,14 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/melbahja/goph v1.4.0 h1:z0PgDbBFe66lRYl3v5dGb9aFgPy0kotuQ37QOwSQFqs=
github.com/melbahja/goph v1.4.0/go.mod h1:uG+VfK2Dlhk+O32zFrRlc3kYKTlV6+BtvPWd/kK7U68=
github.com/onsi/ginkgo/v2 v2.20.1 h1:YlVIbqct+ZmnEph770q9Q7NVAz4wwIiVNahee6JyUzo=
github.com/onsi/ginkgo/v2 v2.20.1/go.mod h1:lG9ey2Z29hR41WMVthyJBGUBcBhGOtoPF2VFMvBXFCI=
github.com/onsi/gomega v1.34.2 h1:pNCwDkzrsv7MS9kpaQvVb1aVLahQXyJ/Tv5oAZMI3i8=
github.com/onsi/gomega v1.34.2/go.mod h1:v1xfxRgk0KIsG+QOdm7p8UosrOzPYRo60fd3B/1Dukc=
github.com/otiai10/copy v1.14.0 h1:dCI/t1iTdYGtkvCuBG2BgR6KZa83PTclw4U5n2wAllU=
github.com/otiai10/copy v1.14.0/go.mod h1:ECfuL02W+/FkTWZWgQqXPWZgW9oeKCSQ5qVfSc4qc4w=
github.com/otiai10/mint v1.5.1 h1:XaPLeE+9vGbuyEHem1JNk3bYc7KKqyI/na0/mLd/Kks=
github.com/otiai10/mint v1.5.1/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/onsi/ginkgo/v2 v2.22.1 h1:QW7tbJAUDyVDVOM5dFa7qaybo+CRfR7bemlQUN6Z8aM=
github.com/onsi/ginkgo/v2 v2.22.1/go.mod h1:S6aTpoRsSq2cZOd+pssHAlKW/Q/jZt6cPrPlnj4a1xM=
github.com/onsi/gomega v1.36.2 h1:koNYke6TVk6ZmnyHrCXba/T/MoLBXFjeC1PtvYgw0A8=
github.com/onsi/gomega v1.36.2/go.mod h1:DdwyADRjrc825LhMEkD76cHR5+pUnjhUN8GlHlRPHzY=
github.com/otiai10/copy v1.14.1 h1:5/7E6qsUMBaH5AnQ0sSLzzTg1oTECmcCmT6lvF45Na8=
github.com/otiai10/copy v1.14.1/go.mod h1:oQwrEDDOci3IM8dJF0d8+jnbfPDllW6vUjNc3DoZm9I=
github.com/otiai10/mint v1.6.3 h1:87qsV/aw1F5as1eH1zS/yqHY85ANKVMgkDrf9rcxbQs=
github.com/otiai10/mint v1.6.3/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/sftp v1.13.5 h1:a3RLUqkyjYRtBTZJZ1VRrKbN3zhuPLlUc3sphVz81go=
@@ -51,20 +51,20 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58=
golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A=
golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70=
golang.org/x/crypto v0.32.0 h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc=
golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I=
golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -75,25 +75,25 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU=
golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.24.0 h1:Mh5cbb+Zk2hqqXNO7S1iTjEphVL+jb8ZWaqh/g+JWkM=
golang.org/x/term v0.24.0/go.mod h1:lOBK/LVxemqiMij05LGJ0tzNr8xlmwBRJ81PX6wVLH8=
golang.org/x/term v0.28.0 h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg=
golang.org/x/term v0.28.0/go.mod h1:Sw/lC2IAUZ92udQNf3WodGtn4k/XoLyZoh8v/8uiwek=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24=
golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ=
golang.org/x/tools v0.28.0 h1:WuB6qZ4RPCQo5aP3WdKZS7i595EdWqWR8vqJTlwTVK8=
golang.org/x/tools v0.28.0/go.mod h1:dcIOrVd3mfQKTgrDVQHqCPMWy6lnhfhtX3hLXYVLfRw=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=

View File

@@ -2,6 +2,7 @@ package common
import (
"fmt"
"io"
"os"
"strconv"
"strings"
@@ -46,6 +47,30 @@ func (w *writer) Write(bytes []byte) (int, error) {
return len(bytes), nil
}
// PrefixingWriter is a writer that prefixes all writes with a given prefix
type PrefixingWriter struct {
Prefix []byte
Writer io.Writer
}
// Write writes the given bytes to the writer with the prefix
func (pw *PrefixingWriter) Write(p []byte) (int, error) {
if len(p) == 0 {
return 0, nil
}
// Perform an "atomic" write of a prefix and p to make sure that it doesn't interleave
// sub-line when used concurrently with io.PipeWrite.
n, err := pw.Writer.Write(append(pw.Prefix, p...))
if n > len(p) {
// To comply with the io.Writer interface requirements we must
// return a number of bytes written from p (0 <= n <= len(p)),
// so we are ignoring the length of the prefix here.
return len(p), err
}
return n, err
}
// LogFail is the failure log formatter
// prints text to stderr and exits with status 1
func LogFail(text string) {

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core common plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -20,6 +20,12 @@ func main() {
var err error
switch cmd {
case "copy-from-image":
appName := flag.Arg(1)
image := flag.Arg(2)
source := flag.Arg(3)
destination := flag.Arg(4)
err = common.CopyFromImage(appName, image, source, destination)
case "docker-cleanup":
appName := flag.Arg(1)
force := common.ToBool(flag.Arg(2))

View File

@@ -5,14 +5,14 @@ go 1.23
require (
github.com/dokku/dokku/plugins/common v0.0.0-00010101000000-000000000000
github.com/joho/godotenv v1.2.0
github.com/onsi/gomega v1.34.2
github.com/onsi/gomega v1.36.2
github.com/ryanuber/columnize v2.1.2+incompatible
github.com/spf13/pflag v1.0.5
)
require (
github.com/alexellis/go-execute/v2 v2.2.1 // indirect
github.com/fatih/color v1.17.0 // indirect
github.com/fatih/color v1.18.0 // indirect
github.com/google/go-cmp v0.6.0 // indirect
github.com/hashicorp/errwrap v1.0.0 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
@@ -20,14 +20,15 @@ require (
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/melbahja/goph v1.4.0 // indirect
github.com/otiai10/copy v1.14.0 // indirect
github.com/otiai10/copy v1.14.1 // indirect
github.com/otiai10/mint v1.6.3 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/sftp v1.13.5 // indirect
golang.org/x/crypto v0.27.0 // indirect
golang.org/x/net v0.28.0 // indirect
golang.org/x/sync v0.8.0 // indirect
golang.org/x/sys v0.25.0 // indirect
golang.org/x/text v0.18.0 // indirect
golang.org/x/crypto v0.32.0 // indirect
golang.org/x/net v0.33.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/sys v0.29.0 // indirect
golang.org/x/text v0.21.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
)

View File

@@ -2,16 +2,16 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhs
github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4=
github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI=
github.com/fatih/color v1.18.0 h1:S8gINlzdQ840/4pfAwic/ZE0djQEH3wM94VfqLTZcOM=
github.com/fatih/color v1.18.0/go.mod h1:4FelSpRwEGDpQ12mAdzqdOukCy4u8WUtOY6lkT/6HfU=
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI=
github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5 h1:5iH8iuqE5apketRbSFBy+X1V0o+l+8NF1avt4HWl7cA=
github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144=
github.com/google/pprof v0.0.0-20241210010833-40e02aabc2ad h1:a6HEuzUHeKH6hwfN/ZoQgRgVIWFJljSWa/zetS2WTvg=
github.com/google/pprof v0.0.0-20241210010833-40e02aabc2ad/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144=
github.com/hashicorp/errwrap v1.0.0 h1:hLrqtEDnRye3+sgx6z4qVLNuviH3MR5aQ0ykNJa/UYA=
github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo=
@@ -27,14 +27,14 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/melbahja/goph v1.4.0 h1:z0PgDbBFe66lRYl3v5dGb9aFgPy0kotuQ37QOwSQFqs=
github.com/melbahja/goph v1.4.0/go.mod h1:uG+VfK2Dlhk+O32zFrRlc3kYKTlV6+BtvPWd/kK7U68=
github.com/onsi/ginkgo/v2 v2.20.1 h1:YlVIbqct+ZmnEph770q9Q7NVAz4wwIiVNahee6JyUzo=
github.com/onsi/ginkgo/v2 v2.20.1/go.mod h1:lG9ey2Z29hR41WMVthyJBGUBcBhGOtoPF2VFMvBXFCI=
github.com/onsi/gomega v1.34.2 h1:pNCwDkzrsv7MS9kpaQvVb1aVLahQXyJ/Tv5oAZMI3i8=
github.com/onsi/gomega v1.34.2/go.mod h1:v1xfxRgk0KIsG+QOdm7p8UosrOzPYRo60fd3B/1Dukc=
github.com/otiai10/copy v1.14.0 h1:dCI/t1iTdYGtkvCuBG2BgR6KZa83PTclw4U5n2wAllU=
github.com/otiai10/copy v1.14.0/go.mod h1:ECfuL02W+/FkTWZWgQqXPWZgW9oeKCSQ5qVfSc4qc4w=
github.com/otiai10/mint v1.5.1 h1:XaPLeE+9vGbuyEHem1JNk3bYc7KKqyI/na0/mLd/Kks=
github.com/otiai10/mint v1.5.1/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/onsi/ginkgo/v2 v2.22.1 h1:QW7tbJAUDyVDVOM5dFa7qaybo+CRfR7bemlQUN6Z8aM=
github.com/onsi/ginkgo/v2 v2.22.1/go.mod h1:S6aTpoRsSq2cZOd+pssHAlKW/Q/jZt6cPrPlnj4a1xM=
github.com/onsi/gomega v1.36.2 h1:koNYke6TVk6ZmnyHrCXba/T/MoLBXFjeC1PtvYgw0A8=
github.com/onsi/gomega v1.36.2/go.mod h1:DdwyADRjrc825LhMEkD76cHR5+pUnjhUN8GlHlRPHzY=
github.com/otiai10/copy v1.14.1 h1:5/7E6qsUMBaH5AnQ0sSLzzTg1oTECmcCmT6lvF45Na8=
github.com/otiai10/copy v1.14.1/go.mod h1:oQwrEDDOci3IM8dJF0d8+jnbfPDllW6vUjNc3DoZm9I=
github.com/otiai10/mint v1.6.3 h1:87qsV/aw1F5as1eH1zS/yqHY85ANKVMgkDrf9rcxbQs=
github.com/otiai10/mint v1.6.3/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/sftp v1.13.5 h1:a3RLUqkyjYRtBTZJZ1VRrKbN3zhuPLlUc3sphVz81go=
@@ -53,20 +53,20 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58=
golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A=
golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70=
golang.org/x/crypto v0.32.0 h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc=
golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I=
golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -77,25 +77,25 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU=
golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.24.0 h1:Mh5cbb+Zk2hqqXNO7S1iTjEphVL+jb8ZWaqh/g+JWkM=
golang.org/x/term v0.24.0/go.mod h1:lOBK/LVxemqiMij05LGJ0tzNr8xlmwBRJ81PX6wVLH8=
golang.org/x/term v0.28.0 h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg=
golang.org/x/term v0.28.0/go.mod h1:Sw/lC2IAUZ92udQNf3WodGtn4k/XoLyZoh8v/8uiwek=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24=
golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ=
golang.org/x/tools v0.28.0 h1:WuB6qZ4RPCQo5aP3WdKZS7i595EdWqWR8vqJTlwTVK8=
golang.org/x/tools v0.28.0/go.mod h1:dcIOrVd3mfQKTgrDVQHqCPMWy6lnhfhtX3hLXYVLfRw=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core config plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -12,12 +12,14 @@ import (
var (
// DefaultProperties is a map of all valid cron properties with corresponding default property values
DefaultProperties = map[string]string{
"mailto": "",
"mailfrom": "",
"mailto": "",
}
// GlobalProperties is a map of all valid global cron properties
GlobalProperties = map[string]bool{
"mailto": true,
"mailfrom": true,
"mailto": true,
}
)

View File

@@ -9,12 +9,12 @@ require (
github.com/robfig/cron/v3 v3.0.1
github.com/ryanuber/columnize v2.1.2+incompatible
github.com/spf13/pflag v1.0.5
mvdan.cc/sh/v3 v3.9.0
mvdan.cc/sh/v3 v3.10.0
)
require (
github.com/alexellis/go-execute/v2 v2.2.1 // indirect
github.com/fatih/color v1.17.0 // indirect
github.com/fatih/color v1.18.0 // indirect
github.com/hashicorp/errwrap v1.0.0 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 // indirect
@@ -22,12 +22,13 @@ require (
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/melbahja/goph v1.4.0 // indirect
github.com/otiai10/copy v1.14.0 // indirect
github.com/otiai10/copy v1.14.1 // indirect
github.com/otiai10/mint v1.6.3 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/sftp v1.13.5 // indirect
golang.org/x/crypto v0.27.0 // indirect
golang.org/x/sync v0.8.0 // indirect
golang.org/x/sys v0.25.0 // indirect
golang.org/x/crypto v0.32.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/sys v0.29.0 // indirect
k8s.io/utils v0.0.0-20240102154912-e7106e64919e // indirect
)

View File

@@ -3,8 +3,8 @@ github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4=
github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI=
github.com/fatih/color v1.18.0 h1:S8gINlzdQ840/4pfAwic/ZE0djQEH3wM94VfqLTZcOM=
github.com/fatih/color v1.18.0/go.mod h1:4FelSpRwEGDpQ12mAdzqdOukCy4u8WUtOY6lkT/6HfU=
github.com/go-quicktest/qt v1.101.0 h1:O1K29Txy5P2OK0dGo59b7b0LR6wKfIhttaAhHUyn7eI=
github.com/go-quicktest/qt v1.101.0/go.mod h1:14Bz/f7NwaXPtdYEgzsx46kqSxVwTbzVZsDC26tQJow=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
@@ -30,12 +30,12 @@ github.com/melbahja/goph v1.4.0 h1:z0PgDbBFe66lRYl3v5dGb9aFgPy0kotuQ37QOwSQFqs=
github.com/melbahja/goph v1.4.0/go.mod h1:uG+VfK2Dlhk+O32zFrRlc3kYKTlV6+BtvPWd/kK7U68=
github.com/multiformats/go-base36 v0.2.0 h1:lFsAbNOGeKtuKozrtBsAkSVhv1p9D0/qedU9rQyccr0=
github.com/multiformats/go-base36 v0.2.0/go.mod h1:qvnKE++v+2MWCfePClUEjE78Z7P2a1UV0xHgWc0hkp4=
github.com/onsi/gomega v1.34.2 h1:pNCwDkzrsv7MS9kpaQvVb1aVLahQXyJ/Tv5oAZMI3i8=
github.com/onsi/gomega v1.34.2/go.mod h1:v1xfxRgk0KIsG+QOdm7p8UosrOzPYRo60fd3B/1Dukc=
github.com/otiai10/copy v1.14.0 h1:dCI/t1iTdYGtkvCuBG2BgR6KZa83PTclw4U5n2wAllU=
github.com/otiai10/copy v1.14.0/go.mod h1:ECfuL02W+/FkTWZWgQqXPWZgW9oeKCSQ5qVfSc4qc4w=
github.com/otiai10/mint v1.5.1 h1:XaPLeE+9vGbuyEHem1JNk3bYc7KKqyI/na0/mLd/Kks=
github.com/otiai10/mint v1.5.1/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/onsi/gomega v1.36.2 h1:koNYke6TVk6ZmnyHrCXba/T/MoLBXFjeC1PtvYgw0A8=
github.com/onsi/gomega v1.36.2/go.mod h1:DdwyADRjrc825LhMEkD76cHR5+pUnjhUN8GlHlRPHzY=
github.com/otiai10/copy v1.14.1 h1:5/7E6qsUMBaH5AnQ0sSLzzTg1oTECmcCmT6lvF45Na8=
github.com/otiai10/copy v1.14.1/go.mod h1:oQwrEDDOci3IM8dJF0d8+jnbfPDllW6vUjNc3DoZm9I=
github.com/otiai10/mint v1.6.3 h1:87qsV/aw1F5as1eH1zS/yqHY85ANKVMgkDrf9rcxbQs=
github.com/otiai10/mint v1.6.3/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/sftp v1.13.5 h1:a3RLUqkyjYRtBTZJZ1VRrKbN3zhuPLlUc3sphVz81go=
@@ -44,8 +44,8 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/robfig/cron/v3 v3.0.1 h1:WdRxkvbJztn8LMz/QEvLN5sBU+xKpSqwwUO1Pjr4qDs=
github.com/robfig/cron/v3 v3.0.1/go.mod h1:eQICP3HwyT7UooqI/z+Ov+PtYAWygg1TEWWzGIFLtro=
github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8=
github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4=
github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII=
github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o=
github.com/ryanuber/columnize v2.1.2+incompatible h1:C89EOx/XBWwIXl8wm8OPJBd7kPF25UfsK2X7Ph/zCAk=
github.com/ryanuber/columnize v2.1.2+incompatible/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts=
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
@@ -58,20 +58,20 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58=
golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A=
golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70=
golang.org/x/crypto v0.32.0 h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc=
golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I=
golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -82,20 +82,20 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU=
golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.24.0 h1:Mh5cbb+Zk2hqqXNO7S1iTjEphVL+jb8ZWaqh/g+JWkM=
golang.org/x/term v0.24.0/go.mod h1:lOBK/LVxemqiMij05LGJ0tzNr8xlmwBRJ81PX6wVLH8=
golang.org/x/term v0.28.0 h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg=
golang.org/x/term v0.28.0/go.mod h1:Sw/lC2IAUZ92udQNf3WodGtn4k/XoLyZoh8v/8uiwek=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
@@ -106,5 +106,5 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
k8s.io/utils v0.0.0-20240102154912-e7106e64919e h1:eQ/4ljkx21sObifjzXwlPKpdGLrCfRziVtos3ofG/sQ=
k8s.io/utils v0.0.0-20240102154912-e7106e64919e/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
mvdan.cc/sh/v3 v3.9.0 h1:it14fyjCdQUk4jf/aYxLO3FG8jFarR9GzMCtnlvvD7c=
mvdan.cc/sh/v3 v3.9.0/go.mod h1:cdBk8bgoiBI7lSZqK5JhUuq7OB64VQ7fgm85xelw3Nk=
mvdan.cc/sh/v3 v3.10.0 h1:v9z7N1DLZ7owyLM/SXZQkBSXcwr2IGMm2LY2pmhVXj4=
mvdan.cc/sh/v3 v3.10.0/go.mod h1:z/mSSVyLFGZzqb3ZIKojjyqIx/xbmz/UHdCSv9HmqXY=

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku core cron plugin"
version = "0.35.2"
version = "0.35.14"
[plugin.config]

View File

@@ -13,6 +13,7 @@ func ReportSingleApp(appName string, format string, infoFlag string) error {
}
flags := map[string]common.ReportFunc{
"--cron-mailfrom": reportMailfrom,
"--cron-mailto": reportMailto,
"--cron-task-count": reportTasks,
}
@@ -28,6 +29,10 @@ func ReportSingleApp(appName string, format string, infoFlag string) error {
return common.ReportSingleApp("cron", appName, infoFlag, infoFlags, flagKeys, format, trimPrefix, uppercaseFirstCharacter)
}
func reportMailfrom(_ string) string {
return common.PropertyGet("cron", "--global", "mailfrom")
}
func reportMailto(_ string) string {
return common.PropertyGet("cron", "--global", "mailto")
}

View File

@@ -3,6 +3,10 @@ package cron
import "errors"
func validateSetValue(appName string, key string, value string) error {
if key == "mailfrom" && appName != "--global" {
return errors.New("Property cannot be specified on a per-app basis")
}
if key == "mailto" && appName != "--global" {
return errors.New("Property cannot be specified on a per-app basis")
}

View File

@@ -1,3 +1,6 @@
{{ if .Mailfrom -}}
MAILFROM={{ .Mailfrom }}
{{ end -}}
{{ if .Mailto -}}
MAILTO={{ .Mailto }}
{{ end -}}

View File

@@ -9,7 +9,11 @@ import (
// TriggerCronGetProperty writes the cron key to stdout for a given app container
func TriggerCronGetProperty(appName string, key string) error {
if key != "mailto" {
validProperties := map[string]bool{
"mailfrom": true,
"mailto": true,
}
if !validProperties[key] {
return errors.New("Invalid cron property specified")
}

View File

@@ -6,20 +6,21 @@ require github.com/dokku/dokku/plugins/common v0.0.0-00010101000000-000000000000
require (
github.com/alexellis/go-execute/v2 v2.2.1 // indirect
github.com/fatih/color v1.17.0 // indirect
github.com/fatih/color v1.18.0 // indirect
github.com/hashicorp/errwrap v1.0.0 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
github.com/kr/fs v0.1.0 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/melbahja/goph v1.4.0 // indirect
github.com/otiai10/copy v1.14.0 // indirect
github.com/otiai10/copy v1.14.1 // indirect
github.com/otiai10/mint v1.6.3 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/sftp v1.13.5 // indirect
github.com/ryanuber/columnize v2.1.2+incompatible // indirect
golang.org/x/crypto v0.27.0 // indirect
golang.org/x/sync v0.8.0 // indirect
golang.org/x/sys v0.25.0 // indirect
golang.org/x/crypto v0.32.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/sys v0.29.0 // indirect
)
replace github.com/dokku/dokku/plugins/common => ../common

Some files were not shown because too many files have changed in this diff Show More