Compare commits

...

20 Commits

Author SHA1 Message Date
Jose Diaz-Gonzalez
b21f4b6470 Release 0.9.3
# History

## 0.9.3

### Bug Fixes

- #2706: @josegonzalez fix: ensure nginx conf.d directory exists when running nginx install hook
- #2701: @scjody Set SSH_USER for root commands

### New Features

- #2708: @josegonzalez Document that we will not do buildpack support in the issue tracker

### Documentation

- #2709: @michaelshobbs increase CURL_TIMEOUT and CURL_CONNECT_TIMEOUT defaults
- #2699: @mbreit Add support for git >= 2.11
2017-04-10 13:40:53 -06:00
Jose Diaz-Gonzalez
c52f60f9d7 Merge pull request #2709 from dokku/mh/fix/default-curl-timeouts
increase CURL_TIMEOUT and CURL_CONNECT_TIMEOUT defaults
2017-04-10 13:39:42 -06:00
Jose Diaz-Gonzalez
c815d732eb Merge pull request #2706 from dokku/2686-missing-nginx-dir
fix: ensure nginx conf.d directory exists when running nginx install hook
2017-04-10 12:48:25 -06:00
Michael Hobbs
18849c085a increase CURL_TIMEOUT and CURL_CONNECT_TIMEOUT defaults. fixes #2668 2017-04-10 11:34:09 -07:00
Jose Diaz-Gonzalez
cb62958095 Merge pull request #2708 from dokku/josegonzalez-patch-1
Document that we will not do buildpack support in the issue tracker
2017-04-10 07:46:49 -06:00
Jose Diaz-Gonzalez
4fcfad5df5 docs: Document that we will not do buildpack support in the issue tracker
[ci skip]
2017-04-10 07:46:23 -06:00
Jose Diaz-Gonzalez
5101096518 fix: ensure nginx conf.d directory exists when running nginx install hook
Closes #2686
2017-04-10 00:37:23 -06:00
Jose Diaz-Gonzalez
afef3b94d5 Merge pull request #2701 from plotly/set-ssh-user-for-root
Set SSH_USER for root commands
2017-04-10 00:28:50 -06:00
Jody McIntyre
73a84f90c5 Set SSH_USER for root commands
Previously, SSH_USER was not set for plugin:* or ssh-keys:add, which
contradicts the user-auth trigger documentation.

Fixes #2700
2017-04-07 12:46:09 -04:00
Jose Diaz-Gonzalez
918bc9efe8 Merge pull request #2699 from mbreit/git-worktree
Use git worktree in git_build_app_repo() for git >= 2.11
2017-04-05 11:03:10 -04:00
Moritz Breit
98619733b2 Use git worktree in git_build_app_repo() for git >= 2.11
Git 2.11.0 breaks the git clone approach in git_build_app_repo() in
25ab004c53

git worktree is a much simpler approach but only works for git >= 2.5
so it is not available in Ubuntu 14.04.

Fixes #2512.
2017-04-05 11:45:41 +02:00
Jose Diaz-Gonzalez
2fb712c3a2 Release 0.9.2
# History

## 0.9.2

### New Features

- #2698: @josegonzalez docs: Document that we only care about specific sections
- #2697: @callahad Restore installer note regarding AUFS on Linode
- #2694: @scjody Add documentation note re: git-pre-pull vs. auth

### Documentation

- #2695: @michaelshobbs add tests for pre/post deploy tasks
2017-04-05 00:21:24 -04:00
Jose Diaz-Gonzalez
0fa6503034 Merge pull request #2698 from dokku/josegonzalez-patch-1
docs: Document that we only care about specific sections
2017-04-04 17:05:32 -04:00
Jose Diaz-Gonzalez
fab97a377f docs: Document that we only care about specific sections
Also remove all extra sections that are unused to make this clearer.

[ci skip]
2017-04-04 16:53:15 -04:00
Jose Diaz-Gonzalez
811bf2f9c4 Merge pull request #2697 from callahad/warn-about-aufs-warning
Restore installer note regarding AUFS on Linode
2017-04-04 15:37:38 -04:00
Dan Callahan
20497dabb4 Restore installer note regarding AUFS on Linode
See discussion in: https://github.com/dokku/dokku/issues/2675
Upstream Docker bug: https://github.com/docker/docker/issues/32361
2017-04-04 14:35:09 -05:00
Jose Diaz-Gonzalez
0b430af077 Merge pull request #2694 from plotly/git-pre-pull-security-note
Add documentation note re: git-pre-pull vs. auth
2017-04-04 12:50:37 -04:00
Jody McIntyre
e42e7c3694 Add documentation note re: git-pre-pull vs. auth 2017-04-04 11:40:46 -04:00
Michael Hobbs
eeef120433 Merge pull request #2695 from dokku/mh/chore/deployment-tasks-tests
add tests for pre/post deploy tasks
2017-04-03 16:32:36 -07:00
Michael Hobbs
8950571acb add tests for pre/post deploy tasks 2017-04-03 12:34:41 -07:00
62 changed files with 311 additions and 154 deletions

