Commit graph

1418 commits

Author SHA1 Message Date
Sander Bruens
31a3fd48be
clean: add missing license headers and add a CI check (#1572) 2024-08-12 10:56:11 -04:00
Sander Bruens
e281ec3068
clean(devtools/build): remove unused jsign files (#1569) 2024-07-30 09:52:30 -04:00
cornzzy
ee039ca596
fix(server): block access when traffic limit is set to 0 bytes
* Fix isOverDataLimit logic to stop allowing 0 traffic byte

issue #1515 

This if statement is just wrong and doesn't block access when traffic limit is set to 0 byte. This one character fixes it.

Now if we create a new access key, set the limit to 0 before first usage, the client no longer will be able to connect.

* Rename `isOverDataLimit` to `reachedDataLimit`.

* Add a test case to prevent regression.

* Rename old variable.

* Update comment now that variable has changed meaning slightly.

Co-authored-by: Vinicius Fortuna <fortuna@users.noreply.github.com>

---------

Co-authored-by: sbruens <sbruens@users.noreply.github.com>
Co-authored-by: Vinicius Fortuna <fortuna@users.noreply.github.com>
2024-07-24 15:21:29 -04:00
Sander Bruens
b5dbe650f5
test(server): remove custom util container (#1568) 2024-07-23 14:33:14 -04:00
Sander Bruens
69f8e02daf
chore: add lint rule to prevent unnecessary public modifiers (#1557) 2024-07-23 14:28:57 -04:00
Sander Bruens
00f345ad98
ci(server): run CI job daily so we catch issues with runner changes (#1567)
* ci(server): run CI job daily so we catch issues with runner changes

* Format.
2024-07-23 14:28:42 -04:00
Sander Bruens
b16fc38649
docs: update link to Taskfile (#1565) 2024-07-23 14:28:31 -04:00
Sander Bruens
6001281f43
test(server): fix integration test by downgrading to Alpine 3.18 (#1566)
* Debug docker on runner.

* Revert "Debug docker on runner."

This reverts commit bb44ceb6c3.

* Pin to alpine3.18.

* Add comment to Dockerfile.
2024-07-23 14:13:14 -04:00
Sander Bruens
9a3498112d
refactor(server): remove unneeded access key metrics ID (#1548)
* refactor(server): remove unneeded access key metrics ID

* One more.

* Remove unused imports.
2024-05-16 10:14:34 -04:00
Sander Bruens
99b1a0e39e
docs(metrics_server): add note about promoting the prod version (#1547) 2024-05-14 13:09:54 -04:00
Sander Bruens
3e9bb9af1f
feat(metrics_server): add support for ASN (#1542)
* feat(metrics_server): add support for ASN

* Change from array to number.

* Add more debug logs for invalid returns.
2024-04-26 20:08:49 -04:00
Sander Bruens
01ca585bf1
feat(metrics_server): do not invalidate legacy report types (#1532)
* Check if `countries` is an array.

* Use `VALID_REPORT` in `postConnectionMetrics` test.

* Make realistic legacy reports and silently drop them during validation.

* Add more explicit support for legacy report types.

* Make diff smaller.

* Update `@typescript-eslint/eslint-plugin` dependency.

* Revert some changes.

* Revert "Update `@typescript-eslint/eslint-plugin` dependency."

This reverts commit a2f3edff09.

* Update test variables to improve readability.

* Add back in `userId` tests.

* Remove check that at least 1 of `userId` or `countries` is set.

* Remove unneeded test.
2024-04-19 15:30:04 -04:00
Vinicius Fortuna
cffcf65433
Remove Makefile (#1540) 2024-04-19 10:50:43 -06:00
Vinicius Fortuna
9bb9729279
Fix on macOS (#1539) 2024-04-18 16:49:55 -04:00
Vinicius Fortuna
6556d7e595
build: use Task (#1535) 2024-04-17 19:48:23 -04:00
Sander Bruens
be0d3b3838
fix(server): handle PasswordConflict explicitly to avoid a 500 (#1536) 2024-04-17 17:55:08 -04:00
Sander Bruens
5bd4647414
chore(devtools): update @typescript-eslint/eslint-plugin dependency (#1534) 2024-04-15 17:13:50 -04:00
Sander Bruens
c4dec30e9b
chore(devtools): remove reference to old directories (#1533) 2024-04-10 11:13:48 -04:00
Sander Bruens
d0d9077a9a
feat(metrics_server): drop the userId (#1528)
* feat(metrics_server): add support for tunnel time

* Add tests.

* Update `nodejs` runtime to 18.

* Update integration test.

* Use seconds instead of ms.

* Inline the minimun tunnel time and remove the unnecessary comment.

* Add field types to test case names.

* Make tunnel time optional.

* Add TODO to drop `userId`.

* Undo use of gdate.

* feat(metrics_server): drop the `userId`

* Update README.

* Fix bad merge.

* Fix bad merge on test.

* Revert change of country.

* Add types for the valid reports.

* Remove unrealistic test case with empty country list.
2024-04-04 13:04:28 -04:00
Sander Bruens
571be90bbf
feat(metrics_server): add support for tunnel time (#1527)
* feat(metrics_server): add support for tunnel time

* Add tests.

* Update `nodejs` runtime to 18.

* Update integration test.

* Use seconds instead of ms.

* Inline the minimun tunnel time and remove the unnecessary comment.

* Add field types to test case names.

* Make tunnel time optional.

* Add TODO to drop `userId`.

* Undo use of gdate.

* Make the test reports more realistic with 1 country.
2024-04-04 12:19:23 -04:00
Sander Bruens
a072cc43e1
feat(server): stop sharing key usage with metrics server (#1529)
* feat(server): stop sharing key usage with metrics server

* Update comment to reflect history.
2024-04-04 12:07:20 -04:00
Danyal
be02db89f1
chore: update api.yml (#1525) 2024-03-29 09:26:51 -06:00
Sander Bruens
2901a256f4
feat(server): add an experimental opt-in API to enable ASN metrics (#1523)
* Update `update_mmdb.sh` script to download ASN database.

* Provide the `ASN` db file to `outline-ss-server`.

* Add an API to opt-in to the ASN metrics.

* Remove unused import.

* Add the ASN setting to the persisted server config.

* Continue trying to find other database if 1 of them fails.

* Resolve lint warning

* Use `outline-ss-server` v1.5.0.
2024-03-29 09:50:33 -04:00
Sander Bruens
37d3f33faf
chore(docs): update README to reflect manager move (#1519)
* chore(docs): simplify and update `README` to reflect manager move

* Add pointer to shadowbox README.

* Cleanup the Shadowbox `README`

* Move around the Shadowbox instructions to make Node.js and Docker equal options for running the Shadowbox.

* Address review comments.

* Revert intro sentence to what was there before.

* Address review comments.
2024-03-12 15:09:01 -04:00
Sander Bruens
78f0934f4a
chore(sentry_webhook): update UAT record ID (#1513) 2024-02-22 13:24:55 -05:00
Daniel LaCosse
cd5f91742d
chore: delete manager and update server_manager/README.md (#1511)
* delete manager and update readme

* remove scopes from commitlint

* update jobs

* Update src/server_manager/README.md

Co-authored-by: Vinicius Fortuna <fortuna@users.noreply.github.com>

* Update README.md

* npx karma

* install puppeteer

* webpack, too? jeez.

* finally

---------

Co-authored-by: Vinicius Fortuna <fortuna@users.noreply.github.com>
2024-02-22 13:16:40 -05:00
Sander Bruens
ea81c998a7
feat(sentry_webhook): update Salesforce record IDs for new contact form (#1510)
* chore(sentry_webhook): update Salesforce record IDs for new contact form

* Add new `accessKeySource` and `build`.

* Add new fields `subject` and `isUpdatedForm`.

* Change `type` field to new `role` field.

* Normalize `cloudProvider` value based on allowed picklist values.

* Update tests.
2024-02-22 10:45:29 -05:00
Daniel LaCosse
e2486ba9b2
chore: update reference to install script (#1512) 2024-02-21 17:11:41 -05:00
Sander Bruens
a62b25b54c
test(server): add new PUT API to the integration test (#1504) 2024-02-15 12:24:55 -05:00
Daniel LaCosse
06646f791b
adds hardened runtime and notarization options (#1508) 2024-02-13 12:09:37 -05:00
Danil Shaymurzin ⚡️
ceca3d617c
fix(server): the provided password must use unique value (#1506) 2024-02-12 14:05:07 -06:00
Danil Shaymurzin ⚡️
9779f5dc5f
fix(server): api specification #1499 (#1503) 2024-02-12 09:52:13 -05:00
Sander Bruens
88cee12ec4
feat(server): extend key creation API to allow specifying a port (#1505)
* feat(server): extend key creation API to allow specifying a port

* Use `validateNumberParam` in `setPortForNewAccessKey`.

* Only check if the port is valid if it was specified.

* Undo the removal of use of `Promise.all(...)`.

* Fix tests.

* Only run validation if parameters are provided.

* Correct types for API validation methods where `undefined` is a possible return type.
2024-02-07 10:35:26 -05:00
Daniel LaCosse
0fba65e86e
build(manager): detect platform before shifting the arg array in package action (#1500)
* fix(manager): detect platform before shifting the arg array in the package action

* Update package.action.sh

* Update src/server_manager/electron_app/package.action.sh

Co-authored-by: Vinicius Fortuna <fortuna@users.noreply.github.com>

* Update src/server_manager/electron_app/package.action.sh

Co-authored-by: Vinicius Fortuna <fortuna@users.noreply.github.com>

---------

Co-authored-by: Vinicius Fortuna <fortuna@users.noreply.github.com>
2024-02-06 13:00:12 -05:00
Vinicius Fortuna
64c4f94534
chore(manager): deprecate SB_DEFAULT_SERVER_NAME on install (#1498) 2024-02-05 09:07:32 -06:00
Vinicius Fortuna
28d2b2e391
chore(manager): cleanup and fix Manager build (#1497) 2024-02-02 16:50:19 -06:00
Danil Shaymurzin ⚡️
882573eecd
fix(manager): use typeof function instead of directly comparison (#1481) 2024-02-02 11:05:52 -06:00
Vinicius Fortuna
3273e7c595
feat(server): enable log rotation and start script (#1494) 2024-02-02 11:04:55 -06:00
Daniel LaCosse
950614c08e
chore(manager/macos): upgrade electron-builder to use the new notarytool (#1496) 2024-02-01 21:00:30 -05:00
Daniel LaCosse
639e1e2cde
fix(manager): adjust app container on narrow devices to make room for sidebar (#1495)
* i feel disguisting lol

* app container is better
2024-02-01 20:57:41 -05:00
Vinicius Fortuna
5272b3467e
chore(server): inject version at build time (#1491) 2024-01-31 17:55:30 -05:00
Daniel LaCosse
4d1c4cad3e
fix: link directly to support.getoutline.org (#1490) 2024-01-31 17:47:14 -05:00
Vinicius Fortuna
71e4b52b80
chore(server): remove docker-compose and cleanup (#1484) 2024-01-30 14:05:34 -05:00
Daniel LaCosse
33de2a98c5
feat(manager): link to Management API Documentation next to the Management API Endpoint (#1486)
* wip

* style tweak
2024-01-29 17:32:11 -05:00
Daniel LaCosse
4e383f5501
feat(manager): adds 'if-messages' utility that only renders contents if messages exist (#1482)
* does it

* Update if_messages.ts

* address feedback and fix compilation

* Update src/server_manager/web_app/ui_components/if_messages.ts

Co-authored-by: Vinicius Fortuna <fortuna@users.noreply.github.com>

* annotate converter string

---------

Co-authored-by: Vinicius Fortuna <fortuna@users.noreply.github.com>
2024-01-25 13:17:16 -05:00
Sander Bruens
f5ac42c6c2
feat(server): add a new PUT method to create a key with a specific identifier (#1473)
* feat(server): add optional `id` parameter to `createNewAccessKey` method

* Use `PUT` instead of `POST`.

* Make changes based on review.

* Update access key creation path to only allow ID on `PUT` calls.

* Expand test scenarios for key generation to `createAccessKey`.

* Add a `toHavePropertiesOf` custom Jasmine matcher.

* Add explicit test case for `ConflictError`.

* Revert "Add a `toHavePropertiesOf` custom Jasmine matcher."

This reverts commit 134e0df441.
2024-01-17 11:08:26 -05:00
Danil Shaymurzin ⚡️
57a30a2faf
feat(server): add optional name/limit/password props for createNewAccessKey method (#1273) 2024-01-12 11:43:29 -06:00
Vinicius Fortuna
4537fddc75
fix(server): make temp file names longer (#1464) 2024-01-10 08:43:02 -05:00
dependabot[bot]
ac6be23b2e
Merge pull request #1472 from Jigsaw-Code/dependabot/npm_and_yarn/follow-redirects-1.15.4 2024-01-09 23:55:09 +00:00
dependabot[bot]
da0f532397
chore: bump follow-redirects from 1.15.0 to 1.15.4
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.0 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.0...v1.15.4)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-09 23:21:52 +00:00