Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[v8] Online release process with Github Actions #2265

Merged
merged 8 commits into from
Apr 19, 2022

Conversation

a-b
Copy link
Member

@a-b a-b commented Mar 11, 2022

The current state of CF CLI release infrastructure is offline and quite outdated. To make our release process more transparent and inclusive we decided to move to build, signing, and release processes online to Github Actions

a-b and others added 6 commits March 11, 2022 09:01
Current state of CF CLI release infrastructure is offline and quite
outdated. To make our release process more transparent and inclusive we
decided to move build, signing and release processes online to Github Actions.

Co-authored-by: George Gelashvili <ggelashvili@vmware.com>
Co-authored-by: Alexander Berezovsky <aberezovsky@vmware.com>
At this point working in a workflow separate from build, for separation
of concerns between building&signing, and releasing.

This is a squashed commit of the gha-allplatforms branch, consisting of
the following changes :

- Upload mac installer to S3
- include mac installer in github release
- retrieve mac binaries in release job
- add write permission to github release job
- Add linux packages, and simplify CLAW upload steps
- Switch to sync action to support simpler CLAW S3 upload step
- Add linux packages to GH Release
- Update artifact names in release jobs
- aws s3 ls to debug s3 upload
- bump aws s3 sync to non-default-region change

Co-authored-by: Alexander Berezovsky <aberezovsky@vmware.com>
Co-authored-by: Alexander Berezovsky <aberezovsky@vmware.com>
Co-authored-by: Juan Diego Gonzalez <gojuan@vmware.com>
Update-repos workflow is in charge of updating and signing on a
repository level. This workflow should be triggered towards the end of
the release process after all packages are available via distribution
network (after CLAW update). It will update the following repositories:

- Homebrew formula in homebrew-tap git repository
- RPM repo hosted on S3
- Debian repo hosted on S3

Current implementations of the update-repos workflow is matching offline
release process.

Following updates are recommended:

- Implement backup and disaster recovery procedure

- Debian
  - fill license and vendor fields
- RPM
  - sign on the repo level
- Homebrew
  - add arm architecture

Co-authored-by: George Gelashvili <ggelashvili@vmware.com>
@a-b a-b requested review from gururajsh and jdgonzaleza March 18, 2022 19:02
@reedr3 reedr3 self-requested a review March 21, 2022 16:34
Copy link
Contributor

@reedr3 reedr3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me

Copy link
Contributor

@jdgonzaleza jdgonzaleza left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM,
Maybe we could delete those commented/unused code

Juan Diego Gonzalez and others added 2 commits April 18, 2022 12:06
Also, small change to sign-windows-binary.ps1 as
that step was already being done in the sign job

Signed-off-by: George Gelashvili <ggelashvili@vmware.com>
for use with the set-github-actions-env-vars.sh script,
or the github cli's 'secret set' subcommand directly

Signed-off-by: Pete Levine <lpete@vmware.com>
@a-b a-b removed the request for review from gururajsh April 18, 2022 21:10
Copy link
Member Author

@a-b a-b left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@pivotalgeorge
Copy link
Contributor

LGTM

@a-b a-b mentioned this pull request Apr 18, 2022
@pivotalgeorge pivotalgeorge merged commit d201936 into v8 Apr 19, 2022
PeteLevineA pushed a commit that referenced this pull request May 5, 2022
* Add Build-Sign-Release workflow

Commit summary below

Current state of CF CLI release infrastructure is offline and quite
outdated. To make our release process more transparent and inclusive we
decided to move build, signing and release processes online to Github Actions.
* Split out release/upload part of workflow
* Add capabilities to release workflow

At this point working in a workflow separate from build, for separation
of concerns between building&signing, and releasing.

This is a squashed commit of the gha-allplatforms branch, consisting of
the following changes :

- Upload mac installer to S3
- include mac installer in github release
- retrieve mac binaries in release job
- add write permission to github release job
- Add linux packages, and simplify CLAW upload steps
- Switch to sync action to support simpler CLAW S3 upload step
- Add linux packages to GH Release
- Update artifact names in release jobs
- aws s3 ls to debug s3 upload
- bump aws s3 sync to non-default-region change

* Updated for build, release, and units workflows
* Add update-repos workflow

Update-repos workflow is in charge of updating and signing on a
repository level. This workflow should be triggered towards the end of
the release process after all packages are available via distribution
network (after CLAW update). It will update the following repositories:

- Homebrew formula in homebrew-tap git repository
- RPM repo hosted on S3
- Debian repo hosted on S3

Current implementations of the update-repos workflow is matching offline
release process.

Following updates are recommended:

- Implement backup and disaster recovery procedure

- Debian
  - fill license and vendor fields
- RPM
  - sign on the repo level
- Homebrew
  - add arm architecture

* Release pipelines updates
* Removes/Cleans comments

Also, small change to sign-windows-binary.ps1 as
that step was already being done in the sign job

* Update github actions secrets template

for use with the set-github-actions-env-vars.sh script,
or the github cli's 'secret set' subcommand directly

Co-authored-by: Alexander Berezovsky <aberezovsky@vmware.com>
Co-authored-by: George Gelashvili <ggelashvili@vmware.com>
Co-authored-by: Juan Diego Gonzalez <gojuan@vmware.com>
Signed-off-by: Pete Levine <lpete@vmware.com>
gururajsh pushed a commit that referenced this pull request May 17, 2022
* Add Build-Sign-Release workflow

Commit summary below

Current state of CF CLI release infrastructure is offline and quite
outdated. To make our release process more transparent and inclusive we
decided to move build, signing and release processes online to Github Actions.
* Split out release/upload part of workflow
* Add capabilities to release workflow

At this point working in a workflow separate from build, for separation
of concerns between building&signing, and releasing.

This is a squashed commit of the gha-allplatforms branch, consisting of
the following changes :

- Upload mac installer to S3
- include mac installer in github release
- retrieve mac binaries in release job
- add write permission to github release job
- Add linux packages, and simplify CLAW upload steps
- Switch to sync action to support simpler CLAW S3 upload step
- Add linux packages to GH Release
- Update artifact names in release jobs
- aws s3 ls to debug s3 upload
- bump aws s3 sync to non-default-region change

* Updated for build, release, and units workflows
* Add update-repos workflow

Update-repos workflow is in charge of updating and signing on a
repository level. This workflow should be triggered towards the end of
the release process after all packages are available via distribution
network (after CLAW update). It will update the following repositories:

- Homebrew formula in homebrew-tap git repository
- RPM repo hosted on S3
- Debian repo hosted on S3

Current implementations of the update-repos workflow is matching offline
release process.

Following updates are recommended:

- Implement backup and disaster recovery procedure

- Debian
  - fill license and vendor fields
- RPM
  - sign on the repo level
- Homebrew
  - add arm architecture

* Release pipelines updates
* Removes/Cleans comments

Also, small change to sign-windows-binary.ps1 as
that step was already being done in the sign job

* Update github actions secrets template

for use with the set-github-actions-env-vars.sh script,
or the github cli's 'secret set' subcommand directly

Co-authored-by: Alexander Berezovsky <aberezovsky@vmware.com>
Co-authored-by: George Gelashvili <ggelashvili@vmware.com>
Co-authored-by: Juan Diego Gonzalez <gojuan@vmware.com>
Signed-off-by: Pete Levine <lpete@vmware.com>
gururajsh added a commit that referenced this pull request May 17, 2022
gururajsh added a commit that referenced this pull request May 17, 2022
@moleske moleske deleted the gh-actions-v8-squashed branch August 24, 2023 23:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants