Commit Graph

31 Commits

Author SHA1 Message Date
Roland Shoemaker 9287d7ecd8 Check a CT submission happens during integration tests 2015-09-28 16:17:41 -07:00
Jeff Hodges dbb3f4d999 Merge branch 'master' into static-responder 2015-09-24 10:13:05 -07:00
Jacob Hoffman-Andrews bc0d98a820 Fix amqp-integration-test.py when run alone.
Previously, test.sh was responsible for running venv/bin/activate, meaning that
`python test/amqp-integration-test.py` would fail to run the letsencrypt client.
Now, so long as LETSENCRYPT_PATH is already set to a valid dir (e.g. in your
.bashrc), `python test/amqp-integration-test.py` should work.
2015-09-23 17:06:14 -07:00
Jacob Hoffman-Andrews 540c792474 Add an OCSP responder that serves from a file.
This is useful for intermediate and root OCSP, which are generated manually one
a year.
2015-09-23 16:34:13 -07:00
Jacob Hoffman-Andrews 18e25ff67a Remove SERVER env var in integration test.
Per @Kuba, this is no longer needed for the letsencrypt client.
2015-09-09 16:54:13 -04:00
Jacob Hoffman-Andrews 9b9dd76f54 Fix flaky OCSP.
If two OCSP responses were generated in the same second, the earlier would
previously take priority sometimes, leading to a "good" response for revoked
certificates and causing the OCSP integration test to be flaky.
2015-08-24 15:31:26 -07:00
Jacob Hoffman-Andrews f6c21120b0 Add OCSP testing to integration test. 2015-08-20 09:37:24 -07:00
Jacob Hoffman-Andrews a4c4b473f1 Speed up start.py and integration test.
Run builds in parallell as well as starting servers in parallel.
Wait for the servers to come up, so tests don't start running too early.
Enable race detection only for the integration test, not for start.py.
Previously I'd suggested it should always be on, but after running with it for a
while I'm convinced it's too slow for start.py (but still very valuable for
integration tests!).
2015-07-28 18:07:22 -07:00
Tom Clegg 43c738cc93 Set GORACE env var only in "go build", not everywhere. 2015-07-25 14:51:22 -04:00
Tom Clegg de5cce8c03 De-duplicate start.py and test/amqp-integration-test.py 2015-07-25 04:04:20 -04:00
Jeff Hodges cfcd6dfc88 remove pkcs11 tag for build and test scripts
With #525 in place, we no longer need to worry about setting the pkcs11
tag everywhere.
2015-07-24 16:33:05 -07:00
Roland Shoemaker b569e6aa3d Review fixes 2015-07-20 11:27:40 -07:00
Roland Shoemaker 77ee133c0e Add tiny DNS server for client integration tests! 2015-07-17 21:53:30 -07:00
Jeff Hodges 24217f1cba run tests in CI with the race detector on
The race detector has found at least one race in our current code. See
issue #465. Turn it on for the unit and integration tests running in
TravisCI.

Also, allow the local user to add new test flags with the `GOTESTFLAGS`
environment variable.

To ease speed of debugging issues, the ability to skip the unit or
integration tests is also provided.
2015-07-16 09:43:11 -07:00
Jeff Hodges c110468366 harden test.sh and amqp-integration-test.py
amqp-integration-test.py gains a way to print out what processes
failed to start.

test.sh gains:

  * the ability to continue the build correctly if
LETSENCRYPT_PATH was provided but does not exist on disk.
  * an explanatory exit message if the LETSENCRYPT_PATH does
exist, but there is not finished build in it.
  * a working detection for a python 2.7 binary on OS X
2015-07-13 17:02:25 -07:00
J.C. Jones 4d3731ba73 Issue #419 - Provide more details from Travis on PRs.
This uses a node.js module to post `status` updates to Github, and uses a Travis
secret to authenticate.

- Post comments from static analysis tools
- Change to posting from LetsEncryptBot
- For integration testing, only fail if the compile fails, or
  the NodeJS-client fails. Log if the Python client fails.
2015-06-30 15:32:50 -07:00
Jakub Warmuz 596010968e
Pass SERVER to letsencrypt integration test, fix review comments. 2015-06-26 07:23:22 +00:00
Jakub Warmuz f8b3750c02
Run letsencrypt/tests/boulder-integration.sh from integration tests. 2015-06-26 06:32:10 +00:00
Jakub Warmuz 9e892b0773
integration tests: sync letsencrypt flags (config-dir/work-dir/logs-dir). 2015-06-26 05:36:15 +00:00
J.C. Jones ecf3cec9f6 Update execution of the integration test to match new parameters. 2015-06-25 15:05:51 -07:00
Jacob Hoffman-Andrews ee4626aa0d Integration test runs without root. 2015-06-19 14:12:23 -07:00
William Budington 76d76d33cd Adding integration tests.
Travis:
  * Downloads the Let's Encrypt client
  * Installs system requirements for client
  * Sets up virtualenv

Dockerfile:
  * Buildout for development
  * Includes numerous pacakges needed for integration testing
    (including all of the above in Travis)

test.sh:
  * If no path is defined for the LE client
    * Download the Let's Encrypt client
    * Set up virtualenv

test/amqp-integration-test.py:
  * Run client test with sensible defaults
  * One test: auth for foo.com
2015-06-19 12:18:23 -07:00
Jacob Hoffman-Andrews 2b2f4110d4 Revoke path should not end in slash. 2015-06-12 13:26:43 -07:00
Roland Shoemaker 28db5aab45 Merge master 2015-06-06 02:47:55 +01:00
Roland Shoemaker 23b0cfa29f Extend email parsing 2015-06-06 02:46:51 +01:00
Jacob Hoffman-Andrews 625eab5ad3 Move boulder to using local signer.
This allows us to use the same PKCS#11 key for both cert signing and OCSP
signing, and simplifies config and startup.

This also starts building with -tags pkcs11 in all scripts, which is required
now that the CA can choose between pkcs11 and non-pkcs11.

In order to successfully issue using a pkcs11 key, you'll need to run a version
of Go built off the master branch. The released versions are missing this
commit:
fe40cdd756,
which is necessary for PKCS#11 signing.
2015-06-05 08:13:39 -07:00
Jacob Hoffman-Andrews 1110666226 AMQP integration test improvements.
Clean up tempfiles on exit.
Print exceptions instead of hiding them.
Exit early if a build fails, and clean up processes that are running at the time.
Update README to reflect RabbitMQ requirement.
2015-06-02 13:39:05 -07:00
Jacob Hoffman-Andrews 38ef231c10 Make integration test fail correctly.
If a build command fails, try running the command, so shutdown can happen
normally and error can be handled there.
2015-06-02 12:02:14 -07:00
Roland Shoemaker e03a6b50d8 add 'npm install' 2015-06-02 12:02:05 -07:00
Roland Shoemaker be7943d432 quick cleanup 2015-06-02 12:02:05 -07:00
Roland Shoemaker af3abc97f6 add amqp-integration-test.py and use it in test.sh, also tell travis to give us RabbitMQ 2015-06-02 12:02:05 -07:00