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

Workflows #41

Open
wants to merge 31 commits into
base: new-ci-cd
Choose a base branch
from
Open

Workflows #41

wants to merge 31 commits into from

Conversation

Skenvy
Copy link

@Skenvy Skenvy commented Apr 22, 2023

CI/CD

Test workflow

  • On every push to every branch, lint.
  • On a push to a non-trunk branch, do a "quick" test.
  • On a push to the trunk branch, or a PR (or manual dispatch), run the full set of all tests against the targeted supported major versions.
  • On a push to the trunk branch, or a PR (or manual dispatch), run the build to confirm that the vsce build is happy.
  • On a push to the trunk branch, or a PR (or manual dispatch), do a CodeQL analysis.

Release workflow

  • On a push to the trunk branch, run the test workflow
  • Check both whether the package's version field has changed, and if that version's value already exists in a known release, to determine if we should proceed with building and releasing.
  • If the version field has updated and a tag does not already exist for that version, it will
    • Build the npm pack
    • Build the vsce package
    • Create a draft release with the new version tag.
  • After creating the release it will publish the package to GH and npm.
    • Requires a repository secret NPM_TOKEN.

Dependabot

  • daily check for updates to action's versions.
  • weekly check for updates to npm versions.

package[-lock].json

  • Add xvfb-maybe virtual display to run electron tests in headless workflow.
  • Scripts: separate lint from test, and add clean.
  • Update lockfile to be in sync (i.e. npm ci-able) with the package json.

Copy link
Owner

@yoavbls yoavbls left a comment

Choose a reason for hiding this comment

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

Thank you some much for this contribution!
These workflows will let us move faster and test things better.
I wrote only a few comments and set the NPM_TOKEN

.github/workflows/release.yml Outdated Show resolved Hide resolved
.gitignore Outdated Show resolved Hide resolved
package.json Outdated Show resolved Hide resolved
.github/workflows/test.yml Outdated Show resolved Hide resolved
.github/workflows/test.yml Outdated Show resolved Hide resolved
.github/workflows/release.yml Show resolved Hide resolved
.github/workflows/release.yml Outdated Show resolved Hide resolved
.github/workflows/release.yml Outdated Show resolved Hide resolved
.github/workflows/release.yml Outdated Show resolved Hide resolved
@yoavbls yoavbls changed the base branch from main to new-ci-cd March 1, 2024 10:20
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

2 participants