Refresh releases page post deploy (#42218)

Release Notes:

- N/A
This commit is contained in:
Conrad Irwin
2025-11-07 13:34:47 -07:00
committed by GitHub
parent 20953ecb9d
commit 19d2fdb6c6
3 changed files with 31 additions and 7 deletions

View File

@@ -6,7 +6,21 @@ on:
types:
- published
jobs:
rebuild_releases_page:
if: github.repository_owner == 'zed-industries'
runs-on: namespace-profile-2x4-ubuntu-2404
steps:
- name: after_release::rebuild_releases_page::refresh_cloud_releases
run: curl -fX POST https://cloud.zed.dev/releases/refresh?expect_tag=${{ github.event.release.tag_name }}
shell: bash -euxo pipefail {0}
- name: after_release::rebuild_releases_page::redeploy_zed_dev
run: npm exec --yes -- vercel@37 --token="$VERCEL_TOKEN" --scope zed-industries redeploy https://zed.dev
shell: bash -euxo pipefail {0}
env:
VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }}
post_to_discord:
needs:
- rebuild_releases_page
if: github.repository_owner == 'zed-industries'
runs-on: namespace-profile-2x4-ubuntu-2404
steps:

View File

@@ -7,29 +7,39 @@ use crate::tasks::workflows::{
};
pub fn after_release() -> Workflow {
// let refresh_zed_dev = rebuild_releases_page();
let post_to_discord = post_to_discord(&[]);
let refresh_zed_dev = rebuild_releases_page();
let post_to_discord = post_to_discord(&[&refresh_zed_dev]);
let publish_winget = publish_winget();
let create_sentry_release = create_sentry_release();
named::workflow()
.on(Event::default().release(Release::default().types(vec![ReleaseType::Published])))
.add_job(refresh_zed_dev.name, refresh_zed_dev.job)
.add_job(post_to_discord.name, post_to_discord.job)
.add_job(publish_winget.name, publish_winget.job)
.add_job(create_sentry_release.name, create_sentry_release.job)
}
#[allow(unused)]
fn rebuild_releases_page() -> NamedJob {
fn refresh_cloud_releases() -> Step<Run> {
named::bash(
"curl -fX POST https://cloud.zed.dev/releases/refresh?expect_tag=${{ github.event.release.tag_name }}",
)
}
fn redeploy_zed_dev() -> Step<Run> {
named::bash("npm exec --yes -- vercel@37 --token=\"$VERCEL_TOKEN\" --scope zed-industries redeploy https://zed.dev")
.add_env(("VERCEL_TOKEN", vars::VERCEL_TOKEN))
}
named::job(
Job::default()
.runs_on(runners::LINUX_SMALL)
.cond(Expression::new(
"github.repository_owner == 'zed-industries'",
))
.add_step(named::bash(
"curl https://zed.dev/api/revalidate-releases -H \"Authorization: Bearer ${RELEASE_NOTES_API_TOKEN}\"",
).add_env(("RELEASE_NOTES_API_TOKEN", vars::RELEASE_NOTES_API_TOKEN))),
.add_step(refresh_cloud_releases())
.add_step(redeploy_zed_dev()),
)
}

View File

@@ -38,7 +38,7 @@ secret!(ZED_ZIPPY_APP_ID);
secret!(ZED_ZIPPY_APP_PRIVATE_KEY);
secret!(DISCORD_WEBHOOK_RELEASE_NOTES);
secret!(WINGET_TOKEN);
secret!(RELEASE_NOTES_API_TOKEN);
secret!(VERCEL_TOKEN);
// todo(ci) make these secrets too...
var!(AZURE_SIGNING_ACCOUNT_NAME);