Commit Graph

4596 Commits

Author SHA1 Message Date
Jose Diaz-Gonzalez
0d8d43d4dd fix: use updated gpg key for apt repository
Packagecloud recently updated legacy repositories to sign with a repository-specific gpg key.

Closes #3383
2019-01-08 07:56:58 -05:00
Jose Diaz-Gonzalez
74e1cbd27d Merge pull request #3382 from dokku/fix-global-cleanup
Set cleanup to global when no application is specified
2019-01-07 16:11:02 -05:00
Jose Diaz-Gonzalez
9d45b0e2fb fix: set cleanup to global when no application is specified 2019-01-07 16:10:35 -05:00
Jose Diaz-Gonzalez
1a36c77c46 Merge pull request #3380 from dokku/3269-stable-docker
Install stable docker when using bootstrap script
2019-01-07 06:41:14 -05:00
Jose Diaz-Gonzalez
5c0b350cff feat: install stable docker when using bootstrap script
This script previously ran through the docker installation process with the edge channel on each run. Instead, we only run the docker installation if docker is not available. In addition, we force set the channel to stable, ensuring the script installs the correct channel for stable docker installations.

Closes #3269
2019-01-07 06:40:03 -05:00
Jose Diaz-Gonzalez
093fafe0b7 Merge pull request #3379 from dokku/shfmt
Run mvdan/shfmt on test runs
2019-01-07 02:05:16 -05:00
Jose Diaz-Gonzalez
86795ddacc tests: run mvdan/shfmt on test runs
While I do not agree with _every_ style change, this will force Dokku to have consistent formatting across all shell scripts, which is arguably a Good Thing™.

The command used to reprocess everything is:

```shell
shfmt -l -bn -ci -i 2 -w .
```
2019-01-07 01:25:55 -05:00
Jose Diaz-Gonzalez
fb7c73a7e3 fix: properly setup the tmp files necessary for the lint make target 2019-01-07 00:17:38 -05:00
Jose Diaz-Gonzalez
360cca08ef Merge pull request #3378 from dokku/setup-revamp-v1
Make admin setup UI look nicer
2019-01-06 22:41:07 -05:00
Jose Diaz-Gonzalez
2dd9ff3ac8 refactor: make admin setup UI look a bit nicer
The initial admin setup UI is a bit of a hack, but could also be a bit frustrating to new users as the settings are unclear. Rather than throw them to the wolves, include some useful information to allow them to make good decisions when setting up Dokku.

- Upgrade to latest bootstramp and latest jquery 1.x release
- Add a warning for people who might miss this setup page
- Add placeholder text to both the ssh key area and the hostname
- Add descriptions to all form fields to further explain the consequences of a particular field
- Add links where necessary for users who wish to explore how to change settings in the future
- Make the "result" message on submission red or green depending on the success or failure of the submission.
- Wait 3 seconds before redirecting on success
2019-01-06 22:38:49 -05:00
Jose Diaz-Gonzalez
f8766708c7 feat: add support for alternate ssh authorized_keys locations
On Ubuntu within AWS environments, the default user is the `ubuntu` user, and this is where the ssh key should be pulled from. CentOS has a tendency to use `ec2-user`.

On all other environments, the `root` user is typically the only user provisioned.

