arpa2 / tlspool

TLS daemon with PKCS #11 backend
Other
6 stars 7 forks source link

From testdata to pypeline tests #123

Open vanrein opened 5 years ago

vanrein commented 5 years ago

Current setups are made with testdata (also in the Docker Demo) and tests may be run against a live TLS Pool setup like that.

With pypeline in place, we might run the entire TLS Pool, with prior setup for databases and SoftHSM, from scratch for any single test. This takes a fair bit of work/changes.

Pypelining the Entire Thing:

New Requirements for Pypeline:

Key gen in testdata:

vanrein commented 5 years ago

Then, use the same mechanism to add contrib scripts for use with the TLS Pool to other programs, like KXOVER or KIP. Given a basic (empty) TLS Pool these should find it easy to setup credentials, even if it may be ignorant of real-life extensions such as ACME or DANE.

vanrein commented 5 years ago

We should use a management file, perhaps in JSON, to administer data outside of the TLS Pool, strictly for managing the process flow. The following groups of commands would be useful.

As an implementation platform, Python is highly portable, and highly pluggable. We might use a arpa2cmd to form an interactive shell, possibly with command completion and at the very least syntax hints and decent builtin help.

Key Management

Certificate Requests

ACME Processing

Use an external tool. There are plenty!

The arpa2dns shell can handle the DNS portion, if so required.

DANE Processing

Use an external tool. There are not enough!

The arpa2dns shell can handle the DNS portion, including timing feedback.

Certificates