Detailed changes
@@ -42,12 +42,14 @@ jobs:
fail-fast: false
max-parallel: 5
steps:
- - id: get-app-token
- name: steps::authenticate_as_zippy
- uses: actions/create-github-app-token@bef1eaf1c0ac2b148ee2a0a74c65fbe6db0631f1
+ - id: generate-token
+ name: extension_bump::generate_token
+ uses: actions/create-github-app-token@v2
with:
app-id: ${{ secrets.ZED_ZIPPY_APP_ID }}
private-key: ${{ secrets.ZED_ZIPPY_APP_PRIVATE_KEY }}
+ owner: zed-extensions
+ repositories: ${{ matrix.repo }}
- name: checkout_zed_repo
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
@@ -57,7 +59,7 @@ jobs:
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
clean: false
- token: ${{ steps.get-app-token.outputs.token }}
+ token: ${{ steps.generate-token.outputs.token }}
repository: zed-extensions/${{ matrix.repo }}
path: extension
- name: extension_workflow_rollout::rollout_workflows_to_extension::copy_workflow_files
@@ -86,7 +88,7 @@ jobs:
author: zed-zippy[bot] <234243425+zed-zippy[bot]@users.noreply.github.com>
base: main
delete-branch: true
- token: ${{ steps.get-app-token.outputs.token }}
+ token: ${{ steps.generate-token.outputs.token }}
sign-commits: true
- name: extension_workflow_rollout::rollout_workflows_to_extension::enable_auto_merge
run: |
@@ -97,5 +99,5 @@ jobs:
fi
shell: bash -euxo pipefail {0}
env:
- GH_TOKEN: ${{ steps.get-app-token.outputs.token }}
+ GH_TOKEN: ${{ steps.generate-token.outputs.token }}
timeout-minutes: 10
@@ -101,7 +101,8 @@ fn create_version_label(
app_id: &WorkflowSecret,
app_secret: &WorkflowSecret,
) -> NamedJob {
- let (generate_token, generated_token) = generate_token(app_id, app_secret, None);
+ let (generate_token, generated_token) =
+ generate_token(&app_id.to_string(), &app_secret.to_string(), None);
let job = steps::dependant_job(dependencies)
.cond(Expression::new(format!(
"{DEFAULT_REPOSITORY_OWNER_GUARD} && github.event_name == 'push' && github.ref == 'refs/heads/main' && {} == 'false'",
@@ -181,7 +182,8 @@ fn bump_extension_version(
app_id: &WorkflowSecret,
app_secret: &WorkflowSecret,
) -> NamedJob {
- let (generate_token, generated_token) = generate_token(app_id, app_secret, None);
+ let (generate_token, generated_token) =
+ generate_token(&app_id.to_string(), &app_secret.to_string(), None);
let (bump_version, new_version) = bump_version(current_version, bump_type);
let job = steps::dependant_job(dependencies)
@@ -202,16 +204,16 @@ fn bump_extension_version(
}
pub(crate) fn generate_token(
- app_id: &WorkflowSecret,
- app_secret: &WorkflowSecret,
+ app_id_source: &str,
+ app_secret_source: &str,
repository_target: Option<RepositoryTarget>,
) -> (Step<Use>, StepOutput) {
let step = named::uses("actions", "create-github-app-token", "v2")
.id("generate-token")
.add_with(
Input::default()
- .add("app-id", app_id.to_string())
- .add("private-key", app_secret.to_string())
+ .add("app-id", app_id_source)
+ .add("private-key", app_secret_source)
.when_some(
repository_target,
|input,
@@ -27,8 +27,11 @@ pub(crate) fn extension_release() -> Workflow {
fn create_release(app_id: &WorkflowSecret, app_secret: &WorkflowSecret) -> NamedJob {
let extension_registry = RepositoryTarget::new("zed-industries", &["extensions"]);
- let (generate_token, generated_token) =
- generate_token(&app_id, &app_secret, Some(extension_registry));
+ let (generate_token, generated_token) = generate_token(
+ &app_id.to_string(),
+ &app_secret.to_string(),
+ Some(extension_registry),
+ );
let (get_extension_id, extension_id) = get_extension_id();
let job = Job::default()
@@ -3,9 +3,10 @@ use indoc::indoc;
use serde_json::json;
use crate::tasks::workflows::{
+ extension_bump::{RepositoryTarget, generate_token},
runners,
steps::{self, NamedJob, named},
- vars::StepOutput,
+ vars::{self, StepOutput},
};
const EXCLUDED_REPOS: &[&str] = &["workflows", "material-icon-theme"];
@@ -143,7 +144,14 @@ fn rollout_workflows_to_extension(fetch_repos_job: &NamedJob) -> NamedJob {
.add_env(("GH_TOKEN", token.to_string()))
}
- let (authenticate, token) = steps::authenticate_as_zippy();
+ let (authenticate, token) = generate_token(
+ vars::ZED_ZIPPY_APP_ID,
+ vars::ZED_ZIPPY_APP_PRIVATE_KEY,
+ Some(RepositoryTarget::new(
+ "zed-extensions",
+ &["${{ matrix.repo }}"],
+ )),
+ );
let (calculate_short_sha, short_sha) = get_short_sha();
let job = Job::default()