Commit Graph

775 Commits

Author SHA1 Message Date
Reactor Scram
6aec8ce287 test(firezone-tunnel): create a tunnel device in unit tests during CI (#4254)
This catches two of the mutants, according to `cargo-mutants`.

~~Unfortunately since `cargo test` runs in one process, it's
all-or-nothing for sudo, this will run all unit tests as sudo.~~
(This explanation is not exactly correct, `cargo test` does run _a_
subprocess, but still, there is no way to request sudo or non-sudo
runners for specific tests, since it's just an environment variable, and
since many tests run in parallel in different threads of the same
process.)

Here it is passing in Linux:
https://github.com/firezone/firezone/actions/runs/8382799272/job/22957555987#step:5:3160

And Windows:
https://github.com/firezone/firezone/actions/runs/8382799272/job/22957558003#step:5:1006

```[tasklist]
### Before merging
- [x] Try `#[ignore]` attribute
- [x] Fail gracefully if `sudo` isn't available
```
2024-03-28 17:03:32 +00:00
Thomas Eizinger
18033eafec ci: ensure roaming between networks doesn't abort file download (#4213)
This adds an integration test that downloads a 10MB file from a server
and simulates the client roaming to another network while the download
is active.

We use a DNS resource for this to ensure it also doesn't take too long
in that case. DNS resources are what most users will be using and we
clear some internal DNS caches on connection failures. Hence, using a
DNS resource here is a somewhat roundabout way to test that we aren't
failing and re-establishing the connection but migrate it to a new
network path.
2024-03-26 05:44:59 +00:00
Jamil
251a324c9f chore(ci): Fix tauri upload asset (#4255)
Fixes tauri release builds in CI
2024-03-21 23:47:01 +00:00
Reactor Scram
e3b150cfdb ci(tauri): fix typo (#4256)
You know what I want, when I'm waiting 15-60 minutes on a CI job?

I want a stringly-typed language

I want the compiler to do

as

little

work

as

possible

If there even _is_ a compile step. Cause I love waiting and squinting at
underscores.
2024-03-21 23:00:19 +00:00
Reactor Scram
a6d0a18035 ci(windows): publish Windows Client MSI (#4251)
I think this was just a small regression from the big CI refactor last
week. `update-release-draft` doesn't exist in this file anymore.

Closes #4248
2024-03-21 21:42:07 +00:00
Jason Elie Bou Kheir
83030a155d test(android): add github action workflow step for unit tests (#4177)
Fixes #2309 

Not sure how to test the workflow itself in this PR 🤔

---------

Signed-off-by: Jason Elie Bou Kheir <5115126+jasonboukheir@users.noreply.github.com>
Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
2024-03-21 16:25:13 +00:00
Reactor Scram
e05cbbe0a0 build(gui-client/linux): include an empty firezone-tunnel binary with the Tauri deb package (#4220)
I thought this was going to use `cargo-deb` but it was actually easy
with the Tauri deb bundling we already use.

```[tasklist]
### Before merging
- [x] Make sure every file in the Tauri deb is also in our deb (e.g. icons)
```
2024-03-20 14:11:41 +00:00
Reactor Scram
651ea3ae00 build(gui-client/linux): make sure debug symbols get uploaded for the Linux GUI client (#4217)
- Split up CI artifacts into "exe", "pkg", and "syms" so it's easy to
check they're being uploaded. This shouldn't affect published artifacts
- Set `strip = "none"` which seems to be necessary to get the debug
symbols in Linux, although they still end up in the exe and not the dwp
file 🤔 don't know why
- Test Linux stacktrace in CI

Stacktrace examples:
- On Linux we at least get function names, but we aren't getting line
numbers for some reason
https://github.com/firezone/firezone/actions/runs/8350493514/job/22857032124#step:10:268
- On Windows we also get line numbers, as before
https://github.com/firezone/firezone/actions/runs/8350493514/job/22857033367#step:11:351

I didn't test downloading the files and doing a stacktrace locally, but
I have batched that up for whenever I do a big manual test of the
CD-produced release artifacts:
https://github.com/firezone/firezone/issues/3887
2024-03-19 22:18:03 +00:00
Jamil
66f3781413 chore(deps): Need to bump Swift dependencies manually, Dependabot can't figure them out from Package.resolved (#4204)
Refs #4203
2024-03-19 18:42:22 +00:00
Reactor Scram
74026d8b13 build(gui-client): disable AppImage bundling (#4216)
AppImages won't work with process splitting. (#3713)

As far as I can tell, they just produce one binary. Internally they use
FUSE or something to mount a squashfs image, but that image won't be
able to hook into systemd and run with root permissions and everything.
I don't think it's practical, and Tauri's AppImage bundling doesn't have
the features for it.

Even their deb bundler doesn't have any way to specify a path for a
daemon to be installed. The sidecar feature only seems intended for the
GUI app to call, not anything else on the system.

(There is such a thing as installing AppImages, but I don't think it's
worth pursuing - We should just do debs)
2024-03-19 17:26:25 +00:00
Reactor Scram
504ff3ffca ci(tauri-client): try to enable smoke tests for Ubuntu 22.04 (#3770)
Closes #3699 if successful

Ref #3972 

I don't understand why it started working. There's at least 3
possibilities:
- Some unrelated change in the last few weeks fixed it (Maybe bumping
Tauri to 1.6.1? https://github.com/firezone/firezone/pull/3881)
- It was a bug in the Github CI runner image that they fixed
- It's an awful race condition and adding `tracing::debug!` fixed it

---------

Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com>
2024-03-19 15:41:37 +00:00
Jamil
de687f4c59 chore(ci): Lock AzureSignTool to version 4 (#4190)
Fixes #4185
2024-03-18 13:42:24 +00:00
Andrew Dryga
f3c8c734ab feat(portal): Filtering, Fulltext Search, Pagination, Preloads (#3751)
On the domain side this PR extends `Domain.Repo` with filtering,
pagination, and ordering, along with some convention changes are
removing the code that is not needed since we have the filtering now.
This required to touch pretty much all contexts and code, but I went
through all public functions and added missing tests to make sure
nothing will be broken.

On the web side I've introduced a `<.live_table />` which is as close as
possible to being a drop-in replacement for the regular `<.table />`
(but requires to structure the LiveView module differently due to
assigns anyways). I've updated all the listing tables to use it.
2024-03-16 13:27:48 -06:00
Andrew Dryga
114696c0ba chore(infra): Split terraform files into folders and add domain to production app (#4172) 2024-03-16 11:54:06 -06:00
Andrew Dryga
a85b9ab185 chore(infra): Deploy domain app on a separate instance and enable background jobs on it (#4160)
Closes #3801
2024-03-16 08:58:20 -06:00
Jamil
194e8ae579 chore(ci): Add confirmation to hotfix (#4132)
Adds another step to give pause.

---------

Signed-off-by: Jamil <jamilbk@users.noreply.github.com>
Co-authored-by: Andrew Dryga <andrew@dryga.com>
2024-03-15 22:14:08 +00:00
Thomas Eizinger
a64c34112d ci: activate backtrace for Rust tests (#4137) 2024-03-14 20:21:14 +00:00
Jamil
63c546eb45 chore(docker): Fix docker image local builds (#4127)
Fixes an artifact leftover from the refactor.

Fixes #4122
2024-03-14 00:06:10 +00:00
Jamil
32d18abb09 chore(ci): Use explicit images for hotfix workflow (#4126)
Hotfix calls integrations tests separately, so we need to explicitly
define the images for it to use.
2024-03-13 08:12:05 -07:00
Jamil
ec4eb2583f chore(ci): Explicit empty string and use GITHUB_OUTPUT (#4125)
Image names...
2024-03-13 00:02:20 -07:00
Jamil
e55f2325bc chore(ci): fix name naming (#4124) 2024-03-12 23:36:37 -07:00
Jamil
e185a5818a chore(ci): Add workflow trigger to description (#4123)
Getting some unexpected values for `github.event_name` so adding more
logging to diagnose.
2024-03-12 23:34:17 -07:00
Jamil
1cfe2c5d4a chore(ci): use output image from build for integration tests (#4117)
In CI, images have `debug/`. In CD, they don't, so test them that way.
2024-03-13 02:58:17 +00:00
Jamil
c555167e64 chore(ci): Check github.event_name == "pull_request" before using debug image prefix (#4115) 2024-03-12 18:26:35 -07:00
Jamil
2d79f32394 chore(ci): Don't namespace release images (#4114)
Fixes a logic bug.
2024-03-12 18:16:52 -07:00
Jamil
b1871ea24d Fix typo in _deploy_production.yml (#4113) 2024-03-12 17:02:20 -07:00
Jamil
78e730e6b5 chore(ci): Fix sha typo (#4111)
workflow_dispatch doesn't allow vars
2024-03-12 16:36:15 -07:00
Jamil
574585d146 chore(ci): Add debug/ and perf/ prefix to some images (#4104)
Followup from #4100:


- Add `perf/relay` and `debug/relay` etc data plane images in
`firezone-staging`.
- The `perf` images are `debug` stage images and have tooling installed,
but use release binaries.
- The `debug` images are `debug` binaries inside `debug` images
- `firezone-prod` contains only release binaries -- these image names
haven't changed
2024-03-12 20:27:32 +00:00
Jamil
1a348b2ada chore(ci): Add setup-elixir composite action (#4067)
Pulled out of #4049
2024-03-12 19:41:06 +00:00
Jamil
eb01de0285 chore(ci): Use tool versions action to parse terraform version (#4076)
Extracted from feedback on #4049
2024-03-12 17:13:31 +00:00
Jamil
0f4348c406 chore(ci): Fix deploy staging logic bug (#4101) 2024-03-12 10:13:17 -07:00
Jamil
ef2d272f78 chore(ci): Use release binaries for performance tests (#4100)
- Don't build perf images for control plane images
- Use release binaries for performance tests
2024-03-12 16:29:33 +00:00
Jamil
2839d459a7 chore(ci): don't build tauri twice in CD (#4098)
Fixes red main.
2024-03-12 09:04:27 -07:00
Jamil
f6173faf09 chore(ci): Fix tauri upload and allow building images based on given SHA (#4092)
Opening as another PR to unblock CI. Pulled from #4085
2024-03-12 07:03:21 +00:00
Jamil
391150f0e1 chore(ci): Fix new issues in cd.yml (#4085)
Fixes some issues encountered after the merge of #4049 

- Fix performance tests to only run using base_ref and head_ref to avoid
dependence on `main`
- Fixes some typos
- Prevents a catch-22 condition where breaking compatibility meant we
wouldn't be able to deploy production
2024-03-12 02:06:19 +00:00
Jamil
6575e0ca26 chore(ci): Refactor CI to use prod images in staging and prevent accidental hotfix breakages (#4049)
- Runs release asset builds simultaneously with `deploy-staging`. Those
don't depend on each other.
- Prevents running some build workflows in CD because they're run
already in the PR and in the merge group, and the risk of semantic
conflict is negligible
- Run `release` assets in staging
- Adds `compatibility_tests`: **To successfully introduce a breaking
change in the control / data plane APIs, you must now "Merge as
Administrator"**
- Since `CI` is no longer run on `main`, caching needed to be refactored
to make sense again
- Since `CI` is no longer run on `main`, the Elixir
`migrations_and_seeds_test` had to be rewritten. This now tests
migrations using `git checkout` instead of importing `main`'s DB dump.
- Move tauri builds to its own workflow so we can trigger Linux and
Windows builds manually on an adhoc basis like we do for the Swift and
Kotlin builds
- Add a new `hotfix` workflow that will run `compatibility_tests` with
the latest published images
- Add `workflow_dispatch` to trigger `CD` manually for testing purposes
(cc @ReactorScram)


Refs #3995
2024-03-11 20:01:34 +00:00
Reactor Scram
7211e88338 feat(linux-client): generate firezone-id (device ID) automatically if it's not provided at launch (#3920)
Closes #3815 

Changes that are breaking (but these aren't in production so it should
be okay)

- Windows, renaming `device_id.json` to `firezone-id.json` to match the
rest of the code
- Linux GUI, storing the firezone-id under `/var/lib` instead of under
`$HOME`
- Linux GUI, bails out if not run with `sudo --preserve-env` by
detecting `$HOME == root` or `$USER != root`

---------

Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com>
2024-03-08 16:13:59 +00:00
Jamil
bd7aa814d9 chore(ci): Fix dependabot paths and CI warnings (#3982)
<img width="1090" alt="Screenshot 2024-03-05 at 3 48 57 PM"
src="https://github.com/firezone/firezone/assets/167144/c7d9f0c5-f0e9-479a-917c-6225da10188c">

<img width="846" alt="Screenshot 2024-03-05 at 3 49 21 PM"
src="https://github.com/firezone/firezone/assets/167144/f4d5765f-47e0-4c7e-b399-cde1f415764d">
2024-03-06 18:44:32 +00:00
Jamil
9cab250696 chore(windows): Sign internal exe using beforeBundleCommand (#3994)
Refs #3230 

It looks like we need to sign the internal exe before it gets bundled
too. We can use `beforeBundleCommand` to do so.

Soon, Tauri should have native support for this exact scenario:
https://github.com/tauri-apps/tauri/pull/8718
2024-03-06 16:00:54 +00:00
Jamil
19e833262f chore(windows): Sign windows exe too (#3992)
Fixes #3230
2024-03-05 22:35:24 -08:00
Jamil
70a9ed2714 feat(windows): code sign Windows client (#3891)
- Uses infra we [set up
previously](https://portal.azure.com/#@firezoneinc.onmicrosoft.com/resource/subscriptions/43767d16-5744-41af-ab38-6323d54b9b7d/resourceGroups/Default/providers/Microsoft.KeyVault/vaults/firezone-code-signing/overview)
in Azure for codesigning.
- Cert is currently expired so this is likely to fail. Currently pending
renewal with GlobalSign
- May need a few more pushes to `main` to troubleshoot issues since this
is run in CD

Fixes #3230
2024-03-06 01:58:43 +00:00
Jamil
5d4121bbfc chore(ci): Use Xcode 15.2 (#3924)
Fixes these warnings:


https://github.com/firezone/firezone/actions/runs/8149132180/job/22273278837?pr=3906#step:6:592
2024-03-05 15:20:59 +00:00
Jamil
b5303bdc46 chore(ci): remove redundant runs-on config (#3925) 2024-03-05 05:51:21 +00:00
Jamil
268e792f48 chore(ci): Use GH actions cache for Tauri builds (#3906)
Builds off #3905 and uses the GH actions cache for tauri builds in order
to get around the `crate-type` problem sccache has with Tauri apps.

Fixes #3456
2024-03-05 01:07:31 +00:00
Jamil
885152d7c4 chore(ci): auto-label based on PR title (#3893)
- Auto-labels PRs based on PR title so that they're automatically
categorized when generating the Changelog.
- Enforce ConventionalCommit-style PR titles so they can be easily
categorized in the changelog
2024-03-04 19:17:24 +00:00
Jamil
9eb1ec9203 chore: Revert "fix(ci): Publish images even for hotfixes" (#3898)
Reverts firezone/firezone#3897

The gateway binary published on the releases page still isn't updated
with this fix, so going to revert to implement a more long-term
solution.
2024-03-04 01:04:05 +00:00
Jamil
4c221111bc fix(ci): Publish images even for hotfixes (#3897)
Fixes #3896
2024-03-03 11:47:01 -08:00
dependabot[bot]
76b2bd0736 build(deps): Bump lycheeverse/lychee-action from 1.9.0 to 1.9.3 (#3850)
Bumps
[lycheeverse/lychee-action](https://github.com/lycheeverse/lychee-action)
from 1.9.0 to 1.9.3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/lycheeverse/lychee-action/releases">lycheeverse/lychee-action's
releases</a>.</em></p>
<blockquote>
<h2>Version 1.9.3</h2>
<h2>What's Changed</h2>
<ul>
<li>Bugfix: Pass custom <code>token</code> as input argument to action
by <a href="https://github.com/mre"><code>@​mre</code></a> in <a
href="https://redirect.github.com/lycheeverse/lychee-action/pull/222">lycheeverse/lychee-action#222</a>
Previously, the name of the token was incorrect, leading to no token
being used if the user specified <code>with: [token: ...]</code>.
Thanks to <a href="https://github.com/tobon4"><code>@​tobon4</code></a>
for pointing this out.</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/lycheeverse/lychee-action/compare/v1...v1.9.3">https://github.com/lycheeverse/lychee-action/compare/v1...v1.9.3</a></p>
<h2>Version 1.9.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Bump actions/cache from 3 to 4 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/lycheeverse/lychee-action/pull/221">lycheeverse/lychee-action#221</a></li>
<li>Bump peter-evans/create-issue-from-file from 4 to 5 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/lycheeverse/lychee-action/pull/223">lycheeverse/lychee-action#223</a></li>
<li>Bump to lychee 0.14.2 in <a
href="eeb9cb63fe</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/lycheeverse/lychee-action/compare/v1...v1.9.2">https://github.com/lycheeverse/lychee-action/compare/v1...v1.9.2</a></p>
<h2>Version 1.9.1</h2>
<p>This is a hotfix release which restores the behavior of the
<code>accept</code> config parameter.
Integers are accepted again as status codes.</p>
<pre lang="toml"><code>accept = [200, 201, 202, 203, 429]
</code></pre>
<p>is equivalent to</p>
<pre lang="toml"><code>accept = [&quot;200..=203&quot;, 429]
</code></pre>
<p>Integers and strings (e.g. for ranges) can be mixed.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c053181aa0"><code>c053181</code></a>
Pass custom <code>token</code> as input argument to action (<a
href="https://redirect.github.com/lycheeverse/lychee-action/issues/222">#222</a>)</li>
<li><a
href="eeb9cb63fe"><code>eeb9cb6</code></a>
Bump to lychee 0.14.2</li>
<li><a
href="0fa791a2a1"><code>0fa791a</code></a>
Bump peter-evans/create-issue-from-file from 4 to 5 (<a
href="https://redirect.github.com/lycheeverse/lychee-action/issues/223">#223</a>)</li>
<li><a
href="8c9a282bef"><code>8c9a282</code></a>
Bump actions/cache from 3 to 4 (<a
href="https://redirect.github.com/lycheeverse/lychee-action/issues/221">#221</a>)</li>
<li><a
href="c3089c702f"><code>c3089c7</code></a>
Bump to lychee 0.14.1</li>
<li><a
href="fdea703267"><code>fdea703</code></a>
Update secure git hash for 1.9.0</li>
<li>See full diff in <a
href="https://github.com/lycheeverse/lychee-action/compare/v1.9.0...v1.9.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=lycheeverse/lychee-action&package-manager=github_actions&previous-version=1.9.0&new-version=1.9.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-01 16:23:32 +00:00
dependabot[bot]
e8382e872e build(deps): Bump release-drafter/release-drafter from 5 to 6 (#3849)
Bumps
[release-drafter/release-drafter](https://github.com/release-drafter/release-drafter)
from 5 to 6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/release-drafter/release-drafter/releases">release-drafter/release-drafter's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.0</h2>
<h1>What's Changed</h1>
<ul>
<li>Update Node.js to 20 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1379">#1379</a>)
<a href="https://github.com/massongit"><code>@​massongit</code></a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/release-drafter/release-drafter/compare/v5.25.0...v6.0.0">https://github.com/release-drafter/release-drafter/compare/v5.25.0...v6.0.0</a></p>
<h2>v6.0.0-beta.1</h2>
<p>Prerelease of v6, first release of the CLI, feel free to provide
feedback in the pull request: <a
href="https://redirect.github.com/release-drafter/release-drafter/pull/1204">release-drafter/release-drafter#1204</a></p>
<h2>v5.25.0</h2>
<h1>What's Changed</h1>
<h2>New</h2>
<ul>
<li>add prerelease increment behavior (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1303">#1303</a>)
<a href="https://github.com/neilime"><code>@​neilime</code></a></li>
<li>add latest input (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1348">#1348</a>)
<a href="https://github.com/o-mago"><code>@​o-mago</code></a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/release-drafter/release-drafter/compare/v5.24.0...v5.25.0">https://github.com/release-drafter/release-drafter/compare/v5.24.0...v5.25.0</a></p>
<h2>v5.24.0</h2>
<h1>What's Changed</h1>
<h2>New</h2>
<ul>
<li>Add release version to github action output (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1300">#1300</a>)
<a
href="https://github.com/mehdihadeli"><code>@​mehdihadeli</code></a></li>
</ul>
<h2>Bug Fixes</h2>
<ul>
<li>fix(release): strip prefix before comparing version (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1255">#1255</a>)
<a href="https://github.com/neilime"><code>@​neilime</code></a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/release-drafter/release-drafter/compare/v5.23.0...v5.24.0">https://github.com/release-drafter/release-drafter/compare/v5.23.0...v5.24.0</a></p>
<h2>v5.23.0</h2>
<h1>What's Changed</h1>
<h2>New</h2>
<ul>
<li>Add <code>include-pre-releases</code> configuration option (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1302">#1302</a>)
<a
href="https://github.com/robbinjanssen"><code>@​robbinjanssen</code></a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/release-drafter/release-drafter/compare/v5.22.0...v5.23.0">https://github.com/release-drafter/release-drafter/compare/v5.22.0...v5.23.0</a></p>
<h2>v5.22.0</h2>
<h1>What's Changed</h1>
<h2>New</h2>
<ul>
<li>Only use last full release when drafting (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1240">#1240</a>)
<a href="https://github.com/ssbarnea"><code>@​ssbarnea</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3f0f87098b"><code>3f0f870</code></a>
v6.0.0</li>
<li><a
href="80296b4fba"><code>80296b4</code></a>
Update Node.js to 20 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1379">#1379</a>)</li>
<li>See full diff in <a
href="https://github.com/release-drafter/release-drafter/compare/v5...v6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=release-drafter/release-drafter&package-manager=github_actions&previous-version=5&new-version=6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-01 15:35:14 +00:00
Reactor Scram
ca95dcdf77 feat(gui-client): make all modules Linux-friendly (#3737)
Splits up platform-specific modules into `linux.rs` and `windows.rs`
submodules, or `imp` modules within the parent module, so that we can
compile all the platform-independent code (e.g. Tauri calls,
`run_controller`) for Linux.

This will show the Tauri GUI on Linux:


![image](https://github.com/firezone/firezone/assets/13400041/320a4b91-1a37-48dd-94b9-cc280cc09854)

---------

Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com>
2024-02-28 22:09:56 +00:00