Commit Graph

1426 Commits

Author SHA1 Message Date
Quentin McGaw a4c80b3045 chore(ci): add mocks check
- Check for missing `//go:generate` comments
- Check for outdated mocks
2022-07-04 00:39:01 +00:00
Quentin McGaw dbb71bd695 chore(mocks): use common mocks for ivpn and ipvanish 2022-07-04 00:34:48 +00:00
dependabot[bot] a544f6e604 Chore(deps): Bump github.com/breml/rootcerts from 0.2.3 to 0.2.4 (#1033) 2022-07-03 16:50:38 -07:00
dependabot[bot] a18e026b70 Chore(deps): Bump github.com/stretchr/testify from 1.7.2 to 1.7.5 (#1042) 2022-07-03 16:50:27 -07:00
Quentin McGaw 0413a0a1ab chore(ci): rework docker hub description workflow
- Run only on base repository
- Rename job from `dockerHubDescription` to `docker-hub-description`
- Limit permissions of job to read only
- Remove unneeded names for steps
v3.30.0
2022-07-03 14:31:49 +00:00
Quentin McGaw cb6e9cb761 docs(readme): add links to add a provider 2022-07-03 13:39:47 +00:00
Quentin McGaw 420ae40901 feat(dev): Add provider example package 2022-07-02 21:04:57 +00:00
Quentin McGaw 34e67f9f99 chore(markdown): alphabetically sorted headers 2022-07-02 20:58:43 +00:00
Quentin McGaw 18c53aa597 docs(readme): simplify heading description 2022-07-02 20:58:43 +00:00
Quentin McGaw 6d2f9b9508 chore(updater): check servers have minimal information 2022-07-02 20:58:43 +00:00
Quentin McGaw 6826b05d58 chore(all): remove all package comments 2022-07-02 20:58:43 +00:00
barino28 9f959dbc6a fix(expressvpn): OpenVPN fragment option and add ciphers (#1047)
* Fragment was defined in `OpenVPNProviderSettings` but was not written to the OpenVPN configuration file.
* Added two additional ciphers to the configuration for ExpressVPN

Authored-by: barino86 <barino@mac.com>
2022-06-29 05:23:16 -07:00
Quentin McGaw 87dbae5745 hotfix(fastestvpn): re-fix Openvpn configuration
- add `auth sha256` option
- remove `remote-cert-tls server` option
2022-06-26 21:29:05 +00:00
Quentin McGaw 037f19e852 hotfix(publicip): revert back JSON to public_ip 2022-06-26 18:08:11 +00:00
Quentin McGaw 62ad8bcd8f fix(pia): set port forward file owned with PUID and PGID 2022-06-25 15:44:29 +00:00
Quentin McGaw 2805c3388a hotfix(fastestvpn): add remote-cert-tls server 2022-06-25 15:16:38 +00:00
Quentin McGaw 535297dcf5 chore: extract.PEM replaces PEM parse functions 2022-06-24 23:10:00 +00:00
Quentin McGaw b3b6933ef4 chore(lint): review exclude rules 2022-06-20 13:36:24 +00:00
Quentin McGaw edbbcc041a fix(protonvpn): set free field for free servers 2022-06-18 18:30:27 +00:00
Quentin McGaw d430ebc34f feat(protonvpn): update servers data 2022-06-18 18:30:05 +00:00
Quentin McGaw 0e9abc6e1d chore(tests): modify JSON tests to not need all providers listed 2022-06-18 15:08:59 +00:00
Quentin McGaw 0c0dd10766 chore(dev): add VSCode launch.json
- Credits to @Rohaq
2022-06-18 00:17:09 +00:00
Quentin McGaw 75454be6b6 fix(pprof): override operation in global settings 2022-06-18 00:16:14 +00:00
Quentin McGaw 4952e3b74e docs(bug): fix render of logs to be plain text 2022-06-18 00:15:29 +00:00
Quentin McGaw 04b34a266c chore(deps): update go4.org/unsafe/assume-no-moving-gc
- Allow development on Go 1.18 without `ASSUME_NO_MOVING_GC_UNSAFE_RISK_IT_WITH=go1.18`
2022-06-17 23:59:39 +00:00
Quentin McGaw 89b6a031b0 chore(vpn): add check for empty public key for Wireguard 2022-06-12 15:59:48 +00:00
Quentin McGaw d4c6a9bdb5 feat(storage): log time difference as a friendly duration 2022-06-12 15:35:04 +00:00
Quentin McGaw cdc29d48b7 chore(ci): build PR images as pr-N (#1026)
- Remove event validity check (unneeded and was buggy)
- Remove `branch` metadata trigger since it conflicts with the PR trigger
2022-06-12 08:33:16 -07:00
dependabot[bot] f4b464a7cf Chore(deps): Bump github.com/stretchr/testify from 1.7.1 to 1.7.2 (#1016) 2022-06-12 08:31:53 -07:00
dependabot[bot] 76690d3add Chore(deps): Bump crazy-max/ghaction-github-labeler from 3 to 4 (#1007) 2022-06-12 07:07:25 -07:00
Quentin McGaw 9898387579 feat(updater): Configurable min ratio
- `UPDATER_MIN_RATIO` variable
- `-minratio` flag for CLI operation
2022-06-12 14:03:00 +00:00
Quentin McGaw 1ea15a1a13 chore(protonvpn): document to remove SERVER_NAMES 2022-06-12 01:58:46 +00:00
Quentin McGaw bda6707685 chore(all): remove unexported interfaces 2022-06-12 01:15:14 +00:00
Quentin McGaw 89277828ac chore(publicip): internal/publicip/ipinfo package 2022-06-12 01:11:22 +00:00
Quentin McGaw 83b4a3fe55 chore(publicip): refactoring
- Exported `Fetcher` interface
- Inject `Fetcher` to publicip loop and updaters
- Get public IP and information at the same time
- Only query ipinfo.io
- Make `MultiInfo` part of the `Fetch` object
2022-06-12 00:46:08 +00:00
Quentin McGaw 45c9e780c0 chore(updater): rename presolver to parallelResolver 2022-06-11 20:12:35 +00:00
Quentin McGaw 33b8f5f596 chore(settings): updater DNS address as string 2022-06-11 20:11:20 +00:00
Quentin McGaw 447a7c9891 updater: refactoring and set DNS server correctly
- Fix CLI operation not setting DNS server
- Fix periodic operation not setting DNS server
- Set DNS address for resolution once at start for both CLI and periodic operation
- Inject resolver to each provider instead of creating it within
- Use resolver settings on every call to `.Resolve` method, instead of passing it to constructor
- Move out minServers check from resolver
2022-06-11 19:47:46 +00:00
Quentin McGaw 1bd355ab96 chore(lint): add ireturn linter 2022-06-11 01:34:45 +00:00
Quentin McGaw 578ef768ab chore(all): return concrete types, accept interfaces
- Remove exported interfaces unused locally
- Define interfaces to accept arguments
- Return concrete types, not interfaces
2022-06-11 01:34:30 +00:00
Quentin McGaw 0378fe4a7b chore(all): Providers containing all provider objects
- Share the same providers for updater and vpn
- Initialise all providers at start
- Get from `Providers` instead of constructing on every run
2022-06-10 00:47:56 +00:00
Quentin McGaw ebd94723c1 chore(updater): incorporate FetchServers method in Provider interface
- Each provider interface can now fetch updated servers data
- Rename each provider updater subpackage name to `updater`
- Updater constructor does not take a settings struct
- Updater update method takes in a slice of provider strings
2022-06-09 23:47:41 +00:00
Quentin McGaw 11b55abff3 fix(protonvpn): remove duplicate entry IPs 2022-06-09 22:11:40 +00:00
Quentin McGaw 7f32b43895 fix(pia): load custom PIA certificate for API 2022-06-09 17:11:24 +00:00
Quentin McGaw 899f10c35e chore(resolver): export structs instead of interfaces 2022-06-09 17:11:24 +00:00
Quentin McGaw 415cb7a945 chore(updater): create resolver in provider updater
- Pass min servers to resolve call
- Set settings when constructing resolver
- Construct resolver in each provider updater
- No more common resolver for all providers
2022-06-09 17:11:24 +00:00
Quentin McGaw e37f557cd5 chore(provider): add Name() method per provider 2022-06-09 17:11:24 +00:00
Quentin McGaw 79f213d97a chore(updater): rename GetServers to FetchServers 2022-06-09 17:11:24 +00:00
Quentin McGaw 11e1c9f9bb feat(protonvpn): update hardcoded servers data 2022-06-09 16:41:04 +00:00
Quentin McGaw 3ff3816d77 fix(pia): restrict custom port choice 2022-06-09 16:36:59 +00:00