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

chore(ci): add automated dev releases #467

Merged
merged 5 commits into from
Jan 30, 2024
Merged

Conversation

rwaskiewicz
Copy link
Member

@rwaskiewicz rwaskiewicz commented Jan 26, 2024

Pull request checklist

Please check if your PR fulfills the following requirements:

  • Docs have been reviewed and added / updated if needed (for bug fixes / features)
  • Build (npm run build) was run locally and any changes were pushed
  • Tests (npm test) were run locally and passed
  • Prettier (npm run prettier) was run locally and passed

Pull request type

Please check the type of change your PR introduces:

  • Bugfix
  • Feature
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • Documentation content changes
  • Other (please describe):

What is the current behavior?

Dev releases don't exactly exist for this project. Prereleases are cut and published to the npm registry.

GitHub Issue Number: N/A

What is the new behavior?

this commit implements an initial workflow for dev releases for stencil
sass. it is capable of:

  • generating a build based using the same logic as other ci workflows
  • generating a dev build version
  • invoking a publish action with the dev version & 'dev' tag

a new publish action is added that is capable of incrementing the
version of the package and publishing changes to npm has been added. the
intent is to reuse this in some capacity for production releases.

this commit also includes additional actions for building the project &
downloading/uploading archives. to date, ci has been rather simplistic
in this repo. however, it's planned to integrate these actions into
existing workflows once this has been added to main.

Does this introduce a breaking change?

  • Yes
  • No

Testing

In a73de0c, I had a push event trigger enabled such that when I pushed this branch to GitHub, a dev build would get triggered. I considered this to be safe because:

  1. It built off the same workflow/steps as the create-stencil cli, which has dev releases
  2. I tested this without publishes enabled at first (commented out) - but I've squashed that commit away since then
  3. I figured worst case, since I verified the tag and version number, I'd push a bad dev release to npm
  4. https://github.com/ionic-team/stencil-sass/actions/runs/7668967472 shows a successful publish to the npm registry
Screenshot 2024-01-26 at 10 14 18 AM

I also ran the Framework CI workflow using a dev build of stencil sass, which passed https://github.com/ionic-team/ionic-framework/actions/runs/7669946636

Other information

@rwaskiewicz rwaskiewicz marked this pull request as ready for review January 26, 2024 15:35
@rwaskiewicz rwaskiewicz requested a review from a team as a code owner January 26, 2024 15:35
Copy link
Member

@christian-bromann christian-bromann left a comment

Choose a reason for hiding this comment

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

A lot of pipeline code seems very similar to the @stencil/store project. I think there is a way to define these actions in a separate repository and commonly use them across multiple projects. I guess another Jedi day project 😉

LGTM 👍

Copy link
Member

@tanner-reits tanner-reits left a comment

Choose a reason for hiding this comment

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

Yep, the same as our other workflows (for the most part). Time for a monorepo! 😂

this commit implements an initial workflow for dev releases for stencil
sass. it is capable of:

- generating a build based using the same logic as other ci workflows
- generating a dev build version
- invoking a publish action with the dev version & 'dev' tag

a new publish action is added that is capable of incrementing the
version of the package and publishing changes to npm has been added. the
intent is to reuse this in some capacity for production releases.

this commit also includes additional actions for building the project &
downloading/uploading archives. to date, ci has been rather simplistic
in this repo. however, it's planned to integrate these actions into
existing workflows once this has been added to `main`.
@rwaskiewicz rwaskiewicz enabled auto-merge (squash) January 30, 2024 18:08
@rwaskiewicz rwaskiewicz merged commit 99008b4 into main Jan 30, 2024
4 checks passed
@rwaskiewicz rwaskiewicz deleted the rwaskiewicz/dev-publish branch January 30, 2024 18:09
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.

None yet

3 participants