64 Commits

Author SHA1 Message Date
Will Hunt
d550077f3e
Rewrite docker workflow. (#994)
* Rewrite docker workflow.

* tidy

* Create 994.misc

Signed-off-by: Will Hunt <will@half-shot.uk>

---------

Signed-off-by: Will Hunt <will@half-shot.uk>
2024-11-29 09:15:53 +00:00
Will Hunt
819c089aa4
Update minimum Node version to 22 (#990)
* Update dependencies

* Node 22 is now the new minimum version.

* changelog.

* Begin porting eslint to new config format.

* Make linter happy.

* Update reqwest to fix SSL issue?

* Fix test types

* quick check on ubuntu LTS 24.04

* Change cache key

* update rust action

* revert mocha due to esminess

* Remove the only usage of pqueue

* Use babel for TS transformations to get around ESM import bug.

* Dependency bundle upgrade

* Drop babel, not actually used.

* lint

* lint

* update default config (mostly sections moving around)
2024-11-28 15:04:01 +00:00
Will Hunt
745699abd3
Add devenv development files (#993)
* Add devenv config

* Use Node 20 for now.

* changelog
2024-11-28 10:49:11 +00:00
Will Hunt
052d42fca8
Stabilize E2EE support (#989)
* Deprecate legacy sled store

* Add e2ee test

* Add support for e2ee testing in e2e environment

* Tidy up redis support

* Attempt to get test working

* cleanup test

* opportunistic lint

* tiny bit of cleanup

* remove ref

* tweak to homerunner

* switch to nightly images for Synapse (to test E2EE)

* use nightly

* newsfile.

* Update bot sdk to support authenticated media (now that Synapse requires it)

* fix typings

* MatrixError

* one more

* Graduate the encryption property to stable.

* update test config

* Update encryption docs.

* fix some old config bits
2024-11-26 16:04:56 +00:00
Will Hunt
46b0004581
Skip newsfile CI check for dependabot. (#987)
* skip newsfile for dependabot.

* changelog
2024-11-19 10:53:03 +00:00
Will Hunt
caaabbc300
Don't cancel docker hub builds as it breaks merge queues.
Signed-off-by: Will Hunt <will@half-shot.uk>
2024-01-16 09:44:41 +00:00
Will Hunt
8e115b40ab
Add End to End testing (#868)
* Ensure connection state always explicitly states all keys, even if some are undefined.

* changelog

* Fix type

* fix test types

* Add support for E2E testing

* Add CI job for e2e test

* Ensure integration test only runs when regular tests complete

* Add homerunner image

* Disallow concurrent runs

* Add concurrency to other expensive steps

* changelog

* Fix mq test

* Cache rust deps

* Drop only

* Use a shared key
2023-12-28 15:04:03 +00:00
Will Hunt
b96b45d98c
Drop Node 18, start testing Node 21 & update dependencies. (#862)
* Major package upgrades

* Update rust deps and fix a few things

* Drop 18 testing

* Use node 20

* lint rust

* lint

* changelog

* Drop usage of SVGs, use compound elements.

* Update widget API
2023-12-22 15:36:49 +00:00
Rhea Danzey
5a277d47e2
Helm chart - CI - Fix using malformed output parameter syntax, make appVersion substitution apply in place
Signed-off-by: Rhea Danzey <rdanzey@element.io>
2023-06-08 12:49:30 -05:00
Rhea Danzey
113cf5b49e
Helm chart - CI - Fix app version output passing
Signed-off-by: Rhea Danzey <rdanzey@element.io>
2023-06-08 12:46:11 -05:00
Rhea Danzey
3b5c0d8ac5
Helm chart - CI - Use an output variable to retrieve hookshot version from package.json
Signed-off-by: Rhea Danzey <rdanzey@element.io>
2023-06-08 12:41:06 -05:00
Rhea Danzey
b9a45f7210
Helm chart - Split pre-build transform steps into separate commands
Signed-off-by: Rhea Danzey <rdanzey@element.io>
2023-06-08 12:28:04 -05:00
Rhea Danzey
b102798a23
Add basic Helm chart for Hookshot (#719)
* Import basic chart

Signed-off-by: Rhea Danzey <rdanzey@element.io>

* Test chart-releaser workflow

Signed-off-by: Rhea Danzey <rdanzey@element.io>

* Use latest version of chart-releaser action

Signed-off-by: Rhea Danzey <rdanzey@element.io>

* Test chart version bump

Signed-off-by: Rhea Danzey <rdanzey@element.io>

* Remove pages index

Signed-off-by: Rhea Danzey <rdanzey@element.io>

* Test bump Chart.yaml

* Add preliminary docs

Signed-off-by: Rhea Danzey <rdanzey@element.io>

* Docs tidying

Signed-off-by: Rhea Danzey <rdanzey@element.io>

* Add changelog for helm chart

Signed-off-by: Rhea Danzey <rdanzey@element.io>

* Update helm/hookshot/README.md

Co-authored-by: Will Hunt <will@half-shot.uk>

* Update values.yaml with most recent default config (incl. comments)

Signed-off-by: Rhea Danzey <rdanzey@element.io>

* Add pre-build stage for helm chart to template appVersion and config into values

Signed-off-by: Rhea Danzey <rdanzey@element.io>

* Add lint / validate to helm chart

Signed-off-by: Rhea Danzey <rdanzey@element.io>

* Fix helm validate workflow & Rename

Signed-off-by: Rhea Danzey <rdanzey@element.io>

* Update .github/workflows/helm.yml

Co-authored-by: Will Hunt <will@half-shot.uk>

---------

Signed-off-by: Rhea Danzey <rdanzey@element.io>
Co-authored-by: Will Hunt <will@half-shot.uk>
2023-06-08 18:17:54 +01:00
Will Hunt
f85b543f1f
Add clippy checks to workflow 2023-05-18 13:39:03 +01:00
Half-Shot
698b0c13bb Add a merge group to this so the check passes 2023-05-18 11:58:03 +01:00
Will Hunt
1741848f57 Add merge_group to workflows. 2023-05-18 10:45:52 +00:00
Will Hunt
d772a4050c
Run Clippy in CI (#753)
* Clippy fixes

* Refactor to make rust linter happy

* Enable warnings since we have none

* Tidy up tests

* changelog
2023-05-18 11:38:59 +01:00
Will Hunt
c864dc6b42
Support node 20, drop node 16 (#724)
* Support node 20, drop node 16

* Update workflow versions

* Update backendmeta

* Use version file

* Update packages

* Yarn updates

* Changelog

* Fix glibc compatibility

* Target es2021

Without this, CI tests fail

* Drop unused metrics parameter

* Revert "Drop unused metrics parameter"

This reverts commit 4d874549bcec3dea0d6941215ac5c4f4707966ac.

* Make a note about broken support

---------

Co-authored-by: Andrew Ferrazzutti <andrewf@element.io>
2023-04-27 12:24:06 +01:00
Will Hunt
2b5d4640c8
Ignore paths in workflows if only updating the changelog (#692)
* Add filters so jobs don't run twice for changelog changes

* one final tweak

* Final tweaks

* changelog
2023-03-29 09:15:34 +00:00
Will Hunt
735ae2d673
Add release script (#667)
* Add release script and workflow

* remove comments

* changelog
2023-03-22 14:03:36 +00:00
Half-Shot
0d0cc6b3da fix push 2023-03-17 13:57:50 +00:00
Half-Shot
0dc2512e10 only log in if we're pushing 2023-03-17 13:55:15 +00:00
Will Hunt
7faa3f031e
Run docker CI for pull requests too (#662)
* Do a docker build for pull requests too

* drop branch limit for push

* changelog
2023-03-17 13:51:24 +00:00
Will Hunt
07e4129156
Only build arm64 docker images on push (#589)
* Only build ARM on push to main

* changelog

* Add concurrency, fix tertary

* Divide up push jobs

* Try it again

* String false

* 'true'
2022-12-07 17:12:26 +00:00
Christian Paul
80010f7b9b
Misspelling: to setup -> to set up (#572)
* Typo: to setup -> to set up

* Add newsfile
2022-11-21 18:38:50 +01:00
Will Hunt
0622d0717f
Create triage-incoming.yml 2022-10-20 12:11:11 +01:00
Andrew Ferrazzutti
c0efb91c9a
Fix Docker builds hanging/OOMing (#535)
* Add network timeouts to Docker builds

* Split cargo build out

* Put cargo in the right place

* debug usage

* install time

* Fix docker build OOMing in CI for arm64 builds

Yoinked from synapse:
- https://github.com/matrix-org/synapse/pull/14173
- 424d1d28cc

* Update changelog

Co-authored-by: Half-Shot <will@half-shot.uk>
2022-10-17 13:09:15 -04:00
Will Hunt
311ac9f168
Start tracking coverage (#351)
* Start tracking coverage

* coverage test
2022-09-01 15:01:08 +00:00
Will Hunt
10ac614a91
Add docker auto-build for ARM64 (take 2) (#458)
* Revert "Revert "Add docker auto-build for ARM64 (#373)" (#392)"

This reverts commit 7c415ad3760df574f3addf14df9ac0bb1b6ca47d.

* Rename 373.feature to 458.feature
2022-08-25 14:39:24 +01:00
Will Hunt
00927175a2
Update matrix-bot-sdk to 0.6.0 (#417)
* Update matrix-bot-sdk to 0.6.0

* changelog

* More package updates

* Don't need to copy bindings anymore

* Expliclty require Node 16

* Drop node 14 test

* fix rust bindings fetch

* Update .github/workflows/main.yml

Co-authored-by: Tadeusz Sośnierz <tadzik@tadzik.net>

* Update main.yml

Co-authored-by: Tadeusz Sośnierz <tadzik@tadzik.net>
2022-08-12 10:59:24 +01:00
Will Hunt
681ab8ebff
Add signoff check (#427)
* Add signoff check

* develop

* Rename

* test

* test data

* Fix

* pin to ref

* changelog

* Use backend-meta
2022-07-27 12:23:17 +01:00
Will Hunt
650397d843
Create CODEOWNERS and PR template (#425)
* Create CODEOWNERS

* Create pull_request_template.md

* Create 425.misc
2022-07-25 14:54:39 +01:00
Will Hunt
84f1e3bfe3
Test against Node 18 (#399)
* Test on Node 18

* Drop mistakenly commited file

* Create 399.misc
2022-07-07 21:52:51 +00:00
Will Hunt
7c415ad376
Revert "Add docker auto-build for ARM64 (#373)" (#392)
This reverts commit ea6382faa13c97b75b1b940dc1d709fcfa9023a0.
2022-06-30 12:01:33 +01:00
Arthur Brugière
ea6382faa1
Add docker auto-build for ARM64 (#373)
* Add docker auto-build for ARM64

* Add changelog for ARM64 build PR

* Add needed QEMU action for ARM64 build

* Bump docker's action + apply all to 'latest' workflow too

* Clarify feature

Co-authored-by: Will Hunt <will@half-shot.uk>
2022-06-17 10:26:34 +01:00
Will Hunt
ee2fd5bbcc
Add contributing file (#134)
* Add contributing file

* Rewrite and point at matrix-appservice-bridge

* Add documentation

* Ensure we install matrix-appservice-bridge when building docs

* Also install for release

* changelog

* add contrib file

* Remove artifact step, it doesn't render so nicely

* Update README.md
2022-06-08 15:30:46 +00:00
Will Hunt
026d7f64b5
Update towncrier to 21.9.0 (#353)
* Update towncrier to 21.9.0

* changelog
2022-05-13 10:15:49 +01:00
Christian Paul
4060ded7f8
Minor grammar corrections in code and documentation (#267)
* setupWidget -> setUpWidget

* setup -> (to) set up; add full stops

* setupAdminRoom -> setUpAdminRoom

* it's -> its

* Create 267.feature

* log in to; Currently, ; full stops

* Improve copy of error messages

* Update 267.feature

* Rename 267.feature to 267.misc

Co-authored-by: Will Hunt <will@half-shot.uk>
2022-04-07 16:14:35 +01:00
Will Hunt
3cf1552ea7
Support versioning docs (#259)
* Setup versioned docs

* changelog

* correct version number
2022-03-30 11:36:37 +01:00
Will Hunt
d9fe5357a9
Drop support for Node 12 (#228)
* Drop node 12 dependencies

* changelog
2022-03-07 20:01:51 +00:00
Will Hunt
5b294bc05f
Add support for a tiered permission system (#167)
* Add basic permission model

* Add permission mapping implementation

* Start integrating config checks

* Add permission checking for commands

* Add warnings for legacy behaviour

* changelog

* Linting

* Fix config build step

* Tests

* Add documentation

* Add complete tests

* Add documentation

* Add room for room membership permissions

* Fixup error

* Update sampleConfig
2022-01-14 17:44:15 +00:00
Will Hunt
e6dd83ac5b
Support napi v2 (#111)
* Export a sensible user agent

* Completely rewrite rust portions to be napi v2 compatible

* Format rust files

* Only lint TS files when running lint-node

* Don't include autogenerated typings in the tree

* changelog

* Autofix generated rust dependencies due to a bug in napi@2

* Fix for multiple runs

* Fix format_util file name

* Make script generic

* lint
2022-01-02 01:54:57 +00:00
Will Hunt
060b73263f
Add a listeners config block (#102)
* Add support for a multi-resource listener style handler

* Update configs

* Speed up config check

* Speed up config check

* Update docs
2021-12-21 16:52:12 +00:00
Will Hunt
6d46492693 don't prefix release to docker releases 2021-12-21 16:48:26 +00:00
Will Hunt
ffcb41a0e0
Add support for prometheus (#99)
* Add support for prometheus metrics

* Automatically build metrics documentation

* Slight linter tidyup

* add changelog

* fix workflow

* hush yarn
2021-12-16 15:05:03 +00:00
Will Hunt
9425b778fb
Make sample config CI diff visible (#97)
* Replace cmp with diff, and check if the diff is visible

* changelog
2021-12-14 17:53:01 +00:00
Will Hunt
8bdf789553
Add towncrier (#96)
* Add support for towncrier

* Use correct command

* Compare properly

* Work within the correct directory

* Try main

* Try a fetch-depth of 0

* changelog

* Fix default config

* Update sample
2021-12-13 13:10:36 +00:00
Will Hunt
e90c6a26fa Fix if statement 2021-11-29 14:30:15 +00:00
Will Hunt
6a5c84acd9 Build docs on each push 2021-11-29 13:36:15 +00:00
Will Hunt
65a7d96644 Add skeleton for docs 2021-11-29 10:26:11 +00:00