Closes #3372
2019-01-06 22:26:54 -05:00
Jose Diaz-Gonzalez
fba44b63a5 Merge pull request #3279 from fruitl00p/patch-3
Make sure the universe repo is loaded into APT
2019-01-06 20:49:46 -05:00
Jose Diaz-Gonzalez
51add20a53 fix: ensure software-properties-common is installed
It is necessary for add-apt-repository
2019-01-06 20:49:08 -05:00
Jose Diaz-Gonzalez
85bf4dd5cd tests: add support to junit output for marking what tests were excluded and all files that were processed
[ci skip]
2019-01-06 20:27:48 -05:00
Jose Diaz-Gonzalez
57766597ae Merge pull request #3370 from dokku/shellcheck-junit-output
Add junit support to shellcheck output
2019-01-05 23:27:17 -05:00
Jose Diaz-Gonzalez
f33784cbc9 fix: use correct encoding 2019-01-05 20:42:42 -05:00
Jose Diaz-Gonzalez
5f3b4640e8 refactor: use a python script to translate from shellcheck output to junit
The checkstyle xslt wasn't quite good enough, resulting in missing/malformatted output. Note that this now excludes _passing_ tests, which also isn't quite right, but a fair bit closer to the xsd here: https://github.com/windyroad/JUnit-Schema
2019-01-05 19:56:23 -05:00
Jose Diaz-Gonzalez
d67f719fe4 chore: lint python 2019-01-05 19:46:08 -05:00
Jose Diaz-Gonzalez
c4f1ef26c0 tests: move all shellcheck excludes into a single file
This will allow us to add/remove shellcheck excludes more easily.
2019-01-05 07:43:20 -05:00
Jose Diaz-Gonzalez
73eabec039 feat: add junit support to shellcheck output
This requires us to run shellcheck twice, as the first pass doesn't output anything human readable - both because of the redirect and because shellcheck doesn't directly support it - which increases lint runtime but allows us to have both the junit information and the normal human-readable output.

Note that the checkstyle output does not contain timing info.
2019-01-05 06:31:14 -05:00
Jose Diaz-Gonzalez
287a3c3542 Merge pull request #3350 from dokku/3262-check-web-listeners
Do not build the proxy config when there are no app listeners
2019-01-05 06:30:14 -05:00
Jose Diaz-Gonzalez
afacf32ba7 Merge pull request #3377 from dokku/3374-sponsor-dokku
Remove team member section on homepage in favor of sponsor section
2019-01-05 06:23:58 -05:00
Jose Diaz-Gonzalez
12d3f112e3 docs: Remove team member section on homepage in favor of sponsor section
This removes outdated information on the main page in favor of the "official" ways of sponsoring Dokku.

Also update the contributing note to mention where to post

Are you a crypto-user and want other options? Feel free to send bitcoin to 3MY2HxMVsxuWmhQkgYBsE3iZFjJgkjNPyQ

Closes #3374
2019-01-05 06:22:03 -05:00
Jose Diaz-Gonzalez
74b36bd66d Merge pull request #3376 from dokku/3284-bye-rawgit
Switch from rawgit to jsdelivr
2019-01-05 04:10:31 -05:00
Jose Diaz-Gonzalez
bb8d0324b5 docs: Switch from rawgit to jsdelivr
Rawgit is no longer being offered due to spammers, but jsdelivr has graciously allowed folks to use their cdn to mirror assets from github.

Closes #3284
2019-01-05 04:08:30 -05:00
Jose Diaz-Gonzalez
8b67d36c88 Merge pull request #3369 from dokku/3162-nginx-validate
Pull invalid nginx configuration when the nginx configs fail to validate
2018-12-31 12:40:22 -05:00
Jose Diaz-Gonzalez
0909052816 feat: Pull invalid nginx configuration when the nginx configs fail to validate
- expose an nginx:validate command that can be used to show validation information
- properly reference the invalid nginx config, rather than tell the user that another app's nginx config is invalid when deploying their own app
- allow a user to cleanup bad nginx config files out of band when they are blocking a deploy _without_ requiring knowing where that nginx config is

Note that this may have issues with generated nginx.conf files that depend on other apps or other parts of the nginx config. For now, this is acceptable, though it is something that needs to be field tested.

Closes #3162
2018-12-31 11:57:03 -05:00
Jose Diaz-Gonzalez
2c002177e4 Merge pull request #3371 from dokku/changelog-tests-section
Add tests section to changelog
2018-12-30 18:06:07 -05:00
Jose Diaz-Gonzalez
dbf21d6b8c feat: add tests section to changelog
For changes that are primarily test-related, pull them out into a specific section of the changelog.

[ci skip]
2018-12-30 18:05:48 -05:00
Jose Diaz-Gonzalez
7ad493c263 docs: do not reference commands as subcommands 2018-12-30 06:31:40 -05:00
Jose Diaz-Gonzalez
d1d9c57892 chore: add documentation to existing nginx commands 2018-12-30 06:31:18 -05:00
Jose Diaz-Gonzalez
bccfa8a3a0 fix: do not build the proxy config when there are no app listeners
This avoids cases where a developer believes they should be able to provision an nginx proxy but is unable to as no web process is configured to listen for the app.

