Commit Graph

21 Commits

Author SHA1 Message Date
Aaron Gable 6ae6aa8e90
Dynamically generate grpc-creds at integration test startup (#7477)
The summary here is:
- Move test/cert-ceremonies to test/certs
- Move .hierarchy (generated by the above) to test/certs/webpki
- Remove our mapping of .hierarchy to /hierarchy inside docker
- Move test/grpc-creds to test/certs/ipki
- Unify the generation of both test/certs/webpki and test/certs/ipki
into a single script at test/certs/generate.sh
- Make that script the entrypoint of a new docker compose service
- Have t.sh and tn.sh invoke that service to ensure keys and certs are
created before tests run

No production changes are necessary, the config changes here are just
for testing purposes.

Part of https://github.com/letsencrypt/boulder/issues/7476
2024-05-15 11:31:23 -04:00
Samantha 511f5b79f1
test: Add ProxySQL to our Docker development stack (#6754)
Add an upstream ProxySQL container to our docker-compose. Configure
ProxySQL to manage database connections for our unit and integration
tests.

Fixes #5873
2023-03-29 18:41:24 -04:00
Jacob Hoffman-Andrews ba0ea090b2
integration: save hierarchy across runs (#5729)
This allows repeated runs using the same hiearchy, and avoids spurious
errors from ocsp-updater saying "This CA doesn't have an issuer cert
with ID XXX"

Fixes #5721
2021-10-20 17:06:33 -07:00
Roland Bracewell Shoemaker 6fe950bc0c
Add PKCS#11 certificate generation tool (#3729)
Tested against relevant hardware for generating both RSA and ECDSA roots and intermediates with keys generated using `gen-key`.

Also this makes a few changes to the `gen-key` tool after further experience with the HSM and more reading of the PCKS#11 specification. Main change is the removal of `compatMode`, which was intended to provide support for two naming schemes for EC used in subsequent PKCS#11 drafts. It turns out these schemes were changes in name only and the underlying structs/ints were the exact same (i.e. `CKA_ECDSA_PARAMS == CKA_EC_PARAMS` and `CKM_ECDSA_KEY_PAIR_GEN == CKM_EC_KEY_PAIR_GEN`) and just allowed using one of the two names based on preference. This meant with `compatMode` enabled or disabled the tool did the exact same thing.

Fixes #3697.
2018-06-12 12:13:09 -07:00
Daniel McCarney 5f8cae847b gitignore: ignore .gocache folder (#3677) 2018-04-30 10:17:02 -07:00
Brian Smith c0b0163a06 Add “.idea” to .gitignore. (#2655)
The JetBrains Gogland IDE stores its stuff in .idea.
2017-04-06 11:15:32 -07:00
Jacob Hoffman-Andrews c00e4cb545 Remove test.js. (#2549)
It's been replaced with chisel.py, which uses the Python acme module.

Add instructions on installing dependencies for integration test.
2017-02-06 15:23:58 -08:00
Jacob Hoffman-Andrews d98eb634d1 Docker improvements.
Use bridged networking.

Add some files to .dockerignore to shrink the build state sent to Docker
daemon.

Use specific hostnames to contact services, rather than localhost.

Add instructions for adding those hostnames to /etc/hosts in non-Docker config.

Use DSN-style connect strings for DBs.

Remove localhost / 127.0.0.1 rewrite hack from create_db.sh.

Add hosts section with new hostnames.

Remove bin from .dockerignore.

SQL grants go to %

Short-circuit DB creation if already existing.

Make `go install` a part of Docker image build so that Docker run is much
faster.

Bind to 0.0.0.0 for OCSP responders so they can be reached from host, and
publish / expose their ports.

Remove ToSServerThread and test.js' fetch of ToS.

Increase the registrationsPerIP rate limit threshold. When issuing from a Docker
host, the 127.0.0.1 override doesn't apply, so the limit is quickly hit.

Update docker-compose for bridged networking. Note: docker-compose doesn't currently work, but should be close.

https://github.com/letsencrypt/boulder/pull/1639
2016-04-04 16:05:08 -07:00
Jacob Hoffman-Andrews f67648d22f Disable activity-monitor.
We no longer run this in prod, so we shouldn't run it in test / dev.
2016-01-05 14:50:25 -08:00
Tom Clegg de5cce8c03 De-duplicate start.py and test/amqp-integration-test.py 2015-07-25 04:04:20 -04: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
J.C. Jones f15da06af7 Issue #238 - MySql column width too narrow
- Added SQL debug logging (SA option: "SQLDebug")
- Added timestamps to the log prints to stdout
- Ignore *.pem in test/js
- Modified start.sh to support environment overrides for BOULDER_CONFIG, like the AMQP mode
- Changed boulder-test-config to open the server on the loopback device, so as to not cause firewall prompts on each integration test run for those of us being restrictive
- Renamed "key" column to "jwk" in DB, to avoid keyword conflict
- Set MaxLength on "jwk" column to 512
2015-05-27 12:12:41 -07:00
Richard Barnes c3b312118e Add audit logging
- Auditing for general errors in executables
- Auditing for improper messages received by WFE
- Automatic audit wlogging of software errors
- Audit logging for mis-routed messages
- Audit logging for certificate requests
- Auditing for improper messages received by WFE
- Add audit events table
- Expect more details in TestRegistration in web-front-end_test.go
- Remove "extra" debug details from web-front-end.go per Issue #174
- Improve test coverage of web-front-end.go
- WFE audit updates for revocation support rebase
- Add audit messages to RPC for Improper Messages and Error Conditions
- Also note misrouted messages
2015-05-18 18:23:08 -07:00
J.C. Jones ed32332204 First pass at build speedups. Feel free to use `make -j9` on your desktops! 2015-05-14 11:37:23 -07:00
Jacob Hoffman-Andrews 0435e0feb6 Merge branch 'master' into vendorize
Conflicts:
	analysis/analysis-engine.go
	analysis/analysis-engine_test.go
	cmd/activity-monitor/main.go
	cmd/boulder-start/main.go
2015-03-25 15:18:20 -07:00
Jacob Hoffman-Andrews ddc0d7dcf5 Vendorize all dependencies with `nut`.
Nut, https://github.com/jingweno/nut, is a tool to manage Go dependencies and
versioning by vendorizing them, i.e. including them in your own repo.

This makes version management easier, as well as authenticating the contents of
this repository.

Also inthis change: Factor out the testing commands from .travis.yml to make it
easier to run them by hand. Add Vim swap files to .gitignore.
2015-03-25 15:11:40 -07:00
J.C. Jones 6a98f2dd0b Fix comments on PR #48. 2015-03-23 13:04:00 -07:00
Richard Barnes 95bbaecb59 Add vim temp files to .gitignore 2015-03-21 18:26:26 -05:00
J.C. Jones aca80d476b Add coverage figures.
- Added Gover to the list so that we can use subpackages (like analysisengine)
2015-02-19 11:42:28 -07:00
J.C. Jones 3387a77179 Create proof of concept Activity Monitor
- Forgot to bind all queues to the exchange in previous commit.
- Added basic AM standalone program
- TCP/IP JSON-formatted system logger appropriate for transmitting to LogStash
2015-02-17 16:45:43 -07:00
Josh Aas b45b86ddcc Initial commit 2014-12-20 18:29:54 -06:00