Skip to content

Commit

Permalink
Merge pull request #5 from tianon/deprecated
Browse files Browse the repository at this point in the history
Deprecate this tool/repository
  • Loading branch information
yosifkit authored Feb 25, 2022
2 parents 5fbde2b + 2d3c19e commit c66b1e9
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 6 deletions.
18 changes: 13 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
# DEPRECATED

See [#4](https://github.com/tianon/pgp-happy-eyeballs/issues/4) for some discussion around why this tool is no longer actively maintained (nor recommended for use).

The TL;DR is that the SKS network is mostly too decentralized now to track well with a naive approach like that of this tool.

# PGP "Happy Eyeballs"

PGP keyservers are flaky:
Expand All @@ -12,15 +18,17 @@ PGP keyservers are flaky:
- https://github.com/docker-library/wordpress/pull/291
- https://github.com/docker-library/postgres/pull/471#issuecomment-407902513

This tool is intended to sit in front of clients to keyservers (most easily via DNS or transparent traffic hijacking) and "multiplex" requests across several servers simultaneously, returning the fastest successful result.
This tool was intended to sit in front of clients to keyservers (most easily via DNS or transparent traffic hijacking) and "multiplex" requests across several servers simultaneously, returning the fastest successful result.

**Note:** if you're looking at this tool, you should seriously consider using [the `hkps://keys.openpgp.org` server](https://keys.openpgp.org/about) / ["Hagrid"](https://gitlab.com/hagrid-keyserver/hagrid) instead! (It's a refreshingly modern take on OpenPGP infrastructure in general.)

**Note:** if you're looking at this tool, you should seriously consider using [keys.openpgp.org](https://keys.openpgp.org/about) / ["Hagrid"](https://gitlab.com/hagrid-keyserver/hagrid) instead! (It's a refreshingly modern take on OpenPGP infrastructure in general.)
Barring that, I would recommend sticking with a single stable server like `hkps://keyserver.ubuntu.com`.

## How to Use

The easiest/intended way to use this (and the way Tianon uses it) is to hijack your personal DNS requests and redirect relevant domains to a running instance of it. The hard part of that is doing so in a way that also affects any Docker instances and works in a way that other Docker instances can hit the running instance of `pgp-happy-eyeballs` successfully.
The easiest/intended way to use this (and the way Tianon used it) is to hijack your personal DNS requests and redirect relevant domains to a running instance of it. The hard part of that is doing so in a way that also affects any Docker instances and works in a way that other Docker instances can hit the running instance of `pgp-happy-eyeballs` successfully.

See [rawdns](https://github.com/tianon/rawdns) for the tool Tianon uses to do; example configuration snippet:
See [rawdns](https://github.com/tianon/rawdns) for the tool Tianon uses; example configuration snippet:

```json
...
Expand All @@ -36,7 +44,7 @@ See [rawdns](https://github.com/tianon/rawdns) for the tool Tianon uses to do; e
...
```

See also [the `hack-my-builds.sh` script](hack-my-builds.sh) which is intended for use in disposable CI environments such as those provided by Travis CI (see [docker-library/php#666](https://github.com/docker-library/php/pull/666) and the linked PRs for implementation examples).
See also [the `hack-my-builds.sh` script](hack-my-builds.sh) which was intended for use in disposable CI environments such as those provided by Travis CI (see [docker-library/php#666](https://github.com/docker-library/php/pull/666) and the linked PRs for implementation examples).

## Known Issues

Expand Down
3 changes: 2 additions & 1 deletion hack-my-builds.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@
set -Eeuo pipefail

echo >&2
echo >&2 'WARNING: this script modifies /etc/docker/daemon.json; use at your own peril'
echo >&2 'WARNING: this entire tool is deprecated! Please adjust your usage accordingly.'
echo >&2
sleep 2

# uses https://github.com/tianon/rawdns to install pgp-happy-eyeballs in a way that can be used for "curl|bash" in cloud-based CI builds for transparently happy eyeballs

Expand Down

0 comments on commit c66b1e9

Please sign in to comment.