From 3dadcfabe235510c768c0533791950f8f52373b4 Mon Sep 17 00:00:00 2001 From: Anton Baliasnikov Date: Tue, 3 Dec 2024 15:02:09 +0000 Subject: [PATCH 1/4] ci: automate stable releases with release-plz --- .github/workflows/release-plz.yaml | 15 +++++++++++++++ release-plz.toml | 14 ++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 .github/workflows/release-plz.yaml create mode 100644 release-plz.toml diff --git a/.github/workflows/release-plz.yaml b/.github/workflows/release-plz.yaml new file mode 100644 index 000000000..37be0f63e --- /dev/null +++ b/.github/workflows/release-plz.yaml @@ -0,0 +1,15 @@ +name: Release-plz + +on: + push: + branches: + - main + +jobs: + + release: + uses: matter-labs/zksync-ci-common/.github/workflows/release-plz.yaml@v1 + secrets: + gh_token: ${{ secrets.RELEASE_TOKEN }} + cargo_registry_token: ${{ secrets.CRATES_IO_TOKEN }} + slack_webhook: ${{ secrets.SLACK_WEBHOOK_RELEASES }} diff --git a/release-plz.toml b/release-plz.toml new file mode 100644 index 000000000..b1d92205b --- /dev/null +++ b/release-plz.toml @@ -0,0 +1,14 @@ +[workspace] +dependencies_update = true # Whether to run `cargo update` in the release PR +pr_name = "release: zksync-foundry {{version}}" # template for the PR name +pr_labels = ["release", "automated"] # Set PR labels +changelog_update = false # Disable individual changelog updates for all packages. +git_tag_enable = false # Disable individual tags for all packages. +git_release_enable = false # Disable individual releases for all packages. +semver_check = true # Enable API breaking changes checks with cargo-semver-checks. + +# Use one main package for a common tag for all workspace crates +[[package]] +name = "forge" +git_tag_enable = true # Enable one common tag for all crates +git_tag_name = "v{{version}}" # Tag name From 50cec62ad97da247e84181123f9c7dbbab805671 Mon Sep 17 00:00:00 2001 From: Anton Baliasnikov Date: Tue, 3 Dec 2024 15:35:10 +0000 Subject: [PATCH 2/4] Update release-plz.toml Co-authored-by: Nisheeth Barthwal --- release-plz.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release-plz.toml b/release-plz.toml index b1d92205b..54b661dad 100644 --- a/release-plz.toml +++ b/release-plz.toml @@ -1,6 +1,6 @@ [workspace] dependencies_update = true # Whether to run `cargo update` in the release PR -pr_name = "release: zksync-foundry {{version}}" # template for the PR name +pr_name = "release: foundry-zksync {{version}}" # template for the PR name pr_labels = ["release", "automated"] # Set PR labels changelog_update = false # Disable individual changelog updates for all packages. git_tag_enable = false # Disable individual tags for all packages. From 9e9e8ffd712da4697e2a36c9f73adcd10cdd03b3 Mon Sep 17 00:00:00 2001 From: Anton Baliasnikov Date: Wed, 4 Dec 2024 15:25:29 +0000 Subject: [PATCH 3/4] Disable semver check and update tag name --- .github/workflows/release.yml | 2 +- release-plz.toml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a41e4f2a0..2b386d180 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -3,7 +3,7 @@ name: release on: push: tags: - - "v*.*.*" + - "*-zksync.*" schedule: - cron: "0 0 * * *" workflow_dispatch: diff --git a/release-plz.toml b/release-plz.toml index 54b661dad..e4c5c68e4 100644 --- a/release-plz.toml +++ b/release-plz.toml @@ -5,10 +5,10 @@ pr_labels = ["release", "automated"] # Set PR labels changelog_update = false # Disable individual changelog updates for all packages. git_tag_enable = false # Disable individual tags for all packages. git_release_enable = false # Disable individual releases for all packages. -semver_check = true # Enable API breaking changes checks with cargo-semver-checks. +semver_check = false # Enable API breaking changes checks with cargo-semver-checks. # Use one main package for a common tag for all workspace crates [[package]] name = "forge" git_tag_enable = true # Enable one common tag for all crates -git_tag_name = "v{{version}}" # Tag name +git_tag_name = "0.2.0-zksync.{{version}}" # Tag name From ec9224875bcb8006182720d1bbc6c7fd63677ac5 Mon Sep 17 00:00:00 2001 From: Anton Baliasnikov Date: Wed, 4 Dec 2024 15:27:00 +0000 Subject: [PATCH 4/4] chore: disable crates.io publishing explicitly --- release-plz.toml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/release-plz.toml b/release-plz.toml index e4c5c68e4..41604fdd0 100644 --- a/release-plz.toml +++ b/release-plz.toml @@ -1,14 +1,15 @@ [workspace] -dependencies_update = true # Whether to run `cargo update` in the release PR +publish = false # Do not publish to crates.io for now +dependencies_update = true # Whether to run `cargo update` in the release PR pr_name = "release: foundry-zksync {{version}}" # template for the PR name -pr_labels = ["release", "automated"] # Set PR labels -changelog_update = false # Disable individual changelog updates for all packages. -git_tag_enable = false # Disable individual tags for all packages. -git_release_enable = false # Disable individual releases for all packages. -semver_check = false # Enable API breaking changes checks with cargo-semver-checks. +pr_labels = ["release", "automated"] # Set PR labels +changelog_update = false # Disable individual changelog updates for all packages. +git_tag_enable = false # Disable individual tags for all packages. +git_release_enable = false # Disable individual releases for all packages. +semver_check = false # Enable API breaking changes checks with cargo-semver-checks. # Use one main package for a common tag for all workspace crates [[package]] name = "forge" -git_tag_enable = true # Enable one common tag for all crates -git_tag_name = "0.2.0-zksync.{{version}}" # Tag name +git_tag_enable = true # Enable one common tag for all crates +git_tag_name = "0.2.0-zksync.{{version}}" # Tag name