4 Commits

Author SHA1 Message Date
Niklas Keller
f4cabf755b Update dependencies, ignore cookies 2017-05-10 10:22:51 +02:00
Niklas Keller
d78b465739 Add link to phar download 2017-03-18 08:52:18 +01:00
Niklas Keller
aa8186471c Issue certificates sequential, allow changing the challenge concurrency 2017-01-30 19:15:33 +01:00
Niklas Keller
888588cf00 Separate script for cron 2017-01-13 09:00:39 +01:00
6 changed files with 204 additions and 165 deletions

View File

@@ -135,6 +135,7 @@ try {
$injector = new Injector;
$injector->share($climate);
$injector->share(new AcmeFactory);
$injector->share(new Amp\Artax\Client(new Amp\Artax\Cookie\NullCookieJar));
$command = $injector->make($class);

300
composer.lock generated
View File

@@ -65,16 +65,16 @@
},
{
"name": "amphp/artax",
"version": "v2.0.5",
"version": "v2.0.6",
"source": {
"type": "git",
"url": "https://github.com/amphp/artax.git",
"reference": "1795ed4076469546f79804b348ffd6dd77656f73"
"reference": "8ed34eb97685432b603fdf5b9279bd908333c814"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/amphp/artax/zipball/1795ed4076469546f79804b348ffd6dd77656f73",
"reference": "1795ed4076469546f79804b348ffd6dd77656f73",
"url": "https://api.github.com/repos/amphp/artax/zipball/8ed34eb97685432b603fdf5b9279bd908333c814",
"reference": "8ed34eb97685432b603fdf5b9279bd908333c814",
"shasum": ""
},
"require": {
@@ -119,7 +119,7 @@
"parallel",
"rest"
],
"time": "2016-08-08T16:27:01+00:00"
"time": "2017-05-09T19:47:08+00:00"
},
{
"name": "amphp/cache",
@@ -171,16 +171,16 @@
},
{
"name": "amphp/dns",
"version": "v0.8.12",
"version": "v0.8.14",
"source": {
"type": "git",
"url": "https://github.com/amphp/dns.git",
"reference": "0b0ef2b82d7307d57e624042aac8862f5115ad12"
"reference": "5fc1cde2d29e94d731ab96d5ef5f9f20958315cc"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/amphp/dns/zipball/0b0ef2b82d7307d57e624042aac8862f5115ad12",
"reference": "0b0ef2b82d7307d57e624042aac8862f5115ad12",
"url": "https://api.github.com/repos/amphp/dns/zipball/5fc1cde2d29e94d731ab96d5ef5f9f20958315cc",
"reference": "5fc1cde2d29e94d731ab96d5ef5f9f20958315cc",
"shasum": ""
},
"require": {
@@ -193,6 +193,7 @@
},
"require-dev": {
"friendsofphp/php-cs-fixer": "^1.9",
"phpunit/php-code-coverage": ">=2.2",
"phpunit/phpunit": "^4.8|^5.1.3"
},
"type": "library",
@@ -236,7 +237,7 @@
"dns",
"resolve"
],
"time": "2017-01-05T00:13:28+00:00"
"time": "2017-02-05T22:17:40+00:00"
},
{
"name": "amphp/file",
@@ -686,16 +687,16 @@
},
{
"name": "phpseclib/phpseclib",
"version": "2.0.4",
"version": "2.0.5",
"source": {
"type": "git",
"url": "https://github.com/phpseclib/phpseclib.git",
"reference": "ab8028c93c03cc8d9c824efa75dc94f1db2369bf"
"reference": "f8dd0e18d2328c447dd4190fecd11ef52680d968"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/ab8028c93c03cc8d9c824efa75dc94f1db2369bf",
"reference": "ab8028c93c03cc8d9c824efa75dc94f1db2369bf",
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/f8dd0e18d2328c447dd4190fecd11ef52680d968",
"reference": "f8dd0e18d2328c447dd4190fecd11ef52680d968",
"shasum": ""
},
"require": {
@@ -774,20 +775,20 @@
"x.509",
"x509"
],
"time": "2016-10-04T00:57:04+00:00"
"time": "2017-05-08T05:58:35+00:00"
},
{
"name": "rdlowrey/auryn",
"version": "v1.4.0",
"version": "v1.4.1",
"source": {
"type": "git",
"url": "https://github.com/rdlowrey/auryn.git",
"reference": "2e4240791162dfe073d59654d8dc06df0eb0b73f"
"reference": "c6c92ec081c707f7e9e0a69185665147b30d66de"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/rdlowrey/auryn/zipball/2e4240791162dfe073d59654d8dc06df0eb0b73f",
"reference": "2e4240791162dfe073d59654d8dc06df0eb0b73f",
"url": "https://api.github.com/repos/rdlowrey/auryn/zipball/c6c92ec081c707f7e9e0a69185665147b30d66de",
"reference": "c6c92ec081c707f7e9e0a69185665147b30d66de",
"shasum": ""
},
"require": {
@@ -835,27 +836,27 @@
"dic",
"ioc"
],
"time": "2016-03-14T20:10:19+00:00"
"time": "2017-04-07T16:12:28+00:00"
},
{
"name": "sabre/uri",
"version": "1.2.0",
"version": "1.2.1",
"source": {
"type": "git",
"url": "https://github.com/fruux/sabre-uri.git",
"reference": "8545a3335f741d4b7700bb14efb41b4c03775dcd"
"reference": "ada354d83579565949d80b2e15593c2371225e61"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/fruux/sabre-uri/zipball/8545a3335f741d4b7700bb14efb41b4c03775dcd",
"reference": "8545a3335f741d4b7700bb14efb41b4c03775dcd",
"url": "https://api.github.com/repos/fruux/sabre-uri/zipball/ada354d83579565949d80b2e15593c2371225e61",
"reference": "ada354d83579565949d80b2e15593c2371225e61",
"shasum": ""
},
"require": {
"php": ">=5.4.7"
},
"require-dev": {
"phpunit/phpunit": "*",
"phpunit/phpunit": ">=4.0,<6.0",
"sabre/cs": "~1.0.0"
},
"type": "library",
@@ -886,20 +887,20 @@
"uri",
"url"
],
"time": "2016-12-07T01:17:59+00:00"
"time": "2017-02-20T19:59:28+00:00"
},
{
"name": "seld/cli-prompt",
"version": "1.0.2",
"version": "1.0.3",
"source": {
"type": "git",
"url": "https://github.com/Seldaek/cli-prompt.git",
"reference": "8cbe10923cae5bcd7c5a713f6703fc4727c8c1b4"
"reference": "a19a7376a4689d4d94cab66ab4f3c816019ba8dd"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Seldaek/cli-prompt/zipball/8cbe10923cae5bcd7c5a713f6703fc4727c8c1b4",
"reference": "8cbe10923cae5bcd7c5a713f6703fc4727c8c1b4",
"url": "https://api.github.com/repos/Seldaek/cli-prompt/zipball/a19a7376a4689d4d94cab66ab4f3c816019ba8dd",
"reference": "a19a7376a4689d4d94cab66ab4f3c816019ba8dd",
"shasum": ""
},
"require": {
@@ -934,7 +935,7 @@
"input",
"prompt"
],
"time": "2016-04-18T09:31:41+00:00"
"time": "2017-03-18T11:32:45+00:00"
},
{
"name": "symfony/polyfill-php56",
@@ -1046,16 +1047,16 @@
},
{
"name": "symfony/yaml",
"version": "v3.2.1",
"version": "v3.2.8",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
"reference": "a7095af4b97a0955f85c8989106c249fa649011f"
"reference": "acec26fcf7f3031e094e910b94b002fa53d4e4d6"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/yaml/zipball/a7095af4b97a0955f85c8989106c249fa649011f",
"reference": "a7095af4b97a0955f85c8989106c249fa649011f",
"url": "https://api.github.com/repos/symfony/yaml/zipball/acec26fcf7f3031e094e910b94b002fa53d4e4d6",
"reference": "acec26fcf7f3031e094e910b94b002fa53d4e4d6",
"shasum": ""
},
"require": {
@@ -1097,7 +1098,7 @@
],
"description": "Symfony Yaml Component",
"homepage": "https://symfony.com",
"time": "2016-12-10T10:07:06+00:00"
"time": "2017-05-01T14:55:58+00:00"
},
{
"name": "webmozart/assert",
@@ -1207,35 +1208,35 @@
},
{
"name": "friendsofphp/php-cs-fixer",
"version": "v1.11.8",
"version": "v1.13.1",
"source": {
"type": "git",
"url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git",
"reference": "117137e9970054d022b7656209f094dab852b90c"
"reference": "0ea4f7ed06ca55da1d8fc45da26ff87f261c4088"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/117137e9970054d022b7656209f094dab852b90c",
"reference": "117137e9970054d022b7656209f094dab852b90c",
"url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/0ea4f7ed06ca55da1d8fc45da26ff87f261c4088",
"reference": "0ea4f7ed06ca55da1d8fc45da26ff87f261c4088",
"shasum": ""
},
"require": {
"ext-tokenizer": "*",
"php": ">=5.3.6",
"sebastian/diff": "~1.1",
"symfony/console": "~2.3|~3.0",
"symfony/event-dispatcher": "~2.1|~3.0",
"symfony/filesystem": "~2.1|~3.0",
"symfony/finder": "~2.1|~3.0",
"symfony/process": "~2.3|~3.0",
"symfony/stopwatch": "~2.5|~3.0"
"php": "^5.3.6 || >=7.0 <7.2",
"sebastian/diff": "^1.1",
"symfony/console": "^2.3 || ^3.0",
"symfony/event-dispatcher": "^2.1 || ^3.0",
"symfony/filesystem": "^2.1 || ^3.0",
"symfony/finder": "^2.1 || ^3.0",
"symfony/process": "^2.3 || ^3.0",
"symfony/stopwatch": "^2.5 || ^3.0"
},
"conflict": {
"hhvm": "<3.9"
},
"require-dev": {
"phpunit/phpunit": "^4.5|^5",
"satooshi/php-coveralls": "^0.7.1"
"satooshi/php-coveralls": "^1.0"
},
"bin": [
"php-cs-fixer"
@@ -1261,7 +1262,7 @@
}
],
"description": "A tool to automatically fix PHP code style",
"time": "2016-08-16T23:31:05+00:00"
"time": "2016-12-01T00:05:05+00:00"
},
{
"name": "league/event",
@@ -1423,16 +1424,16 @@
},
{
"name": "myclabs/deep-copy",
"version": "1.5.5",
"version": "1.6.1",
"source": {
"type": "git",
"url": "https://github.com/myclabs/DeepCopy.git",
"reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108"
"reference": "8e6e04167378abf1ddb4d3522d8755c5fd90d102"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/399c1f9781e222f6eb6cc238796f5200d1b7f108",
"reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108",
"url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/8e6e04167378abf1ddb4d3522d8755c5fd90d102",
"reference": "8e6e04167378abf1ddb4d3522d8755c5fd90d102",
"shasum": ""
},
"require": {
@@ -1461,7 +1462,7 @@
"object",
"object graph"
],
"time": "2016-10-31T17:19:45+00:00"
"time": "2017-04-12T18:52:22+00:00"
},
{
"name": "neutron/signal-handler",
@@ -1654,27 +1655,27 @@
},
{
"name": "phpspec/prophecy",
"version": "v1.6.2",
"version": "v1.7.0",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
"reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
"reference": "93d39f1f7f9326d746203c7c056f300f7f126073"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
"reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
"url": "https://api.github.com/repos/phpspec/prophecy/zipball/93d39f1f7f9326d746203c7c056f300f7f126073",
"reference": "93d39f1f7f9326d746203c7c056f300f7f126073",
"shasum": ""
},
"require": {
"doctrine/instantiator": "^1.0.2",
"php": "^5.3|^7.0",
"phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
"sebastian/comparator": "^1.1",
"sebastian/recursion-context": "^1.0|^2.0"
"sebastian/comparator": "^1.1|^2.0",
"sebastian/recursion-context": "^1.0|^2.0|^3.0"
},
"require-dev": {
"phpspec/phpspec": "^2.0",
"phpspec/phpspec": "^2.5|^3.2",
"phpunit/phpunit": "^4.8 || ^5.6.5"
},
"type": "library",
@@ -1713,39 +1714,39 @@
"spy",
"stub"
],
"time": "2016-11-21T14:58:47+00:00"
"time": "2017-03-02T20:05:34+00:00"
},
{
"name": "phpunit/php-code-coverage",
"version": "4.0.4",
"version": "4.0.8",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
"reference": "c14196e64a78570034afd0b7a9f3757ba71c2a0a"
"reference": "ef7b2f56815df854e66ceaee8ebe9393ae36a40d"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/c14196e64a78570034afd0b7a9f3757ba71c2a0a",
"reference": "c14196e64a78570034afd0b7a9f3757ba71c2a0a",
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ef7b2f56815df854e66ceaee8ebe9393ae36a40d",
"reference": "ef7b2f56815df854e66ceaee8ebe9393ae36a40d",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-xmlwriter": "*",
"php": "^5.6 || ^7.0",
"phpunit/php-file-iterator": "~1.3",
"phpunit/php-text-template": "~1.2",
"phpunit/php-token-stream": "^1.4.2",
"sebastian/code-unit-reverse-lookup": "~1.0",
"phpunit/php-file-iterator": "^1.3",
"phpunit/php-text-template": "^1.2",
"phpunit/php-token-stream": "^1.4.2 || ^2.0",
"sebastian/code-unit-reverse-lookup": "^1.0",
"sebastian/environment": "^1.3.2 || ^2.0",
"sebastian/version": "~1.0|~2.0"
"sebastian/version": "^1.0 || ^2.0"
},
"require-dev": {
"ext-xdebug": ">=2.1.4",
"phpunit/phpunit": "^5.4"
"ext-xdebug": "^2.1.4",
"phpunit/phpunit": "^5.7"
},
"suggest": {
"ext-dom": "*",
"ext-xdebug": ">=2.4.0",
"ext-xmlwriter": "*"
"ext-xdebug": "^2.5.1"
},
"type": "library",
"extra": {
@@ -1776,7 +1777,7 @@
"testing",
"xunit"
],
"time": "2016-12-20T15:22:42+00:00"
"time": "2017-04-02T07:44:40+00:00"
},
{
"name": "phpunit/php-file-iterator",
@@ -1868,25 +1869,30 @@
},
{
"name": "phpunit/php-timer",
"version": "1.0.8",
"version": "1.0.9",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git",
"reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
"reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
"reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
"url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3dcf38ca72b158baf0bc245e9184d3fdffa9c46f",
"reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f",
"shasum": ""
},
"require": {
"php": ">=5.3.3"
"php": "^5.3.3 || ^7.0"
},
"require-dev": {
"phpunit/phpunit": "~4|~5"
"phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.0-dev"
}
},
"autoload": {
"classmap": [
"src/"
@@ -1908,20 +1914,20 @@
"keywords": [
"timer"
],
"time": "2016-05-12T18:03:57+00:00"
"time": "2017-02-26T11:10:40+00:00"
},
{
"name": "phpunit/php-token-stream",
"version": "1.4.9",
"version": "1.4.11",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-token-stream.git",
"reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
"reference": "e03f8f67534427a787e21a385a67ec3ca6978ea7"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
"reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
"url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/e03f8f67534427a787e21a385a67ec3ca6978ea7",
"reference": "e03f8f67534427a787e21a385a67ec3ca6978ea7",
"shasum": ""
},
"require": {
@@ -1957,20 +1963,20 @@
"keywords": [
"tokenizer"
],
"time": "2016-11-15T14:06:22+00:00"
"time": "2017-02-27T10:12:30+00:00"
},
{
"name": "phpunit/phpunit",
"version": "5.7.5",
"version": "5.7.19",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
"reference": "50fd2be8f3e23e91da825f36f08e5f9633076ffe"
"reference": "69c4f49ff376af2692bad9cebd883d17ebaa98a1"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/50fd2be8f3e23e91da825f36f08e5f9633076ffe",
"reference": "50fd2be8f3e23e91da825f36f08e5f9633076ffe",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/69c4f49ff376af2692bad9cebd883d17ebaa98a1",
"reference": "69c4f49ff376af2692bad9cebd883d17ebaa98a1",
"shasum": ""
},
"require": {
@@ -1982,19 +1988,19 @@
"myclabs/deep-copy": "~1.3",
"php": "^5.6 || ^7.0",
"phpspec/prophecy": "^1.6.2",
"phpunit/php-code-coverage": "^4.0.3",
"phpunit/php-code-coverage": "^4.0.4",
"phpunit/php-file-iterator": "~1.4",
"phpunit/php-text-template": "~1.2",
"phpunit/php-timer": "^1.0.6",
"phpunit/phpunit-mock-objects": "^3.2",
"sebastian/comparator": "~1.2.2",
"sebastian/comparator": "^1.2.4",
"sebastian/diff": "~1.2",
"sebastian/environment": "^1.3.4 || ^2.0",
"sebastian/exporter": "~2.0",
"sebastian/global-state": "^1.0 || ^2.0",
"sebastian/global-state": "^1.1",
"sebastian/object-enumerator": "~2.0",
"sebastian/resource-operations": "~1.0",
"sebastian/version": "~1.0|~2.0",
"sebastian/version": "~1.0.3|~2.0",
"symfony/yaml": "~2.1|~3.0"
},
"conflict": {
@@ -2039,7 +2045,7 @@
"testing",
"xunit"
],
"time": "2016-12-28T07:18:51+00:00"
"time": "2017-04-03T02:22:27+00:00"
},
{
"name": "phpunit/phpunit-mock-objects",
@@ -2194,23 +2200,23 @@
},
{
"name": "sebastian/code-unit-reverse-lookup",
"version": "1.0.0",
"version": "1.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
"reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe"
"reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
"reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
"url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/4419fcdb5eabb9caa61a27c7a1db532a6b55dd18",
"reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18",
"shasum": ""
},
"require": {
"php": ">=5.6"
"php": "^5.6 || ^7.0"
},
"require-dev": {
"phpunit/phpunit": "~5"
"phpunit/phpunit": "^5.7 || ^6.0"
},
"type": "library",
"extra": {
@@ -2235,20 +2241,20 @@
],
"description": "Looks up which function or method a line of code belongs to",
"homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
"time": "2016-02-13T06:45:14+00:00"
"time": "2017-03-04T06:30:41+00:00"
},
{
"name": "sebastian/comparator",
"version": "1.2.2",
"version": "1.2.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
"reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
"reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
"reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
"url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/2b7424b55f5047b47ac6e5ccb20b2aea4011d9be",
"reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be",
"shasum": ""
},
"require": {
@@ -2299,7 +2305,7 @@
"compare",
"equality"
],
"time": "2016-11-19T09:18:40+00:00"
"time": "2017-01-29T09:50:25+00:00"
},
{
"name": "sebastian/diff",
@@ -2523,16 +2529,16 @@
},
{
"name": "sebastian/object-enumerator",
"version": "2.0.0",
"version": "2.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-enumerator.git",
"reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35"
"reference": "1311872ac850040a79c3c058bea3e22d0f09cbb7"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
"reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
"url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/1311872ac850040a79c3c058bea3e22d0f09cbb7",
"reference": "1311872ac850040a79c3c058bea3e22d0f09cbb7",
"shasum": ""
},
"require": {
@@ -2565,7 +2571,7 @@
],
"description": "Traverses array structures and object graphs to enumerate all referenced objects",
"homepage": "https://github.com/sebastianbergmann/object-enumerator/",
"time": "2016-11-19T07:35:10+00:00"
"time": "2017-02-18T15:18:39+00:00"
},
{
"name": "sebastian/recursion-context",
@@ -2707,21 +2713,21 @@
},
{
"name": "symfony/console",
"version": "v2.8.15",
"version": "v2.8.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "d5643cd095e5e37d31e004bb2606b5dd7e96602f"
"reference": "2cfcbced8e39e2313ed4da8896fc8c59a56c0d7e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/d5643cd095e5e37d31e004bb2606b5dd7e96602f",
"reference": "d5643cd095e5e37d31e004bb2606b5dd7e96602f",
"url": "https://api.github.com/repos/symfony/console/zipball/2cfcbced8e39e2313ed4da8896fc8c59a56c0d7e",
"reference": "2cfcbced8e39e2313ed4da8896fc8c59a56c0d7e",
"shasum": ""
},
"require": {
"php": ">=5.3.9",
"symfony/debug": "~2.7,>=2.7.2|~3.0.0",
"symfony/debug": "^2.7.2|~3.0.0",
"symfony/polyfill-mbstring": "~1.0"
},
"require-dev": {
@@ -2764,7 +2770,7 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
"time": "2016-12-06T11:59:35+00:00"
"time": "2017-04-26T01:38:53+00:00"
},
{
"name": "symfony/debug",
@@ -2825,16 +2831,16 @@
},
{
"name": "symfony/event-dispatcher",
"version": "v3.2.1",
"version": "v3.2.8",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
"reference": "e8f47a327c2f0fd5aa04fa60af2b693006ed7283"
"reference": "b8a401f733b43251e1d088c589368b2a94155e40"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/e8f47a327c2f0fd5aa04fa60af2b693006ed7283",
"reference": "e8f47a327c2f0fd5aa04fa60af2b693006ed7283",
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/b8a401f733b43251e1d088c589368b2a94155e40",
"reference": "b8a401f733b43251e1d088c589368b2a94155e40",
"shasum": ""
},
"require": {
@@ -2881,20 +2887,20 @@
],
"description": "Symfony EventDispatcher Component",
"homepage": "https://symfony.com",
"time": "2016-10-13T06:29:04+00:00"
"time": "2017-05-01T14:58:48+00:00"
},
{
"name": "symfony/filesystem",
"version": "v3.2.1",
"version": "v3.2.8",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
"reference": "8d4cf7561a5b17e5eb7a02b80d0b8f014a3796d4"
"reference": "040651db13cf061827a460cc10f6e36a445c45b4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/filesystem/zipball/8d4cf7561a5b17e5eb7a02b80d0b8f014a3796d4",
"reference": "8d4cf7561a5b17e5eb7a02b80d0b8f014a3796d4",
"url": "https://api.github.com/repos/symfony/filesystem/zipball/040651db13cf061827a460cc10f6e36a445c45b4",
"reference": "040651db13cf061827a460cc10f6e36a445c45b4",
"shasum": ""
},
"require": {
@@ -2930,20 +2936,20 @@
],
"description": "Symfony Filesystem Component",
"homepage": "https://symfony.com",
"time": "2016-11-24T00:46:43+00:00"
"time": "2017-04-12T14:13:17+00:00"
},
{
"name": "symfony/finder",
"version": "v2.8.15",
"version": "v2.8.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
"reference": "c0f10576335743b881ac1ed39d18c0fa66048775"
"reference": "16d55394b31547e4a8494551b85c9b9915545347"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/finder/zipball/c0f10576335743b881ac1ed39d18c0fa66048775",
"reference": "c0f10576335743b881ac1ed39d18c0fa66048775",
"url": "https://api.github.com/repos/symfony/finder/zipball/16d55394b31547e4a8494551b85c9b9915545347",
"reference": "16d55394b31547e4a8494551b85c9b9915545347",
"shasum": ""
},
"require": {
@@ -2979,7 +2985,7 @@
],
"description": "Symfony Finder Component",
"homepage": "https://symfony.com",
"time": "2016-12-13T09:38:12+00:00"
"time": "2017-04-12T14:07:15+00:00"
},
{
"name": "symfony/polyfill-mbstring",
@@ -3042,16 +3048,16 @@
},
{
"name": "symfony/process",
"version": "v3.2.1",
"version": "v3.2.8",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
"reference": "02ea84847aad71be7e32056408bb19f3a616cdd3"
"reference": "999c2cf5061e627e6cd551dc9ebf90dd1d11d9f0"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/process/zipball/02ea84847aad71be7e32056408bb19f3a616cdd3",
"reference": "02ea84847aad71be7e32056408bb19f3a616cdd3",
"url": "https://api.github.com/repos/symfony/process/zipball/999c2cf5061e627e6cd551dc9ebf90dd1d11d9f0",
"reference": "999c2cf5061e627e6cd551dc9ebf90dd1d11d9f0",
"shasum": ""
},
"require": {
@@ -3087,20 +3093,20 @@
],
"description": "Symfony Process Component",
"homepage": "https://symfony.com",
"time": "2016-11-24T10:40:28+00:00"
"time": "2017-04-12T14:13:17+00:00"
},
{
"name": "symfony/stopwatch",
"version": "v3.2.1",
"version": "v3.2.8",
"source": {
"type": "git",
"url": "https://github.com/symfony/stopwatch.git",
"reference": "5b139e1c4290e6c7640ba80d9c9b5e49ef22b841"
"reference": "5a0105afb670dbd38f521105c444de1b8e10cfe3"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/stopwatch/zipball/5b139e1c4290e6c7640ba80d9c9b5e49ef22b841",
"reference": "5b139e1c4290e6c7640ba80d9c9b5e49ef22b841",
"url": "https://api.github.com/repos/symfony/stopwatch/zipball/5a0105afb670dbd38f521105c444de1b8e10cfe3",
"reference": "5a0105afb670dbd38f521105c444de1b8e10cfe3",
"shasum": ""
},
"require": {
@@ -3136,7 +3142,7 @@
],
"description": "Symfony Stopwatch Component",
"homepage": "https://symfony.com",
"time": "2016-06-29T05:43:10+00:00"
"time": "2017-04-12T14:13:17+00:00"
},
{
"name": "webignition/readable-duration",

View File

@@ -2,7 +2,7 @@
## Installation using Phar
This is the preferred installation method for usage on a production system.
This is the preferred installation method for usage on a production system. You can download `acme-client.phar` in the [release section](https://github.com/kelunik/acme-client/releases).
### Requirements

View File

@@ -77,10 +77,26 @@ the script will be quiet to be cron friendly. If an error occurs, the script wil
You should execute `acme-client auto` as a daily cron. It's recommended to setup e-mail notifications for all output of
that script.
```sh
0 0 * * * /usr/local/sbin/acme-client auto; RC=$?; if [ $RC = 4 ] || [ $RC = 5 ]; then /usr/sbin/service nginx reload; fi
Create a new script, e.g. in `/usr/local/bin/acme-renew`. The `PATH` might need to be modified to suit your system.
```bash
#!/usr/bin/env bash
export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
acme-client auto
RC=$?
if [ $RC = 4 ] || [ $RC = 5 ]; then
service nginx reload
fi
```
```sh
# Cron Job Configuration
0 0 * * * /usr/local/bin/acme-renew
```
The path to `acme-client` should be modified to suit your system. The full path should be used as the system path may not be set up in your cron environment.
| Exit Code | Description |
|-----------|-------------|

View File

@@ -89,6 +89,14 @@ class Auto implements Command {
return;
}
if (isset($config["challenge-concurrency"]) && !is_numeric($config["challenge-concurrency"])) {
$this->climate->error("Config file ({$configPath}) defines an invalid 'challenge-concurrency' value.");
yield new CoroutineResult(self::EXIT_CONFIG_ERROR);
return;
}
$concurrency = isset($config["challenge-concurrency"]) ? (int) $config["challenge-concurrency"] : null;
$command = implode(" ", array_map("escapeshellarg", [
PHP_BINARY,
$GLOBALS["argv"][0],
@@ -113,22 +121,16 @@ class Auto implements Command {
return;
}
$certificateChunks = array_chunk($config["certificates"], 10, true);
$errors = [];
$values = [];
foreach ($certificateChunks as $certificateChunk) {
$promises = [];
foreach ($certificateChunk as $certificate) {
$promises[] = \Amp\resolve($this->checkAndIssue($certificate, $config["server"], $config["storage"]));
foreach ($config["certificates"] as $i => $certificate) {
try {
$result = (yield \Amp\resolve($this->checkAndIssue($certificate, $config["server"], $config["storage"], $concurrency)));
$values[$i] = $result;
} catch (\Exception $e) {
$errors[$i] = $e;
}
list($chunkErrors, $chunkValues) = (yield \Amp\any($promises));
$errors += $chunkErrors;
$values += $chunkValues;
}
$status = [
@@ -171,10 +173,11 @@ class Auto implements Command {
* @param array $certificate certificate configuration
* @param string $server server to use for issuance
* @param string $storage storage directory
* @param int|null $concurrency concurrent challenges
* @return \Generator
* @throws AcmeException if something does wrong
*/
private function checkAndIssue(array $certificate, $server, $storage) {
private function checkAndIssue(array $certificate, $server, $storage, $concurrency = null) {
$domainPathMap = $this->toDomainPathMap($certificate["paths"]);
$domains = array_keys($domainPathMap);
$commonName = reset($domains);
@@ -230,6 +233,11 @@ class Auto implements Command {
$args[] = $certificate["bits"];
}
if ($concurrency) {
$args[] = "--challenge-concurrency";
$args[] = $concurrency;
}
$command = implode(" ", array_map("escapeshellarg", $args));
$process = new Process($command);

View File

@@ -82,7 +82,9 @@ class Issue implements Command {
$acme = $this->acmeFactory->build($server, $keyPair);
$errors = [];
$domainChunks = array_chunk($domains, 10, true);
$concurrency = $args->get("challenge-concurrency");
$domainChunks = array_chunk($domains, \min(20, \max($concurrency, 1)), true);
foreach ($domainChunks as $domainChunk) {
$promises = [];
@@ -251,6 +253,12 @@ class Issue implements Command {
"defaultValue" => 2048,
"castTo" => "int",
],
"challenge-concurrency" => [
"longPrefix" => "challenge-concurrency",
"description" => "Number of challenges to be solved concurrently.",
"defaultValue" => 10,
"castTo" => "int",
],
];
}
}