Also silence stderr when extracting custom nginx templates. If there is stderr, that means we were not able to retrieve the template, but it's of no consequence for debugging.

Closes #3262
2018-12-30 05:11:36 -05:00
Jose Diaz-Gonzalez
68309d5659 Merge pull request #3308 from dokku/timing-info
Timing info in CircleCI
2018-12-29 21:22:18 -05:00
Jose Diaz-Gonzalez
95aeb27f0b feat: add timing info 2018-12-29 21:21:17 -05:00
Jose Diaz-Gonzalez
d2f116f958 Merge pull request #3367 from dokku/tests-from-built-artifact
Run tests from built artifact
2018-12-29 19:53:21 -05:00
Jose Diaz-Gonzalez
c344efdd8d tests: run tests from built artifact
Rather than testing against an install from source, ensure that all tests run from what _would_ be installed on a user's server. This ensures that the build process is sound, regardless of what code changes are implemented.
2018-12-29 18:32:52 -05:00
Jose Diaz-Gonzalez
dece1b52e0 Merge pull request #3368 from dokku/balance-tests
Balance circleci tests
2018-12-29 16:48:13 -05:00
Jose Diaz-Gonzalez
fbab5d2313 tests: balance circleci tests
This will help with test keep test times low
2018-12-29 16:47:52 -05:00
Jose Diaz-Gonzalez
10c56efdf7 Merge pull request #3366 from dokku/fix-network-clean
fix: add post-app-clone-setup to network clean make target
2018-12-29 16:36:03 -05:00
Jose Diaz-Gonzalez
56967ef950 fix: add post-app-clone-setup to network clean make target 2018-12-29 16:35:40 -05:00
Jose Diaz-Gonzalez
fc5f0c6685 Merge pull request #3365 from dokku/josegonzalez-patch-1
Remove extra tags:create call from docs
2018-12-29 16:29:58 -05:00
Jose Diaz-Gonzalez
9f05bd0dc3 docs: remove extra tag creation
The `latest` tag is now automatically created on tags:deploy.

[ci skip]
2018-12-29 16:29:30 -05:00
Jose Diaz-Gonzalez
682c6256bc Merge pull request #3363 from dokku/single-test
Add a wrapper for invoking a single test
2018-12-29 16:28:05 -05:00
Jose Diaz-Gonzalez
de89dd7319 Merge pull request #3362 from dokku/relative-test-runs
Allow tests to be run from any directory
2018-12-29 08:25:13 -05:00
Jose Diaz-Gonzalez
480b8ce42e tests: add a wrapper for invoking a single test
This can be used to increase testing velocity.
2018-12-29 08:01:14 -05:00
Jose Diaz-Gonzalez
dec181be6e tests: allow tests to be run from any directory
They previously required being run from repository root.
2018-12-29 07:33:59 -05:00
Jose Diaz-Gonzalez
c20826efa7 Merge pull request #3360 from dokku/upgrade-bats
Switch to bats-core
2018-12-29 07:21:51 -05:00
Jose Diaz-Gonzalez
10b6cd5b83 Merge pull request #3361 from dokku/faster-nginx-install
Do not generate dhparam for tests
2018-12-29 05:38:42 -05:00
Jose Diaz-Gonzalez
7ed7202c67 tests: switch to bats-core
This switches from the older, unmaintained version of bats to one that _is_ maintained. In particular, this fork of the community version - bats-core/bats-core - adds junit timing support, which can be used to track down slow tests.

Once the bats-core/bats-core repository merges junit support, we will switch back to upstream.

Note that tests on OS X will still run using a version that _does not_ have junit timing support.
2018-12-29 05:09:30 -05:00
Jose Diaz-Gonzalez
a54f672b5c tests: do not generate dhparam for tests
Tests will run much quicker if we don't need to regenerate this file. Note that this file _should not_ be used within installs.
2018-12-29 04:22:28 -05:00