ci: Ship SRV/TXT for GUI/Headless/Gateway (#8413)

This commit is contained in:
Jamil
2025-03-10 21:30:23 -07:00
committed by GitHub
parent 641aaa7b4f
commit df5bbdd240
16 changed files with 58 additions and 51 deletions

View File

@@ -131,9 +131,9 @@ jobs:
target: [x86_64-pc-windows-msvc]
package: [firezone-headless-client]
# mark:next-headless-version
release_name: [headless-client-1.4.4]
release_name: [headless-client-1.4.5]
# mark:next-headless-version
version: [1.4.4]
version: [1.4.5]
env:
ARTIFACT_PATH: ${{ matrix.artifact }}_${{ matrix.version }}_${{ matrix.arch }}.exe
RELEASE_NAME: ${{ matrix.release_name }}
@@ -215,9 +215,9 @@ jobs:
artifact: firezone-client-headless-linux
image_name: client
# mark:next-headless-version
release_name: headless-client-1.4.4
release_name: headless-client-1.4.5
# mark:next-headless-version
version: 1.4.4
version: 1.4.5
- package: firezone-relay
artifact: firezone-relay
image_name: relay
@@ -225,9 +225,9 @@ jobs:
artifact: firezone-gateway
image_name: gateway
# mark:next-gateway-version
release_name: gateway-1.4.5
release_name: gateway-1.4.6
# mark:next-gateway-version
version: 1.4.5
version: 1.4.6
- package: http-test-server
artifact: http-test-server
image_name: http-test-server
@@ -407,7 +407,7 @@ jobs:
- name: relay
- name: gateway
# mark:next-gateway-version
version: 1.4.5
version: 1.4.6
- name: client
# mark:next-client-version
version: 1.0.6

View File

@@ -18,7 +18,7 @@ jobs:
runs-on: ubuntu-22.04
env:
# mark:next-gui-version
RELEASE_NAME: gui-client-1.4.8
RELEASE_NAME: gui-client-1.4.9
steps:
- uses: release-drafter/release-drafter@b1476f6e6eb133afa41ed8589daba6dc69b4d3f5 # v6.1.0
if: "${{ github.event_name == 'workflow_dispatch' && github.ref_name == 'main' }}"
@@ -57,19 +57,19 @@ jobs:
pkg-extension: msi
env:
# mark:next-gui-version
ARTIFACT_SRC: ./rust/gui-client/firezone-client-gui-${{ matrix.os }}_1.4.8_${{ matrix.arch }}
ARTIFACT_SRC: ./rust/gui-client/firezone-client-gui-${{ matrix.os }}_1.4.9_${{ matrix.arch }}
# mark:next-gui-version
ARTIFACT_DST: firezone-client-gui-${{ matrix.os }}_1.4.8_${{ matrix.arch }}
ARTIFACT_DST: firezone-client-gui-${{ matrix.os }}_1.4.9_${{ matrix.arch }}
AZURE_KEY_VAULT_URI: ${{ secrets.AZURE_KEY_VAULT_URI }}
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
AZURE_CERT_NAME: ${{ secrets.AZURE_CERT_NAME }}
# mark:next-gui-version
BINARY_DEST_PATH: firezone-client-gui-${{ matrix.os }}_1.4.8_${{ matrix.arch }}
BINARY_DEST_PATH: firezone-client-gui-${{ matrix.os }}_1.4.9_${{ matrix.arch }}
# Seems like there's no way to de-dupe env vars that depend on each other
# mark:next-gui-version
FIREZONE_GUI_VERSION: 1.4.8
FIREZONE_GUI_VERSION: 1.4.9
RENAME_SCRIPT: ../../scripts/build/tauri-rename-${{ matrix.os }}.sh
TEST_INSTALL_SCRIPT: ../../scripts/tests/gui-client-install-${{ matrix.os }}-${{ matrix.pkg-extension }}.sh
TARGET_DIR: ../target

View File

@@ -47,10 +47,10 @@ jobs:
matrix:
include:
# mark:next-gateway-version
- release_name: gateway-1.4.5
- release_name: gateway-1.4.6
config_name: release-drafter-gateway.yml
# mark:next-headless-version
- release_name: headless-client-1.4.4
- release_name: headless-client-1.4.5
config_name: release-drafter-headless-client.yml
steps:

View File

@@ -38,11 +38,11 @@ jobs:
if [[ "${{ github.event.release.name }}" =~ gateway* ]]; then
ARTIFACT=gateway
# mark:next-gateway-version
VERSION="1.4.5"
VERSION="1.4.6"
elif [[ "${{ github.event.release.name }}" =~ headless* ]]; then
ARTIFACT=client
# mark:next-headless-version
VERSION="1.4.4"
VERSION="1.4.5"
else
echo "Shouldn't have gotten here. Exiting."
exit 1

8
rust/Cargo.lock generated
View File

@@ -2012,7 +2012,7 @@ dependencies = [
[[package]]
name = "firezone-gateway"
version = "1.4.5"
version = "1.4.6"
dependencies = [
"anyhow",
"async-trait",
@@ -2055,7 +2055,7 @@ dependencies = [
[[package]]
name = "firezone-gui-client"
version = "1.4.8"
version = "1.4.9"
dependencies = [
"anyhow",
"atomicwrites",
@@ -2100,7 +2100,7 @@ dependencies = [
[[package]]
name = "firezone-gui-client-common"
version = "1.4.8"
version = "1.4.9"
dependencies = [
"anyhow",
"arboard",
@@ -2142,7 +2142,7 @@ dependencies = [
[[package]]
name = "firezone-headless-client"
version = "1.4.4"
version = "1.4.5"
dependencies = [
"anyhow",
"atomicwrites",

View File

@@ -1,7 +1,7 @@
[package]
name = "firezone-gateway"
# mark:next-gateway-version
version = "1.4.5"
version = "1.4.6"
edition = { workspace = true }
license = { workspace = true }
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

View File

@@ -1,7 +1,7 @@
[package]
name = "firezone-gui-client-common"
# mark:next-gui-version
version = "1.4.8"
version = "1.4.9"
edition = { workspace = true }
license = { workspace = true }

View File

@@ -1,7 +1,7 @@
[package]
name = "firezone-gui-client"
# mark:next-gui-version
version = "1.4.8"
version = "1.4.9"
description = "Firezone"
edition = { workspace = true }
default-run = "firezone-gui-client"

View File

@@ -1,7 +1,7 @@
[package]
name = "firezone-headless-client"
# mark:next-headless-version
version = "1.4.4"
version = "1.4.5"
edition = { workspace = true }
authors = ["Firezone, Inc."]
license = { workspace = true }

View File

@@ -588,7 +588,7 @@ impl<'a> Handler<'a> {
// The IPC service must use the GUI's version number, not the Headless Client's.
// But refactoring to separate the IPC service from the Headless Client will take a while.
// mark:next-gui-version
get_user_agent(None, "1.4.8"),
get_user_agent(None, "1.4.9"),
"client",
(),
|| {

View File

@@ -107,8 +107,8 @@ function android() {
# 5. Commit the changes and open a PR. Ensure the Changelog is correctly
# updated with the changes.
function gui() {
current_gui_version="1.4.7"
next_gui_version="1.4.8"
current_gui_version="1.4.8"
next_gui_version="1.4.9"
find website -type f -name "redirects.js" -exec sed "${SEDARG[@]}" -e '/mark:current-gui-version/{n;s/[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}/'"${current_gui_version}"'/g;}' {} \;
find website -type f -name "route.ts" -exec sed "${SEDARG[@]}" -e '/mark:current-gui-version/{n;s/[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}/'"${current_gui_version}"'/g;}' {} \;
@@ -131,8 +131,8 @@ function gui() {
# 4. Commit the changes and open a PR. Ensure the Changelog is correctly
# updated with the changes.
function headless() {
current_headless_version="1.4.3"
next_headless_version="1.4.4"
current_headless_version="1.4.4"
next_headless_version="1.4.5"
find website -type f -name "redirects.js" -exec sed "${SEDARG[@]}" -e '/mark:current-headless-version/{n;s/[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}/'"${current_headless_version}"'/g;}' {} \;
find website -type f -name "route.ts" -exec sed "${SEDARG[@]}" -e '/mark:current-headless-version/{n;s/[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}/'"${current_headless_version}"'/g;}' {} \;
@@ -154,8 +154,8 @@ function headless() {
# 4. Commit the changes and open a PR. Ensure the Changelog is correctly
# updated with the changes.
function gateway() {
current_gateway_version="1.4.4"
next_gateway_version="1.4.5"
current_gateway_version="1.4.5"
next_gateway_version="1.4.6"
find website -type f -name "redirects.js" -exec sed "${SEDARG[@]}" -e '/mark:current-gateway-version/{n;s/[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}/'"${current_gateway_version}"'/g;}' {} \;
find website -type f -name "route.ts" -exec sed "${SEDARG[@]}" -e '/mark:current-gateway-version/{n;s/[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}/'"${current_gateway_version}"'/g;}' {} \;

View File

@@ -34,7 +34,7 @@ module.exports = [
source: "/dl/firezone-client-gui-windows/latest/x86_64",
destination:
// mark:current-gui-version
"https://www.github.com/firezone/firezone/releases/download/gui-client-1.4.7/firezone-client-gui-windows_1.4.7_x86_64.msi",
"https://www.github.com/firezone/firezone/releases/download/gui-client-1.4.8/firezone-client-gui-windows_1.4.8_x86_64.msi",
permanent: false,
},
/*
@@ -46,7 +46,7 @@ module.exports = [
source: "/dl/firezone-client-headless-windows/latest/x86_64",
destination:
// mark:current-headless-version
"https://www.github.com/firezone/firezone/releases/download/headless-client-1.4.3/firezone-client-headless-windows_1.4.3_x86_64.exe",
"https://www.github.com/firezone/firezone/releases/download/headless-client-1.4.4/firezone-client-headless-windows_1.4.4_x86_64.exe",
permanent: false,
},
/*
@@ -58,35 +58,35 @@ module.exports = [
source: "/dl/firezone-client-gui-linux/latest/x86_64",
destination:
// mark:current-gui-version
"https://www.github.com/firezone/firezone/releases/download/gui-client-1.4.7/firezone-client-gui-linux_1.4.7_x86_64.deb",
"https://www.github.com/firezone/firezone/releases/download/gui-client-1.4.8/firezone-client-gui-linux_1.4.8_x86_64.deb",
permanent: false,
},
{
source: "/dl/firezone-client-gui-linux/latest/aarch64",
destination:
// mark:current-gui-version
"https://www.github.com/firezone/firezone/releases/download/gui-client-1.4.7/firezone-client-gui-linux_1.4.7_aarch64.deb",
"https://www.github.com/firezone/firezone/releases/download/gui-client-1.4.8/firezone-client-gui-linux_1.4.8_aarch64.deb",
permanent: false,
},
{
source: "/dl/firezone-client-headless-linux/latest/x86_64",
destination:
// mark:current-headless-version
"https://www.github.com/firezone/firezone/releases/download/headless-client-1.4.3/firezone-client-headless-linux_1.4.3_x86_64",
"https://www.github.com/firezone/firezone/releases/download/headless-client-1.4.4/firezone-client-headless-linux_1.4.4_x86_64",
permanent: false,
},
{
source: "/dl/firezone-client-headless-linux/latest/aarch64",
destination:
// mark:current-headless-version
"https://www.github.com/firezone/firezone/releases/download/headless-client-1.4.3/firezone-client-headless-linux_1.4.3_aarch64",
"https://www.github.com/firezone/firezone/releases/download/headless-client-1.4.4/firezone-client-headless-linux_1.4.4_aarch64",
permanent: false,
},
{
source: "/dl/firezone-client-headless-linux/latest/armv7",
destination:
// mark:current-headless-version
"https://www.github.com/firezone/firezone/releases/download/headless-client-1.4.3/firezone-client-headless-linux_1.4.3_armv7",
"https://www.github.com/firezone/firezone/releases/download/headless-client-1.4.4/firezone-client-headless-linux_1.4.4_armv7",
permanent: false,
},
/*
@@ -98,21 +98,21 @@ module.exports = [
source: "/dl/firezone-gateway/latest/x86_64",
destination:
// mark:current-gateway-version
"https://www.github.com/firezone/firezone/releases/download/gateway-1.4.4/firezone-gateway_1.4.4_x86_64",
"https://www.github.com/firezone/firezone/releases/download/gateway-1.4.5/firezone-gateway_1.4.5_x86_64",
permanent: false,
},
{
source: "/dl/firezone-gateway/latest/aarch64",
destination:
// mark:current-gateway-version
"https://www.github.com/firezone/firezone/releases/download/gateway-1.4.4/firezone-gateway_1.4.4_aarch64",
"https://www.github.com/firezone/firezone/releases/download/gateway-1.4.5/firezone-gateway_1.4.5_aarch64",
permanent: false,
},
{
source: "/dl/firezone-gateway/latest/armv7",
destination:
// mark:current-gateway-version
"https://www.github.com/firezone/firezone/releases/download/gateway-1.4.4/firezone-gateway_1.4.4_armv7",
"https://www.github.com/firezone/firezone/releases/download/gateway-1.4.5/firezone-gateway_1.4.5_armv7",
permanent: false,
},
/*

View File

@@ -9,11 +9,11 @@ export async function GET(_req: NextRequest) {
// mark:current-android-version
android: "1.4.2",
// mark:current-gui-version
gui: "1.4.7",
gui: "1.4.8",
// mark:current-headless-version
headless: "1.4.3",
headless: "1.4.4",
// mark:current-gateway-version
gateway: "1.4.4",
gateway: "1.4.5",
};
return NextResponse.json(versions, {

View File

@@ -8,12 +8,13 @@ export default function GUI({ os }: { os: OS }) {
return (
<Entries downloadLinks={downloadLinks(os)} title={title(os)}>
{/* When you cut a release, remove any solved issues from the "known issues" lists over in `client-apps`. This must not be done when the issue's PR merges. */}
<Unreleased>
<Unreleased></Unreleased>
<Entry version="1.4.8" date={new Date("2025-03-10")}>
<ChangeItem pull="8286">
Fixes a bug that prevented certain Resource fields from being updated
when they were updated in the admin portal.
</ChangeItem>
</Unreleased>
</Entry>
<Entry version="1.4.7" date={new Date("2025-02-26")}>
{os === OS.Linux && (
<ChangeItem pull="8219">

View File

@@ -22,7 +22,8 @@ export default function Gateway() {
return (
<Entries downloadLinks={downloadLinks} title="Gateway">
<Unreleased>
<Unreleased></Unreleased>
<Entry version="1.4.5" date={new Date("2025-03-10")}>
<ChangeItem pull="8124">
Fixes a bug in the routing of DNS resources that would lead to "Source
not allowed" errors in the Client logs.
@@ -30,7 +31,7 @@ export default function Gateway() {
<ChangeItem pull="8225">
Caches successful DNS queries for DNS resource domains for 30 seconds.
</ChangeItem>
</Unreleased>
</Entry>
<Entry version="1.4.4" date={new Date("2025-02-11")}>
<ChangeItem pull="7944">
Fixes an edge case where a busy Gateway could experience a deadlock

View File

@@ -9,13 +9,18 @@ export default function Headless({ os }: { os: OS }) {
return (
<Entries downloadLinks={downloadLinks(os)} title={title(os)}>
{/* When you cut a release, remove any solved issues from the "known issues" lists over in `client-apps`. This must not be done when the issue's PR merges. */}
<Unreleased>
{os === OS.Linux && (
<Unreleased></Unreleased>
<Entry version="1.4.4" date={new Date("2025-03-10")}>
{(os === OS.Linux && (
<ChangeItem pull="8117">
Fixes an upload speed performance regression.
</ChangeItem>
)) || (
<ChangeItem>
This is a maintenance release with no user-facing changes.
</ChangeItem>
)}
</Unreleased>
</Entry>
<Entry version="1.4.3" date={new Date("2025-02-11")}>
<ChangeItem pull="8055">
Hides the <code>--check</code> and <code>--exit</code> CLI options