View File

@@ -1,5 +1,33 @@
# History # History
## 0.9.3
### Bug Fixes
- #2706: @josegonzalez fix: ensure nginx conf.d directory exists when running nginx install hook
- #2701: @scjody Set SSH_USER for root commands
### New Features
- #2708: @josegonzalez Document that we will not do buildpack support in the issue tracker
### Documentation
- #2709: @michaelshobbs increase CURL_TIMEOUT and CURL_CONNECT_TIMEOUT defaults
- #2699: @mbreit Add support for git >= 2.11
## 0.9.2
### New Features
- #2698: @josegonzalez docs: Document that we only care about specific sections
- #2697: @callahad Restore installer note regarding AUFS on Linode
- #2694: @scjody Add documentation note re: git-pre-pull vs. auth
### Documentation
- #2695: @michaelshobbs add tests for pre/post deploy tasks
## 0.9.1 ## 0.9.1
### Bug Fixes ### Bug Fixes

View File

@@ -1,3 +1,5 @@
> If you need help figuring out how to use a specific buildpack, or are having issues using multiple buildpacks, please see our [irc or slack channels](http://dokku.viewdocs.io/dokku/getting-started/where-to-get-help/#the-irc-and-slack-channels). Issues pertaining to buildpacks may be closed and locked.
Description of problem: Description of problem:

View File

@@ -99,8 +99,8 @@ A fresh VM running any of the following operating systems:
To install the latest stable release, run the following commands as a user who has access to `sudo`: To install the latest stable release, run the following commands as a user who has access to `sudo`:
```shell ```shell
wget https://raw.githubusercontent.com/dokku/dokku/v0.9.1/bootstrap.sh wget https://raw.githubusercontent.com/dokku/dokku/v0.9.3/bootstrap.sh
sudo DOKKU_TAG=v0.9.1 bash bootstrap.sh sudo DOKKU_TAG=v0.9.3 bash bootstrap.sh
``` ```
You can then proceed to the ip address or domain name associated with your server to complete the web-based installation. You can then proceed to the ip address or domain name associated with your server to complete the web-based installation.

View File

@@ -117,6 +117,12 @@ install-dokku-from-deb-package() {
apt-get -qq -y install apt-transport-https apt-get -qq -y install apt-transport-https
echo "--> Installing docker" echo "--> Installing docker"
if uname -r | grep -q linode; then
echo "--> NOTE: Using Linode? Docker may complain about missing AUFS support."
echo " You can safely ignore this warning."
echo " Installation will continue in 10 seconds."
sleep 10
fi
wget -nv -O - https://get.docker.com/ | sh wget -nv -O - https://get.docker.com/ | sh
echo "--> Installing dokku" echo "--> Installing dokku"

View File

@@ -10,7 +10,7 @@ import subprocess
import sys import sys
import threading import threading
VERSION = 'v0.9.1' VERSION = 'v0.9.3'
hostname = '' hostname = ''
try: try:

2
debian/control vendored
View File

@@ -1,5 +1,5 @@
Package: dokku Package: dokku
Version: 0.9.1 Version: 0.9.3
Section: web Section: web
Priority: optional Priority: optional
Architecture: amd64 Architecture: amd64

View File

@@ -20,42 +20,15 @@ For dockerfile apps, place `app.json` in the configured `WORKDIR` directory; oth
### Example app.json ### Example app.json
> NOTE: Only the `scripts.dokku.predeploy` and `scripts.dokku.postdeploy` tasks are supported by Dokku at this time. > NOTE: Only the `scripts.dokku.predeploy` and `scripts.dokku.postdeploy` tasks are supported by Dokku at this time. All other fields will be ignored and can be omitted.
```json ```json
{ {
"name": "barebones nodejs",
"description": "A barebones Node.js app using Express 4.",
"keywords": [
"nodejs",
"express"
],
"repository": "https://github.com/michaelshobbs/node-js-sample",
"scripts": { "scripts": {
"dokku": { "dokku": {
"predeploy": "touch /app/predeploy.test", "predeploy": "touch /app/predeploy.test",
"postdeploy": "curl https://some.external.api.service.com/deployment?state=success" "postdeploy": "curl https://some.external.api.service.com/deployment?state=success"
} }
}, }
"env": {
"SECRET_TOKEN": {
"description": "A secret key for verifying the integrity of signed cookies.",
"value": "secret"
},
"WEB_CONCURRENCY": {
"description": "The number of processes to run.",
"generator": "echo 5"
}
},
"image": "gliderlabs/herokuish",
"addons": [
"dokku-postgres",
"dokku-redis"
],
"buildpacks": [
{
"url": "https://github.com/heroku/heroku-buildpack-nodejs"
}
]
} }
``` ```

View File

@@ -31,30 +31,30 @@ dokku plugin
``` ```
plugn: dev plugn: dev
00_dokku-standard 0.9.1 enabled dokku core standard plugin 00_dokku-standard 0.9.3 enabled dokku core standard plugin
20_events 0.9.1 enabled dokku core events logging plugin 20_events 0.9.3 enabled dokku core events logging plugin
apps 0.9.1 enabled dokku core apps plugin apps 0.9.3 enabled dokku core apps plugin
build-env 0.9.1 enabled dokku core build-env plugin build-env 0.9.3 enabled dokku core build-env plugin
certs 0.9.1 enabled dokku core certificate management plugin certs 0.9.3 enabled dokku core certificate management plugin
checks 0.9.1 enabled dokku core checks plugin checks 0.9.3 enabled dokku core checks plugin
common 0.9.1 enabled dokku core common plugin common 0.9.3 enabled dokku core common plugin
config 0.9.1 enabled dokku core config plugin config 0.9.3 enabled dokku core config plugin
docker-options 0.9.1 enabled dokku core docker-options plugin docker-options 0.9.3 enabled dokku core docker-options plugin
domains 0.9.1 enabled dokku core domains plugin domains 0.9.3 enabled dokku core domains plugin
enter 0.9.1 enabled dokku core enter plugin enter 0.9.3 enabled dokku core enter plugin
git 0.9.1 enabled dokku core git plugin git 0.9.3 enabled dokku core git plugin
logs 0.9.1 enabled dokku core logs plugin logs 0.9.3 enabled dokku core logs plugin
named-containers 0.9.1 enabled dokku core named containers plugin named-containers 0.9.3 enabled dokku core named containers plugin
nginx-vhosts 0.9.1 enabled dokku core nginx-vhosts plugin nginx-vhosts 0.9.3 enabled dokku core nginx-vhosts plugin
plugin 0.9.1 enabled dokku core plugin plugin plugin 0.9.3 enabled dokku core plugin plugin
proxy 0.9.1 enabled dokku core proxy plugin proxy 0.9.3 enabled dokku core proxy plugin
ps 0.9.1 enabled dokku core ps plugin ps 0.9.3 enabled dokku core ps plugin
repo 0.9.1 enabled dokku core repo plugin repo 0.9.3 enabled dokku core repo plugin
shell 0.9.1 enabled dokku core shell plugin shell 0.9.3 enabled dokku core shell plugin
ssh-keys 0.9.1 enabled dokku core ssh-keys plugin ssh-keys 0.9.3 enabled dokku core ssh-keys plugin
storage 0.9.1 enabled dokku core storage plugin storage 0.9.3 enabled dokku core storage plugin
tags 0.9.1 enabled dokku core tags plugin tags 0.9.3 enabled dokku core tags plugin
tar 0.9.1 enabled dokku core tar plugin tar 0.9.3 enabled dokku core tar plugin
``` ```
Installing a plugin is easy as well using the `plugin:install` command. This command will also trigger the `install` pluginhook on all existing plugins. Installing a plugin is easy as well using the `plugin:install` command. This command will also trigger the `install` pluginhook on all existing plugins.

View File

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

View File

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

View File

@@ -35,13 +35,13 @@ h1 {
background-repeat: no-repeat; background-repeat: no-repeat;
} }
.header .navbar-brand a { .header .navbar-brand a {
background-image: url(https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/dokku.png); background-image: url(https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/dokku.png);
text-indent: 40px; text-indent: 40px;
} }
.blurb { .blurb {
color: #424242; color: #424242;
background-color: #ededed; background-color: #ededed;
background-image: url(https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/gplaypattern.png); background-image: url(https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/gplaypattern.png);
padding: 45px 0; padding: 45px 0;
text-align: center; text-align: center;
} }

View File

@@ -6,6 +6,6 @@
"0.6.5", "0.6.5",
"0.7.2", "0.7.2",
"0.8.2", "0.8.2",
"0.9.1" "0.9.3"
] ]
} }

