Commit Graph

931 Commits

Author SHA1 Message Date
Thomas Eizinger
47a447c65a chore: prepare hotfix release for Tauri & headless clients (#6235) 2024-08-09 08:28:25 +00:00
Jamil
67ae8ff380 ci: publish Gateway 1.1.4 (#6228)
Publishes the `ENABLE_MASQUERADE` removal.
2024-08-09 03:45:26 +00:00
Jamil
a6ba9868dd ci: Revert bumps to 1.2 (#6227)
We need these at 1.1 until ready to release.
2024-08-08 18:34:39 -07:00
Jamil
096ddfe7c5 ci: bump gui/headless to 1.1.10 (#6221)
To publish the mpsc channel fix.

---------

Signed-off-by: Jamil <jamilbk@users.noreply.github.com>
Co-authored-by: Reactor Scram <ReactorScram@users.noreply.github.com>
2024-08-08 16:20:20 +00:00
Jamil
406426c59f fix(ci): Fix underscores / dashes typo from #6208 (#6212)
Fix underscores / dashes typo from #6208
2024-08-07 12:58:15 -07:00
Jamil
0c6cd4a804 fix(ci): Add http test server image specifiers to CI (#6208)
- Adds `http_test_server_image` to inputs so that it gets set properly
for CI (`debug`) and CD (`perf`)
- Updates `dev` -> `debug` in docker-compose.yml to fix pulls
- Fixes issue with seeds and relevant docs from #6205
2024-08-07 12:15:00 -07:00
Jamil
51e0b61c9c chore: Bump all clients and gateway versions (#6149)
Includes major fixes https://github.com/firezone/firezone/pull/6143 and
https://github.com/firezone/firezone/pull/6117
2024-08-02 01:12:49 -07:00
Reactor Scram
23161ec840 chore(gui-client): release 1.1.8 (#6136)
Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com>
2024-08-01 21:58:18 +00:00
Jamil
9d8a15ebee ci: Use the same version of buildx for building, tagging, and merging images (#6066)
In debugging https://firezone.statuspage.io/incidents/3vjmjmbh92mw, we
realized that we use potentially different versions of buildx. This PR
fixes that.
2024-07-30 15:05:09 +00:00
Thomas Eizinger
5687befc9d ci: use correct service name in docker-compose.yml (#6055)
The compose service I defined is called `otel` not `otlp`. With this fix
in place, the relay successfully connects to the OTLP exporter.

it is worthwhile noting that the connection to the OTLP exporter itself
is not critical for relay operation. Even if it fails, it won't affect
the actual data plane. I do think it makes sense to still have a working
OTLP exporter in the compose definition. As it makes it easier to test
whether the ingestion of metrics and traces works as expected.
2024-07-27 02:48:08 +00:00
Reactor Scram
6862213cc2 fix(headless-client/linux): only notify systemd that we're up after Resources are available (#6026)
Closes #5912

Before this, I had the `--exit` CLI flag and the `sd_notify` call
hanging off the wrong callback.
2024-07-26 18:53:08 +00:00
Thomas Eizinger
b2298392e6 ci: only post benchmark results on alerts (#6030)
It appears that the configuration via env variables doesn't work as
expected. This PR changes bencher's config to use commandline arguments.
With that, the `--branch-start-point` actually takes effect and copies
over the thresholds configured on bencher for the `main` branch.

With the thresholds in place, we can configure bencher to only alert us
if a threshold is exceeded and otherwise be quiet and not post a
comment.
2024-07-25 04:28:34 +00:00
Jamil
7034344334 ci: Sleep 3 seconds after upping services for integration tests (#6019)
Fixes #4921
2024-07-24 15:49:39 +00:00
Thomas Eizinger
7c8bbd550b test(connlib): introduce network latency to tunnel_test (#5948)
Currently, `tunnel_test` executes all actions within the same `Instant`,
i.e. time is never advanced by itself. The difficulty with advancing
time compared to other actions like sending packets is that all
time-related actions "overlap". In other words, all timers within
connlib advance at the same time. This makes it difficult to model the
expected behaviour after a certain amount of time has passed as we'd
effectively need to model all timers and their relation to particular
actions (like resending of connection intents or STUN requests).

Instead of only advancing time by itself, we can model some aspect of it
by introducing latency on network messages. This allows us to define a
range of an "acceptable" network latency within everything is expected
to work.

Whilst this doesn't cover all failure cases, it gives us a solid
foundation of parameters within which we should not expect any
operational problems.
2024-07-24 04:01:50 +00:00
Thomas Eizinger
a8aafc9e14 ci: use bencher.dev for continuous benchmarking (#5915)
Currently, we have a homegrown benchmark suite that reports results of
the iperf runs within CI by comparing a run on `main` with the current
branch.

These comments are noisy because they happen on every PR, regardless of
the performance results. As a result, they tend to be skimmed over by
devs and not actually considered. To properly track performance, we need
to record benchmark results over time and use statistics to detect
regressions.

https://bencher.dev does exactly that. it supports various benchmark
harnesses to automatically collect benchmarks. For our case, we simply
use the generic JSON adapter to extract the relevant metrics from the
iperf results and report them to the bencher backend.

With these metrics in place, bencher can plot the results over time, and
alert us in the case of regressions using thresholds based on
statistical tests.

Resolves: #5818.

---------

Signed-off-by: Thomas Eizinger <thomas@eizinger.io>
Co-authored-by: Reactor Scram <ReactorScram@users.noreply.github.com>
2024-07-24 01:22:17 +00:00
Andrew Dryga
50318ae1d2 chore(ci): Do not run terraform plan in PRs when there are no changes (#5964) 2024-07-23 09:18:49 -06:00
Reactor Scram
75529ea799 chore(rust): bump nightly version used for checking unused deps (#5918)
This version was a few months old and started throwing errors about
features that stabilized since then.

e.g.
https://github.com/firezone/firezone/actions/runs/10011089436/job/27673759249

```
error[E0658]: use of unstable library feature 'proc_macro_byte_character'
   --> /home/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.86/src/wrapper.rs:871:21
    |
871 |                     proc_macro::Literal::byte_character(byte)
    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: see issue #115268 <https://github.com/rust-lang/rust/issues/115268> for more information
    = help: add `#![feature(proc_macro_byte_character)]` to the crate attributes to enable
    = note: this compiler was built on 2024-03-25; consider upgrading it if it is out of date

error[E0658]: use of unstable library feature 'proc_macro_c_str_literals'
   --> /home/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.86/src/wrapper.rs:898:21
    |
898 |                     proc_macro::Literal::c_string(string)
    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: see issue #119750 <https://github.com/rust-lang/rust/issues/119750> for more information
    = help: add `#![feature(proc_macro_c_str_literals)]` to the crate attributes to enable
    = note: this compiler was built on 2024-03-25; consider upgrading it if it is out of date

For more information about this error, try `rustc --explain E0658`.
error: could not compile `proc-macro2` (lib) due to 2 previous errors
```
2024-07-19 22:32:51 +00:00
Reactor Scram
6b1b14dc2c chore(gui-client): release GUI Client 1.1.7 (#5897)
Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com>
2024-07-17 22:23:43 +00:00
Thomas Eizinger
aa279d7731 ci: never tolerate warnings in Rust code (#5893)
Our Rust CI runs various jobs in different configurations of packages
and / or features. Currently, only the clippy job denies warnings which
makes it possible that some code still generates warnings under
particular configurations.

To ensure we always fail on warnings, we set a global env var to deny
warnings for all Rust CI jobs.

---------

Signed-off-by: Thomas Eizinger <thomas@eizinger.io>
Co-authored-by: Reactor Scram <ReactorScram@users.noreply.github.com>
2024-07-17 22:22:12 +00:00
Reactor Scram
a8ece49d9e chore: bump GUI to 1.1.6 (#5862)
I started a playbook for publishing GUI releases, I didn't see any other
one around.

I think there's a middle step I'm not clear on:

1. Open this PR and get it approved
2. Do something? Publish the draft release maybe? Run a special CI
workflow?
3. Merge this PR to update the changelog and bump the versions in Git

```[tasklist]
### Tasks
```
2024-07-12 18:45:56 +00:00
Reactor Scram
64e0b71b77 feat(gui-client): set a different tray icon when signed out (#5817)
Closes #5810 

```[tasklist]
### Tasks
- [x] Try not to set the icon every time we change Resources
- [x] Get production icons
- [x] Add changelog comment
- [x] Add CI stress test that sets the icon 10,000 times
- [x] Open for review
- [x] Repair changelog
- [ ] Merge
```

---------

Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com>
2024-07-11 20:50:44 +00:00
Reactor Scram
78f1c7c519 test(firezone-tunnel/windows): Test Windows upload speed in CI (#5607)
Closes #5601
It looks like we can hit 100+ Mbps in theory. This covers Wintun, Tokio,
and Windows OS overhead. It doesn't cover the cryptography or anything
in connlib itself.

The code is kinda messy but I'm not sure how to clean it up so I'll just
leave it for review.

This test should fail if there's any regressions in #5598.

It fails if any packet is dropped or if the speed is under 100 Mbps

```[tasklist]
### Tasks
- [x] Use `ip_packet::make`
- [x] Switch to `cargo bench`
- [x] Extract windows ARM PR
- [x] Clean up wintun.dll install code
- [x] Re-request review
```
2024-07-10 19:09:45 +00:00
Jamil
446d24a761 ci: Fix scoping dialyzer cache to elixir version (#5825)
This fixes a CI bug where the dialyzer cache was not being scoped to the
elixir version, causing cache issues that fail CI jobs.

This also performs some tidying up of the cache key to scope it by
runner arch too for elixir deps, and make clear what the cache key
references.

https://github.com/firezone/firezone/actions/runs/9877195625
2024-07-10 18:01:32 +00:00
Thomas Eizinger
79b14d4399 ci: don't build optimised Rust tests (#5805)
In #5786, we massively increase the performance of `tunnel_test` and
thus, it is no longer necessary to build all tests using optimisation
level 1. Windows is very slow in compiling Rust and forcing it to
compile with optimisations doesn't help that.

On `main`, the compile phase takes ~ **8min**:
https://github.com/firezone/firezone/actions/runs/9847792756/job/27188488313#step:5:968

With this patch, the compile phase takes ~**6min**:
https://github.com/firezone/firezone/actions/runs/9849448280/job/27193128597?pr=5805#step:5:967
2024-07-09 13:17:07 +00:00
Jamil
ef3b4e5dfe feat(linux-gui): Bump GUI to 1.1.5 for arm64 support (#5800) 2024-07-08 21:58:10 -07:00
Jamil
cd1b46c8f5 fix(ci): Install GH CLI on arm runners (#5802)
`main` failure:

https://github.com/firezone/firezone/actions/runs/9847918080/job/27190842443

Opened an issue:
https://github.com/actions/runner-images/issues/10192

gh cli instructions:

https://github.com/cli/cli/blob/trunk/docs/install_linux.md#debian-ubuntu-linux-raspberry-pi-os-apt
2024-07-09 02:56:24 +00:00
Reactor Scram
e0326be807 ci(gui-client/linux): see if we can build the GUI Client for ARM (#5793)
This would make it a little easier to replicate prod issues on old
releases

```[tasklist]
### Tasks
- [x] Add comment to changelog
- [x] Check Vercel preview
- [x] Request review
- [x] Update arches link
- [x] `apt-get update`
- [x] Re-request review
```
2024-07-08 21:30:48 +00:00
Jamil
1b7338e5c3 fix(website): fix sha of deployed portal (#5782)
Needs a storage key, not an env var to read.
2024-07-06 17:25:00 -07:00
Jamil
e39ce22b36 chore: Publish new linux/windows clients (#5767)
Adds the DNS fix.
2024-07-05 13:19:30 -07:00
Reactor Scram
d0f68fc133 test(gui-client): multi-process smoke test for GUI + IPC service (#5672)
```[tasklist]
### Tasks
- [x] Check the GUI saves its settings file
- [x] Check the IPC service writes the device ID to disk
- [x] Check the GUI writes a log file (skipped - we already check if the exported zip has any files in it)
- [x] Run the crash file through `minidump-stackwalk`
- [x] Reach feature parity with the original smoke tests
- [x] Ready for review
- [x] Finish #5452
- [ ] Start on #5453 
```
2024-07-04 21:10:31 +00:00
Jamil
086c730aaf chore: Bump clients to 1.1.2 for DNS record type forward (#5703)
Apps are already in review with App Stores
2024-07-04 01:31:26 +00:00
Jamil
3b0f54ec3c ci: Push infra images to ghcr.io (#5669)
Fixes #5447

---------

Signed-off-by: Jamil <jamilbk@users.noreply.github.com>
2024-07-03 19:36:06 +00:00
dependabot[bot]
c5bf5f118c build(deps): Bump docker/build-push-action from 5 to 6 (#5652)
Bumps
[docker/build-push-action](https://github.com/docker/build-push-action)
from 5 to 6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/docker/build-push-action/releases">docker/build-push-action's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.0</h2>
<ul>
<li>Export build record and generate <a
href="https://docs.docker.com/build/ci/github-actions/build-summary/">build
summary</a> by <a
href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a
href="https://redirect.github.com/docker/build-push-action/pull/1120">docker/build-push-action#1120</a></li>
<li>Bump <code>@​docker/actions-toolkit</code> from 0.24.0 to 0.26.0 in
<a
href="https://redirect.github.com/docker/build-push-action/pull/1132">docker/build-push-action#1132</a>
<a
href="https://redirect.github.com/docker/build-push-action/pull/1136">docker/build-push-action#1136</a>
<a
href="https://redirect.github.com/docker/build-push-action/pull/1138">docker/build-push-action#1138</a></li>
<li>Bump braces from 3.0.2 to 3.0.3 in <a
href="https://redirect.github.com/docker/build-push-action/pull/1137">docker/build-push-action#1137</a></li>
</ul>
<blockquote>
<p>[!NOTE]
This major release adds support for generating <a
href="https://docs.docker.com/build/ci/github-actions/build-summary/">Build
summary</a> and exporting build record for your build. You can disable
this feature by setting <a
href="https://docs.docker.com/build/ci/github-actions/build-summary/#disable-job-summary">
<code>DOCKER_BUILD_NO_SUMMARY: true</code> environment variable in your
workflow</a>.</p>
</blockquote>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/docker/build-push-action/compare/v5.4.0...v6.0.0">https://github.com/docker/build-push-action/compare/v5.4.0...v6.0.0</a></p>
<h2>v5.4.0</h2>
<ul>
<li>Show builder information before building by <a
href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a
href="https://redirect.github.com/docker/build-push-action/pull/1128">docker/build-push-action#1128</a></li>
<li>Handle attestations correctly with provenance and sbom inputs by <a
href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a
href="https://redirect.github.com/docker/build-push-action/pull/1086">docker/build-push-action#1086</a></li>
<li>Bump <code>@​docker/actions-toolkit</code> from 0.19.0 to 0.24.0 in
<a
href="https://redirect.github.com/docker/build-push-action/pull/1088">docker/build-push-action#1088</a>
<a
href="https://redirect.github.com/docker/build-push-action/pull/1105">docker/build-push-action#1105</a>
<a
href="https://redirect.github.com/docker/build-push-action/pull/1121">docker/build-push-action#1121</a>
<a
href="https://redirect.github.com/docker/build-push-action/pull/1127">docker/build-push-action#1127</a></li>
<li>Bump undici from 5.28.3 to 5.28.4 in <a
href="https://redirect.github.com/docker/build-push-action/pull/1090">docker/build-push-action#1090</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/docker/build-push-action/compare/v5.3.0...v5.4.0">https://github.com/docker/build-push-action/compare/v5.3.0...v5.4.0</a></p>
<h2>v5.3.0</h2>
<ul>
<li>Bump <code>@​docker/actions-toolkit</code> from 0.18.0 to 0.19.0 in
<a
href="https://redirect.github.com/docker/build-push-action/pull/1080">docker/build-push-action#1080</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/docker/build-push-action/compare/v5.2.0...v5.3.0">https://github.com/docker/build-push-action/compare/v5.2.0...v5.3.0</a></p>
<h2>v5.2.0</h2>
<ul>
<li>Disable quotes detection for <code>outputs</code> input by <a
href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a
href="https://redirect.github.com/docker/build-push-action/pull/1074">docker/build-push-action#1074</a></li>
<li>Warn about ignored inputs by <a
href="https://github.com/favonia"><code>@​favonia</code></a> in <a
href="https://redirect.github.com/docker/build-push-action/pull/1019">docker/build-push-action#1019</a></li>
<li>Bump <code>@​docker/actions-toolkit</code> from 0.14.0 to 0.18.0 in
<a
href="https://redirect.github.com/docker/build-push-action/pull/1070">docker/build-push-action#1070</a></li>
<li>Bump undici from 5.26.3 to 5.28.3 in <a
href="https://redirect.github.com/docker/build-push-action/pull/1057">docker/build-push-action#1057</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/docker/build-push-action/compare/v5.1.0...v5.2.0">https://github.com/docker/build-push-action/compare/v5.1.0...v5.2.0</a></p>
<h2>v5.1.0</h2>
<ul>
<li>Add <code>annotations</code> input by <a
href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a
href="https://redirect.github.com/docker/build-push-action/pull/992">docker/build-push-action#992</a></li>
<li>Add <code>secret-envs</code> input by <a
href="https://github.com/elias-lundgren"><code>@​elias-lundgren</code></a>
in <a
href="https://redirect.github.com/docker/build-push-action/pull/980">docker/build-push-action#980</a></li>
<li>Bump <code>@​babel/traverse</code> from 7.17.3 to 7.23.2 in <a
href="https://redirect.github.com/docker/build-push-action/pull/991">docker/build-push-action#991</a></li>
<li>Bump <code>@​docker/actions-toolkit</code> from 0.13.0-rc.1 to
0.14.0 in <a
href="https://redirect.github.com/docker/build-push-action/pull/990">docker/build-push-action#990</a>
<a
href="https://redirect.github.com/docker/build-push-action/pull/1006">docker/build-push-action#1006</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/docker/build-push-action/compare/v5.0.0...v5.1.0">https://github.com/docker/build-push-action/compare/v5.0.0...v5.1.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="15560696de"><code>1556069</code></a>
Merge pull request <a
href="https://redirect.github.com/docker/build-push-action/issues/1158">#1158</a>
from docker/dependabot/npm_and_yarn/docker/actions-t...</li>
<li><a
href="57e1d34ac3"><code>57e1d34</code></a>
chore: update generated content</li>
<li><a
href="309982ebc9"><code>309982e</code></a>
chore(deps): Bump <code>@​docker/actions-toolkit</code> from 0.27.0 to
0.28.0</li>
<li><a
href="9476c25b2a"><code>9476c25</code></a>
Merge pull request <a
href="https://redirect.github.com/docker/build-push-action/issues/1153">#1153</a>
from crazy-max/export-retention</li>
<li><a
href="97be5a4928"><code>97be5a4</code></a>
chore: update generated content</li>
<li><a
href="9cac6c8ea0"><code>9cac6c8</code></a>
use default retention days for build export artifact</li>
<li><a
href="31159d49c0"><code>31159d4</code></a>
Merge pull request <a
href="https://redirect.github.com/docker/build-push-action/issues/1149">#1149</a>
from docker/dependabot/npm_and_yarn/docker/actions-t...</li>
<li><a
href="07e1c3e148"><code>07e1c3e</code></a>
chore: update generated content</li>
<li><a
href="f7febd621d"><code>f7febd6</code></a>
chore(deps): Bump <code>@​docker/actions-toolkit</code> from 0.26.2 to
0.27.0</li>
<li><a
href="f6010ea701"><code>f6010ea</code></a>
Merge pull request <a
href="https://redirect.github.com/docker/build-push-action/issues/1147">#1147</a>
from docker/dependabot/npm_and_yarn/docker/actions-t...</li>
<li>Additional commits viewable in <a
href="https://github.com/docker/build-push-action/compare/v5...v6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=docker/build-push-action&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-07-01 13:23:59 +00:00
Jamil
25b6528942 chore: Bump versions and update changelog (#5636)
Signed-off-by: Jamil <jamilbk@users.noreply.github.com>
2024-06-29 09:06:10 -07:00
Thomas Eizinger
04476880e7 ci: only set up runtime tauri deps for smoke tests (#5632)
Setting up Tauri's runtime dependencies takes about a minute and is
unnecessary for the Rust unit tests. The Rust Windows unit tests jobs
are amongst the slowest and thus impact the overall CI runtime.

See
https://github.com/firezone/firezone/actions/runs/9719218798/job/26828616349
for a recent run on `main`.

---------

Signed-off-by: Thomas Eizinger <thomas@eizinger.io>
Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
2024-06-29 05:35:11 +00:00
Thomas Eizinger
839292b1e3 ci: use sccache for building Tauri clients (#5617)
Using sccache results in a more efficient cache usage. GitHub's built-in
cache appears to grow over time and takes ~3minutes to download for the
Windows Tauri builds where it is ~2GB large.

Whilst researching bad performance on Windows runners in general, I came
across the hint to disable Windows defender which appears to slow things
down massively in the case of sccache which performs many small network
downloads and file writes.

This PR harmonizes our cache usage and prefers sccache over GitHub's
cache for everything apart from `cross` builds. The runtimes are either
roughly the same or noticeably better. Overally, the GUI smoke tests are
usually among the last ones to finish, meaning these changes should have
an overall net-positive impact on CI time.


|[`main`](https://github.com/firezone/firezone/actions/runs/9707704927)|[`head`](https://github.com/firezone/firezone/actions/runs/9709368060)|
|---|---|
|![Screenshot from 2024-06-28
17-55-14](https://github.com/firezone/firezone/assets/5486389/63433f24-d6de-4651-8bd8-ed1eb4b5b445)|![Screenshot
from 2024-06-28
17-59-33](https://github.com/firezone/firezone/assets/5486389/b82dd643-dd48-4c7f-9322-6bd45ab0fa70)|
|![Screenshot from 2024-06-28
17-55-17](https://github.com/firezone/firezone/assets/5486389/bc06fdb7-744a-4232-8e4f-c9bd7fd3c278)|![Screenshot
from 2024-06-28
17-59-39](https://github.com/firezone/firezone/assets/5486389/0b0b5207-7d77-4ed4-94d9-1306878e552a)|
|![Screenshot from 2024-06-28
17-55-21](https://github.com/firezone/firezone/assets/5486389/a2187475-8678-4c6b-afef-a96575943c98)|![Screenshot
from 2024-06-28
17-59-44](https://github.com/firezone/firezone/assets/5486389/90e9d335-536e-472a-846c-7ae0edf336fc)|
|![Screenshot from 2024-06-28
17-55-28](https://github.com/firezone/firezone/assets/5486389/a239f4f9-8c3b-4742-8b20-22e903082310)|![Screenshot
from 2024-06-28
17-59-50](https://github.com/firezone/firezone/assets/5486389/be718857-e217-464a-b4e2-515e5ad4c48c)|
|![Screenshot from 2024-06-28
17-55-33](https://github.com/firezone/firezone/assets/5486389/25b2ff75-c5d2-46f0-ab7e-702f2202e3c7)|![Screenshot
from 2024-06-28
17-59-55](https://github.com/firezone/firezone/assets/5486389/7e1ca3a8-dabc-4501-99bc-ff7993886e8f)|
|![Screenshot from 2024-06-28
17-55-37](https://github.com/firezone/firezone/assets/5486389/121a943d-db08-484a-8450-a0b8ca35cd10)|![Screenshot
from 2024-06-28
18-01-51](https://github.com/firezone/firezone/assets/5486389/d1cc137f-0898-4fdb-9798-e473195346a8)|
2024-06-28 22:28:21 +00:00
Thomas Eizinger
d3a091f90b ci: pre-install required tools for smoke tests (#5620)
Currently, the smoke tests rebuild the `dump_syms` and
`minidump-stackwalk` tools from scratch every time which is slow,
especially on Windows.

We can speed this up by utilising the `taiki-e/install-action` GitHub
action which discovers and downloads the latest binary releases of those
projects and installs them into $PATH.

I think those binaries might also be cached as part of the Rust cache
action (https://github.com/Swatinem/rust-cache) so the visible speed-up
is only within a few seconds and comes from the binaries not being
re-built inside the script.

Caching those binaries on Github still requires us to build them at
least once and also rebuild them in case the cache gets invalidated.
Hence I still think this is a good idea on its own.
2024-06-28 21:19:43 +00:00
Jamil
d529ace29c chore: Bump Windows to 1.1.1, update changelog with dl links (#5610)
Fixes #5597
2024-06-27 20:53:00 -07:00
Reactor Scram
0d3b1314a0 ci(kotlin): replace deprecated Github actions (#5600)
Closes #5599


https://github.com/gradle/actions/blob/main/docs/deprecation-upgrade-guide.md#the-action-gradlegradle-build-action-has-been-replaced-by-gradleactionssetup-gradle
2024-06-27 16:23:16 +00:00
Jamil
b5de55ac26 chore: Bump clients to 1.1.0, Gateway to 1.1.1 (#5591) 2024-06-27 02:43:48 -07:00
Jamil
444faaf911 fix(ci): restore version naming in _build_artifacts.yml (#5592)
Reverts part of #5487 to fix empty version numbers in release artifacts.
2024-06-27 02:08:31 -07:00
Thomas Eizinger
7e0a1f8511 ci(android): name jobs consistenly (#5580)
Renames the old `build` job to `build-release` for consistency with
`build-debug`.

---------

Signed-off-by: Thomas Eizinger <thomas@eizinger.io>
2024-06-27 04:48:41 +00:00
Thomas Eizinger
24dd85f8b1 ci(android): build and upload debug APK (#5574)
In order to make it easier to test PRs that affect Android, this patch
adds an additional CI job that builds a debug APK that can be installed
on any Android device right away.
2024-06-27 03:53:35 +00:00
Jamil
2d7162aa7b feat(website): Add deployed sha to changelog page (#5520)
It would be good to track the currently deployed SHA in production.

refs #5447
2024-06-24 14:02:01 -07:00
Reactor Scram
28378fe24e refactor(headless-client): remove FIREZONE_PACKAGE_VERSION (#5487)
Closes #5481 

With this, I can connect to the staging portal without a build.rs or any
extra env var setup

<img width="387" alt="image"
src="https://github.com/firezone/firezone/assets/13400041/9c080b36-3a76-49c7-b706-20723697edc7">


```[tasklist]
### Next steps
- [x] Split out a refactor PR for `ConnectArgs` (#5488)
- [x] Try doing this for other Clients
- [x] Check Gateway
- [x] Check Tauri Client
- [x] Change to `app_version`
- [x] Open for review
- [ ] Use `option_env` so that `FIREZONE_PACKAGE_VERSION` can still override the Cargo.toml version for local testing
- [ ] Check Android Client
- [ ] Check Apple Client
```

---------

Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com>
2024-06-21 23:06:41 +00:00
Jamil
b4cde74bee chore: Bump client next versions to 1.1.0 (#5485) 2024-06-21 16:31:43 +00:00
Jamil
04585874cf chore: Bump cur Gateway version to 1.1.0 (#5461) 2024-06-19 23:44:16 -07:00
Jamil
113347558a chore: Next Gateway version 1.1.0 (#5458)
This will draft the 1.1.0 release and version artifacts correctly.
2024-06-20 04:17:05 +00:00
Jamil
13b26fecf4 ci: Bump GUI client to 1.0.9 (#5431) 2024-06-18 14:48:17 -07:00
Jamil
b64cfdced3 ci: Address missed PR feedback regarding retrying failing elixir unit tests (#5421)
fixes #5420
2024-06-18 16:35:54 +00:00