Commit Graph

914 Commits

Author SHA1 Message Date
Jose Diaz-Gonzalez
356ed6f9eb feat: modify the deployment task if the detected entrypoint is tini
Closes #4522
2021-03-25 20:17:16 -04:00
Jose Diaz-Gonzalez
38910c7c48 tests: split app-json tests into two files
This should decrease the test matrix runtime.
2021-03-25 20:13:30 -04:00
Jose Diaz-Gonzalez
97aa934343 feat: do not reinstall pack during bats tests 2021-03-25 20:12:39 -04:00
Jose Diaz-Gonzalez
6787b82ec0 fix: reformat existing buildpacks files
Previously, the shorthand was not properly supported. While this _should_ be the domain of the gliderlabs/herokuish repository, we do it here as a courtesy to Dokku users.

Additionally, support the heroku-community => heroku mapping.

Closes #4452
2021-03-22 16:46:18 -04:00
Jose Diaz-Gonzalez
06bc6b9012 fix: ensure existing apps are initialized before modifying with code
Prior to 0.24.0, not all applications would have their repositories initialized. This was especially the case for tags and tarball deploys.

This state is now correctly detected and the repository is initialized as expected.

Closes #4485
2021-03-21 01:32:31 -04:00
dependabot[bot]
260997781a chore(deps): bump djangorestframework in /tests/apps/dockerfile-release
Bumps [djangorestframework](https://github.com/encode/django-rest-framework) from 3.11.0 to 3.11.2.
- [Release notes](https://github.com/encode/django-rest-framework/releases)
- [Commits](https://github.com/encode/django-rest-framework/compare/3.11.0...3.11.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-20 00:10:43 +00:00
dependabot[bot]
75ab1f8dab chore(deps): bump django in /tests/apps/dockerfile-release
Bumps [django](https://github.com/django/django) from 3.0.7 to 3.1.6.
- [Release notes](https://github.com/django/django/releases)
- [Commits](https://github.com/django/django/compare/3.0.7...3.1.6)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-19 11:04:05 +00:00
dependabot-preview[bot]
6a93ca2f9f chore(deps): bump github.com/golang/protobuf in /tests/apps/gogrpc
Bumps [github.com/golang/protobuf](https://github.com/golang/protobuf) from 1.4.3 to 1.5.1.
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.4.3...v1.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-18 05:42:35 +00:00
Jose Diaz-Gonzalez
3ab23dde07 Merge pull request #4465 from Akirtovskis/4458-git-sync-clone-in-progress
Add git:unlock command
2021-03-12 06:31:59 -05:00
Jose Diaz-Gonzalez
a901661e91 chore: set perms on tmp git directory 2021-03-12 02:55:33 -05:00
Jose Diaz-Gonzalez
9781a905a7 fix: create correct clone directory 2021-03-12 02:55:22 -05:00
arturs
4e50214b80 remove redundant commands from test 2021-03-12 08:25:55 +02:00
arturs
5c27ec31b7 add deploy command to tests 2021-03-11 21:55:32 +02:00
arturs
76d9b37b22 fix typo 2021-03-11 19:19:59 +02:00
arturs
dff21e1d36 fix test 2021-03-11 18:58:50 +02:00
arturs
888f45254a fix shfmt 2021-03-11 17:59:46 +02:00
arturs
ebcacdb5af add new line at the end of the file 2021-03-11 17:46:20 +02:00
arturs
8d11789566 add tests and prompt to unlock 2021-03-11 17:41:39 +02:00
dependabot-preview[bot]
76d36f0758 chore(deps): bump socket.io in /tests/apps/.websocket.disabled
Bumps [socket.io](https://github.com/socketio/socket.io) from 3.1.2 to 4.0.0.
- [Release notes](https://github.com/socketio/socket.io/releases)
- [Changelog](https://github.com/socketio/socket.io/blob/master/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io/compare/3.1.2...4.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-11 06:43:33 +00:00
dependabot-preview[bot]
30d71d4a0e chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 189 to 190.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v189...v190)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-05 06:24:58 +00:00
Jose Diaz-Gonzalez
5c1a1baf08 feat: implement git:from-archive
The previous tar support lacked the ability to track changes between tarball deploys. Critically, it also failed to be handled correctly when there was _also_ a git deployment done on the app, resulting in odd deployment states depending on the angles of the moon and the sun in the sky.

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

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

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

Closes #3458
Closes #4207
2021-03-01 08:13:51 -05:00
Jose Diaz-Gonzalez
0a31f6fe3a feat: add git:from-image support
The new command superscedes the previous tags plugin, and integrates docker image deployment with the general build process.

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

Closes #4296
2021-03-01 02:26:58 -05:00
Jose Diaz-Gonzalez
8c34cfe64e feat: implement builder plugin
This plugin will allow users to override the builder used for their application, enabling users to use custom builders if desired.
2021-02-28 17:25:03 -05:00
Jose Diaz-Gonzalez
1ec71cd509 refactor: switch detected builder so first one wins
Also rename internal cnb references to pack (where possible).
2021-02-28 16:19:41 -05:00
Jose Diaz-Gonzalez
353438dbd3 feat: allow builders to be detected based on repository contents
Rather than hardcode two builders, allow builders to specify a `builder-detect` trigger. This trigger can be used to specify if the builder should or should not be used for an application. Each builder takes stdin and can decide if it wants to emit it or emit it's own image source type.

If the final value is empty, then Dokku will default to herokuish (and cnb once that is stable). In addition, a future change may allow users to manually specify a builder in the case they wish to override the choice selected by Dokku.

This change enables users to build custom builder plugins and have those plugins used for building an image asset. By way of example, an enterprising user could create a `builder-lambda` based on lambci, and then pair this with a scheduler plugin that updates a lambda function on AWS. Alternatively, a user might decide they wish to place their Dockerfile in a specific directory for their applications - such as an `_infrastructure` directory - and create a plugin to override how that is detected within Dokku.
2021-02-28 16:19:41 -05:00
Jose Diaz-Gonzalez
66e66c9d18 Merge pull request #4425 from dokku/2269-postdeploy
Implement heroku's postdeploy deployment task
2021-02-28 15:17:31 -05:00
Jose Diaz-Gonzalez
52a88d63ad tests: fix postdeploy test 2021-02-28 14:39:16 -05:00
Jose Diaz-Gonzalez
f98e7702fb feat: implement heroku's postdeploy deployment task
This occurs during the postdeploy on the first deploy of an app, mimicking heroku. It currently happens _after_ the `postdeploy` and `release` deploy tasks.
2021-02-28 04:51:42 -05:00
Jose Diaz-Gonzalez
7a710005a1 feat: implement git:auth command
Refs #4364
2021-02-28 04:47:37 -05:00
Jose Diaz-Gonzalez
75b7ae94e1 docs: use updated links for documentation
Docs are now hosted on https://dokku.com, so we can avoid the extra rewrite.
2021-02-28 01:18:33 -05:00
Jose Diaz-Gonzalez
9352e7a594 tests: split out nginx tests further to decrease overall CI runtime 2021-02-25 06:48:12 -05:00
dependabot-preview[bot]
eb7fde9c12 chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.0 to 11.0.1.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.0...jetty-11.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-23 05:41:46 +00:00
Jose Diaz-Gonzalez
d02efdcc05 Merge pull request #4423 from dokku/drop-sigil-packaging
Drop unused sigil packaging code
2021-02-21 03:45:37 -05:00
Jose Diaz-Gonzalez
06bdee37ff chore: drop unused sigil packaging code
This is now packaged and released in progrium/sigil.
2021-02-21 03:12:57 -05:00
Jose Diaz-Gonzalez
3ae9feba8f fix: keep the git directory for worktree-enabled installations
Git worktrees do not include the full .git directory - only a pointer to the actual directory - when keep-git-dir is set to true, which is incorrect for built containers. This change special-cases that combination, allowing folks on newer git installs to actually keep the .git directory during the build process.

Closes #4415
2021-02-20 17:33:24 -05:00
Jose Diaz-Gonzalez
f7e218637e feat: add ability to specify X-Forwarded-Ssl header for proxied requests
Closes #4401
2021-02-20 00:03:25 -05:00
Jose Diaz-Gonzalez
669259eace tests: just skip the issue 2021-02-13 05:05:57 -05:00
Jose Diaz-Gonzalez
45c543adde tests: attempt to fix lint again 2021-02-13 04:20:49 -05:00
Jose Diaz-Gonzalez
627a6bf8a5 tests: fix issue with assert urls 2021-02-13 03:52:28 -05:00
Jose Diaz-Gonzalez
d7f3a2b003 fix: correct SC2124 issue 2021-02-13 02:41:46 -05:00
Jose Diaz-Gonzalez
9ce309bed9 fix: correct SC2206 issue 2021-02-13 02:36:36 -05:00
Jose Diaz-Gonzalez
b62264c275 tests: fix SC2124 issue 2021-02-13 02:32:17 -05:00
Jose Diaz-Gonzalez
d4e832c27b tests: fix SC2145 issue 2021-02-13 02:31:24 -05:00
Jose Diaz-Gonzalez
59c45ea1d6 tests: fix SC1012 issue 2021-02-13 02:28:38 -05:00
Jose Diaz-Gonzalez
af014750aa tests: fix and ignore shellcheck errors 2021-02-13 02:09:24 -05:00
Jose Diaz-Gonzalez
02a8409114 tests: fix shfmt issues 2021-02-13 02:05:44 -05:00
Jose Diaz-Gonzalez
1e915968b5 fix: correctly handle is-deployed check
Previously, checking if an app was deployed actually checked if there were any running processes. This is not only incorrect, but also fails to take into account applications that do not have running processes and are only used for one-off commands.

This fix migrates apps to the new "deployed" property which is set in core-post-deploy. The result is a slightly faster "deployed" check that is correct and allows non-scaled apps to actually work.

Closes #4398
2021-02-13 00:46:35 -05:00
Jose Diaz-Gonzalez
5e7ea4217f tests: install pack for app-json tests 2021-02-11 07:34:27 -05:00
Jose Diaz-Gonzalez
123fbea7c0 feat: add a deployment task test for cnb 2021-02-11 07:16:54 -05:00
Jose Diaz-Gonzalez
681fd6abf6 fix: install pack for tests 2021-02-11 04:04:25 -05:00