View File

@@ -321,6 +321,10 @@ set -eo pipefail; [[ $DOKKU_TRACE ]] && set -x
# TODO # TODO
``` ```
> WARNING: The `git-pre-pull` trigger should _not_ be used for authentication
since it does not get called for commands that use `git-upload-archive` such
as `git archive`. Instead, use the [`user-auth`](#user-auth) trigger.
### `install` ### `install`
- Description: Used to setup any files/configuration for a plugin. - Description: Used to setup any files/configuration for a plugin.

View File

@@ -67,7 +67,7 @@ The workflow looks like this:
```shell ```shell
# having dokku-arch in ../dokku-arch # having dokku-arch in ../dokku-arch
vagrant up build-arch vagrant up build-arch
# wait for "==> build-arch: ==> Finished making: dokku 0.9.1-2 (Mon Feb 22 23:20:37 CET 2016)" # wait for "==> build-arch: ==> Finished making: dokku 0.9.3-2 (Mon Feb 22 23:20:37 CET 2016)"
cd ../dokku-arch cd ../dokku-arch
git add PKGBUILD .SRCINFO git add PKGBUILD .SRCINFO
git commit -m 'Update to dokku 0.9.9' git commit -m 'Update to dokku 0.9.9'

View File

@@ -21,8 +21,8 @@ To install the latest stable version of dokku, you can run the following shell c
```shell ```shell
# for debian systems, installs Dokku via apt-get # for debian systems, installs Dokku via apt-get
wget https://raw.githubusercontent.com/dokku/dokku/v0.9.1/bootstrap.sh; wget https://raw.githubusercontent.com/dokku/dokku/v0.9.3/bootstrap.sh;
sudo DOKKU_TAG=v0.9.1 bash bootstrap.sh sudo DOKKU_TAG=v0.9.3 bash bootstrap.sh
``` ```
The installation process takes about 5-10 minutes, depending upon internet connection speed. The installation process takes about 5-10 minutes, depending upon internet connection speed.

View File

@@ -10,30 +10,30 @@
<link href="https://fonts.googleapis.com/css?family=Montserrat:400,700" rel="stylesheet" type="text/css"> <link href="https://fonts.googleapis.com/css?family=Montserrat:400,700" rel="stylesheet" type="text/css">
<title>Dokku - The smallest PaaS implementation you've ever seen</title> <title>Dokku - The smallest PaaS implementation you've ever seen</title>
<link rel="apple-touch-icon" sizes="57x57" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-57x57.png"> <link rel="apple-touch-icon" sizes="57x57" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-60x60.png"> <link rel="apple-touch-icon" sizes="60x60" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-72x72.png"> <link rel="apple-touch-icon" sizes="72x72" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-76x76.png"> <link rel="apple-touch-icon" sizes="76x76" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-114x114.png"> <link rel="apple-touch-icon" sizes="114x114" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-120x120.png"> <link rel="apple-touch-icon" sizes="120x120" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-144x144.png"> <link rel="apple-touch-icon" sizes="144x144" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-152x152.png"> <link rel="apple-touch-icon" sizes="152x152" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-180x180.png"> <link rel="apple-touch-icon" sizes="180x180" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-180x180.png">
<link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/favicon-32x32.png" sizes="32x32"> <link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/favicon-32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/android-chrome-192x192.png" sizes="192x192"> <link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/android-chrome-192x192.png" sizes="192x192">
<link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/favicon-96x96.png" sizes="96x96"> <link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/favicon-96x96.png" sizes="96x96">
<link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/favicon-16x16.png" sizes="16x16"> <link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/favicon-16x16.png" sizes="16x16">
<link rel="manifest" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/manifest.json"> <link rel="manifest" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/manifest.json">
<link rel="shortcut icon" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/favicon.ico"> <link rel="shortcut icon" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/favicon.ico">
<meta name="apple-mobile-web-app-title" content="Dokku"> <meta name="apple-mobile-web-app-title" content="Dokku">
<meta name="application-name" content="Dokku"> <meta name="application-name" content="Dokku">
<meta name="msapplication-TileColor" content="#da532c"> <meta name="msapplication-TileColor" content="#da532c">
<meta name="msapplication-TileImage" content="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/mstile-144x144.png"> <meta name="msapplication-TileImage" content="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/mstile-144x144.png">
<meta name="msapplication-config" content="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/browserconfig.xml"> <meta name="msapplication-config" content="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/browserconfig.xml">
<meta name="theme-color" content="#ffffff"> <meta name="theme-color" content="#ffffff">
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.2/css/bootstrap.min.css" rel="stylesheet"> <link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.2/css/bootstrap.min.css" rel="stylesheet">
<link href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/style.css" rel="stylesheet"> <link href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/style.css" rel="stylesheet">
<!-- <link href="/dokku/docs/assets/style.css" rel="stylesheet"> --> <!-- <link href="/dokku/docs/assets/style.css" rel="stylesheet"> -->
<style> <style>
</style> </style>
@@ -98,12 +98,12 @@
<p class="line"> <p class="line">
<span class="path"></span> <span class="path"></span>
<span class="prompt">$</span> <span class="prompt">$</span>
<span class="command">wget https://raw.githubusercontent.com/dokku/dokku/v0.9.1/bootstrap.sh</span> <span class="command">wget https://raw.githubusercontent.com/dokku/dokku/v0.9.3/bootstrap.sh</span>
</p> </p>
<p class="line"> <p class="line">
<span class="path"></span> <span class="path"></span>
<span class="prompt">$</span> <span class="prompt">$</span>
<span class="command">sudo DOKKU_TAG=v0.9.1 bash bootstrap.sh</span> <span class="command">sudo DOKKU_TAG=v0.9.3 bash bootstrap.sh</span>
</p> </p>
<p class="line"> <p class="line">
<span class="output">&nbsp;# go to your server's IP and follow the web installer</span> <span class="output">&nbsp;# go to your server's IP and follow the web installer</span>

View File

@@ -9,26 +9,26 @@
<meta name="author" content=""> <meta name="author" content="">
<title>Dokku - The smallest PaaS implementation you've ever seen</title> <title>Dokku - The smallest PaaS implementation you've ever seen</title>
<link rel="apple-touch-icon" sizes="57x57" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-57x57.png"> <link rel="apple-touch-icon" sizes="57x57" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-60x60.png"> <link rel="apple-touch-icon" sizes="60x60" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-72x72.png"> <link rel="apple-touch-icon" sizes="72x72" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-76x76.png"> <link rel="apple-touch-icon" sizes="76x76" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-114x114.png"> <link rel="apple-touch-icon" sizes="114x114" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-120x120.png"> <link rel="apple-touch-icon" sizes="120x120" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-144x144.png"> <link rel="apple-touch-icon" sizes="144x144" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-152x152.png"> <link rel="apple-touch-icon" sizes="152x152" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/apple-touch-icon-180x180.png"> <link rel="apple-touch-icon" sizes="180x180" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/apple-touch-icon-180x180.png">
<link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/favicon-32x32.png" sizes="32x32"> <link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/favicon-32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/android-chrome-192x192.png" sizes="192x192"> <link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/android-chrome-192x192.png" sizes="192x192">
<link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/favicon-96x96.png" sizes="96x96"> <link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/favicon-96x96.png" sizes="96x96">
<link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/favicon-16x16.png" sizes="16x16"> <link rel="icon" type="image/png" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/favicon-16x16.png" sizes="16x16">
<link rel="manifest" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/manifest.json"> <link rel="manifest" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/manifest.json">
<link rel="shortcut icon" href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/favicon.ico"> <link rel="shortcut icon" href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/favicon.ico">
<meta name="apple-mobile-web-app-title" content="Dokku"> <meta name="apple-mobile-web-app-title" content="Dokku">
<meta name="application-name" content="Dokku"> <meta name="application-name" content="Dokku">
<meta name="msapplication-TileColor" content="#da532c"> <meta name="msapplication-TileColor" content="#da532c">
<meta name="msapplication-TileImage" content="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/mstile-144x144.png"> <meta name="msapplication-TileImage" content="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/mstile-144x144.png">
<meta name="msapplication-config" content="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/favicons/browserconfig.xml"> <meta name="msapplication-config" content="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/favicons/browserconfig.xml">
<meta name="theme-color" content="#ffffff"> <meta name="theme-color" content="#ffffff">
<script> <script>
@@ -42,7 +42,7 @@
</script> </script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.2/css/bootstrap.min.css" rel="stylesheet"> <link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.2/css/bootstrap.min.css" rel="stylesheet">
<link href="https://cdn.rawgit.com/dokku/dokku/v0.9.1/docs/assets/style.css" rel="stylesheet"> <link href="https://cdn.rawgit.com/dokku/dokku/v0.9.3/docs/assets/style.css" rel="stylesheet">
<!-- <link href="/dokku/docs/assets/style.css" rel="stylesheet"> --> <!-- <link href="/dokku/docs/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"> <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.5.0/css/font-awesome.min.css" rel="stylesheet">
<style> <style>

8
dokku
View File

@@ -56,8 +56,12 @@ if [[ $(id -un) != "dokku" ]] && [[ ! $1 =~ plugin:* ]] && [[ ! $1 == "ssh-keys:
exit $? exit $?
fi fi
if [[ $(id -un) != "root" && $1 =~ ^plugin:.* && $1 != "plugin:help" && $1 != "plugin:list" ]] || [[ $(id -un) != "root" && $1 == "ssh-keys:add" ]]; then if [[ $1 =~ ^plugin:.* && $1 != "plugin:help" && $1 != "plugin:list" ]] || [[ $1 == "ssh-keys:add" ]]; then
dokku_log_fail "This command must be run as root" if [[ $(id -un) != "root" ]]; then
dokku_log_fail "This command must be run as root"
else
export SSH_USER=root
fi
fi fi
if [[ -n "$SSH_ORIGINAL_COMMAND" ]]; then if [[ -n "$SSH_ORIGINAL_COMMAND" ]]; then

View File

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

View File

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

View File

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

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core build-env plugin" description = "dokku core build-env plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -9,8 +9,8 @@ build_env_pre_build_buildpack() {
local APP="$1"; local IMAGE=$(get_app_image_name "$APP"); local BUILD_ENV="" local APP="$1"; local IMAGE=$(get_app_image_name "$APP"); local BUILD_ENV=""
verify_app_name "$APP" verify_app_name "$APP"
[[ -z $(config_get --global CURL_CONNECT_TIMEOUT) ]] && config_set --global CURL_CONNECT_TIMEOUT=5 [[ -z $(config_get --global CURL_CONNECT_TIMEOUT) ]] && config_set --global CURL_CONNECT_TIMEOUT=90
[[ -z $(config_get --global CURL_TIMEOUT) ]] && config_set --global CURL_TIMEOUT=30 [[ -z $(config_get --global CURL_TIMEOUT) ]] && config_set --global CURL_TIMEOUT=60
if [[ -n $(config_export global) ]]; then if [[ -n $(config_export global) ]]; then
local BUILD_ENV+=$'\n' local BUILD_ENV+=$'\n'

View File

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

View File

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

View File

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

View File

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

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core docker-options plugin" description = "dokku core docker-options plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core domains plugin" description = "dokku core domains plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core enter plugin" description = "dokku core enter plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -4,6 +4,23 @@ source "$PLUGIN_CORE_AVAILABLE_PATH/common/functions"
source "$PLUGIN_AVAILABLE_PATH/apps/functions" source "$PLUGIN_AVAILABLE_PATH/apps/functions"
source "$PLUGIN_AVAILABLE_PATH/config/functions" source "$PLUGIN_AVAILABLE_PATH/config/functions"
use_git_worktree() {
declare desc="detects whether to use git worktree"
local GIT_VERSION MAJOR_VERSION MINOR_VERSION
GIT_VERSION=$(git --version | awk '{split($0,a," "); print a[3]}')
MAJOR_VERSION=$(echo "$GIT_VERSION" | awk '{split($0,a,"."); print a[1]}')
MINOR_VERSION=$(echo "$GIT_VERSION" | awk '{split($0,a,"."); print a[2]}')
if [[ "$MAJOR_VERSION" -ge "3" ]]; then
return 0
elif [[ "$MAJOR_VERSION" -eq "2" ]] && [[ "$MINOR_VERSION" -ge "11" ]]; then
return 0
else
return 1
fi
}
git_build_app_repo() { git_build_app_repo() {
declare desc="builds local git app repo for app" declare desc="builds local git app repo for app"
verify_app_name "$1" verify_app_name "$1"
@@ -13,23 +30,34 @@ git_build_app_repo() {
local GIT_BUILD_APP_REPO_TMP_WORK_DIR=$(mktemp -d "/tmp/dokku_git.XXXX") local GIT_BUILD_APP_REPO_TMP_WORK_DIR=$(mktemp -d "/tmp/dokku_git.XXXX")
trap 'rm -rf "$GIT_BUILD_APP_REPO_TMP_WORK_DIR" > /dev/null' RETURN INT TERM EXIT trap 'rm -rf "$GIT_BUILD_APP_REPO_TMP_WORK_DIR" > /dev/null' RETURN INT TERM EXIT
# git clone - this method creates a new git repository and adds the primary
# repo as a remote, then does a fetch depth=1 to avoid cloning
# the entire repo
local TMP_TAG="dokku/$REV" local TMP_TAG="dokku/$REV"
chmod 755 "$GIT_BUILD_APP_REPO_TMP_WORK_DIR" chmod 755 "$GIT_BUILD_APP_REPO_TMP_WORK_DIR"
unset GIT_DIR GIT_WORK_TREE unset GIT_DIR GIT_WORK_TREE
pushd "$GIT_BUILD_APP_REPO_TMP_WORK_DIR" > /dev/null
[[ ! -d "$DOKKU_ROOT/$APP" ]] && apps_create "$APP" [[ ! -d "$DOKKU_ROOT/$APP" ]] && apps_create "$APP"
GIT_DIR="$DOKKU_ROOT/$APP" git tag -d "$TMP_TAG" &> /dev/null || true
GIT_DIR="$DOKKU_ROOT/$APP" git tag "$TMP_TAG" "$REV" &> /dev/null if use_git_worktree; then
git init &> /dev/null # git worktree - this method uses git worktree which was introduced in git 2.5
git config advice.detachedHead false git worktree add "$GIT_BUILD_APP_REPO_TMP_WORK_DIR" "$REV" > /dev/null
git remote add origin "$DOKKU_ROOT/$APP" &> /dev/null pushd "$GIT_BUILD_APP_REPO_TMP_WORK_DIR" > /dev/null
git fetch --depth=1 origin "refs/tags/$TMP_TAG" &> /dev/null else
git reset --hard FETCH_HEAD &> /dev/null # git clone - this method creates a new git repository and adds the primary
# repo as a remote, then does a fetch depth=1 to avoid cloning
# the entire repo.
# Not working for git >= 2.11.0 due to changes introduced
# in this merge:
# https://github.com/git/git/commit/25ab004c53cdcfea485e5bf437aeaa74df47196d
pushd "$GIT_BUILD_APP_REPO_TMP_WORK_DIR" > /dev/null
GIT_DIR="$DOKKU_ROOT/$APP" git tag -d "$TMP_TAG" &> /dev/null || true
GIT_DIR="$DOKKU_ROOT/$APP" git tag "$TMP_TAG" "$REV" &> /dev/null
git init &> /dev/null
git config advice.detachedHead false
git remote add origin "$DOKKU_ROOT/$APP" &> /dev/null
git fetch --depth=1 origin "refs/tags/$TMP_TAG" &> /dev/null
git reset --hard FETCH_HEAD &> /dev/null
GIT_DIR="$DOKKU_ROOT/$APP" git tag -d "$TMP_TAG" &> /dev/null || true
fi
suppress_output git submodule update --init --recursive suppress_output git submodule update --init --recursive
GIT_DIR="$DOKKU_ROOT/$APP" git tag -d "$TMP_TAG" &> /dev/null || true
find . -name .git -prune -exec rm -rf {} \; > /dev/null find . -name .git -prune -exec rm -rf {} \; > /dev/null
plugn trigger post-extract "$APP" "$GIT_BUILD_APP_REPO_TMP_WORK_DIR" "$REV" plugn trigger post-extract "$APP" "$GIT_BUILD_APP_REPO_TMP_WORK_DIR" "$REV"

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core git plugin" description = "dokku core git plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core logs plugin" description = "dokku core logs plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core named containers plugin" description = "dokku core named containers plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -28,6 +28,8 @@ chmod 0440 /etc/sudoers.d/dokku-nginx
# if dokku.conf has not been created, create it # if dokku.conf has not been created, create it
if [[ ! -f /etc/nginx/conf.d/dokku.conf ]]; then if [[ ! -f /etc/nginx/conf.d/dokku.conf ]]; then
mkdir -p /etc/nginx/conf.d
chown root:root /etc/nginx/conf.d
cat<<EOF > /etc/nginx/conf.d/dokku.conf cat<<EOF > /etc/nginx/conf.d/dokku.conf
include $DOKKU_ROOT/*/nginx.conf; include $DOKKU_ROOT/*/nginx.conf;

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core nginx-vhosts plugin" description = "dokku core nginx-vhosts plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

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

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core proxy plugin" description = "dokku core proxy plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core ps plugin" description = "dokku core ps plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core repo plugin" description = "dokku core repo plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core shell plugin" description = "dokku core shell plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core ssh-keys plugin" description = "dokku core ssh-keys plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core storage plugin" description = "dokku core storage plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core tags plugin" description = "dokku core tags plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -1,4 +1,4 @@
[plugin] [plugin]
description = "dokku core tar plugin" description = "dokku core tar plugin"
version = "0.9.1" version = "0.9.3"
[plugin.config] [plugin.config]

View File

@@ -91,6 +91,14 @@ else
@$(QUIET) ./tests/ci/unit_test_runner.sh $$UNIT_TEST_BATCH @$(QUIET) ./tests/ci/unit_test_runner.sh $$UNIT_TEST_BATCH
endif endif
deploy-test-go-fail-predeploy:
@echo deploying go-fail-predeploy app...
cd tests && ./test_deploy ./apps/go-fail-predeploy dokku.me '' true
deploy-test-go-fail-postdeploy:
@echo deploying go-fail-postdeploy app...
cd tests && ./test_deploy ./apps/go-fail-postdeploy dokku.me '' true
deploy-test-checks-root: deploy-test-checks-root:
@echo deploying checks-root app... @echo deploying checks-root app...
cd tests && ./test_deploy ./apps/checks-root dokku.me '' true cd tests && ./test_deploy ./apps/checks-root dokku.me '' true
@@ -166,6 +174,8 @@ deploy-test-static:
deploy-tests: deploy-tests:
@echo running deploy tests... @echo running deploy tests...
@$(QUIET) $(MAKE) deploy-test-checks-root @$(QUIET) $(MAKE) deploy-test-checks-root
@$(QUIET) $(MAKE) deploy-test-go-fail-predeploy
@$(QUIET) $(MAKE) deploy-test-go-fail-postdeploy
@$(QUIET) $(MAKE) deploy-test-config @$(QUIET) $(MAKE) deploy-test-config
@$(QUIET) $(MAKE) deploy-test-clojure @$(QUIET) $(MAKE) deploy-test-clojure
@$(QUIET) $(MAKE) deploy-test-dockerfile @$(QUIET) $(MAKE) deploy-test-dockerfile

View File

@@ -0,0 +1 @@
web

View File

@@ -0,0 +1 @@
/ go

View File

@@ -0,0 +1,8 @@
FROM golang:1.7.5
EXPOSE 3000/tcp
ADD . /go/src/github.com/dokku/apps/web
WORKDIR /go/src/github.com/dokku/apps/web
RUN go install -v ./...

View File

@@ -0,0 +1 @@
web: /go/bin/web

View File

@@ -0,0 +1,17 @@
{
"name": "Sample go app",
"description": "Used in dokku's test suite",
"website": "http://dokku.viewdocs.io/dokku/",
"repository": "https://github.com/dokku/dokku",
"logo": "https://raw.githubusercontent.com/dokku/dokku/master/docs/assets/dokku.png",
"scripts": {
"dokku": {
"postdeploy": "touch /app/postdeploy.test && ls -la /app"
}
},
"buildpacks": [
{
"url": "https://github.com/heroku/heroku-buildpack-go"
}
]
}

View File

@@ -0,0 +1,2 @@
#!/usr/bin/env bash
set -e; test "$(curl -s -S "$1")" == "go"

View File

@@ -0,0 +1,20 @@
package main
import (
"fmt"
"net/http"
"os"
)
func main() {
http.HandleFunc("/", hello)
fmt.Println("listening...")
err := http.ListenAndServe(":"+os.Getenv("PORT"), nil)
if err != nil {
panic(err)
}
}
func hello(res http.ResponseWriter, req *http.Request) {
fmt.Fprintln(res, "go")
}

View File

@@ -0,0 +1 @@
web

View File

@@ -0,0 +1 @@
/ go

View File

@@ -0,0 +1,8 @@
FROM golang:1.7.5
EXPOSE 3000/tcp
ADD . /go/src/github.com/dokku/apps/web
WORKDIR /go/src/github.com/dokku/apps/web
RUN go install -v ./...

View File

@@ -0,0 +1 @@
web: /go/bin/web

View File

@@ -0,0 +1,17 @@
{
"name": "Sample go app",
"description": "Used in dokku's test suite",
"website": "http://dokku.viewdocs.io/dokku/",
"repository": "https://github.com/dokku/dokku",
"logo": "https://raw.githubusercontent.com/dokku/dokku/master/docs/assets/dokku.png",
"scripts": {
"dokku": {
"predeploy": "touch /app/predeploy.test && ls -la /app"
}
},
"buildpacks": [
{
"url": "https://github.com/heroku/heroku-buildpack-go"
}
]
}

View File

@@ -0,0 +1,2 @@
#!/usr/bin/env bash
set -e; test "$(curl -s -S "$1")" == "go"

View File

@@ -0,0 +1,20 @@
package main
import (
"fmt"
"net/http"
"os"
)
func main() {
http.HandleFunc("/", hello)
fmt.Println("listening...")
err := http.ListenAndServe(":"+os.Getenv("PORT"), nil)
if err != nil {
panic(err)
}
}
func hello(res http.ResponseWriter, req *http.Request) {
fmt.Fprintln(res, "go")
}

View File

@@ -79,7 +79,7 @@ case "$CIRCLE_NODE_INDEX" in
exit $RC exit $RC
fi fi
echo "=====> make deploy tests" echo "=====> make deploy tests"
sudo -E make -e deploy-test-checks-root deploy-test-config deploy-test-multi sudo -E make -e deploy-test-checks-root deploy-test-config deploy-test-multi deploy-test-go-fail-predeploy deploy-test-go-fail-postdeploy
RC=$? RC=$?
if [[ $RC -ne 0 ]]; then if [[ $RC -ne 0 ]]; then
echo "exit status: $RC" echo "exit status: $RC"

View File

@@ -35,12 +35,12 @@ teardown() {
assert_success assert_success
deploy_app deploy_app
run /bin/bash -c "dokku config:get --global CURL_CONNECT_TIMEOUT | grep 5" run /bin/bash -c "dokku config:get --global CURL_CONNECT_TIMEOUT | grep 90"
echo "output: "$output echo "output: "$output
echo "status: "$status echo "status: "$status
assert_success assert_success
run /bin/bash -c "dokku config:get --global CURL_TIMEOUT | grep 30" run /bin/bash -c "dokku config:get --global CURL_TIMEOUT | grep 60"
echo "output: "$output echo "output: "$output
echo "status: "$status echo "status: "$status
assert_success assert_success