Conversation
|
@vilmibm To avoid checking in node_modules, you can build a "dist" file using ncc and check that in instead. It produces a standalone program with no depedencies other than node stdlib. The problem is that you have to regenerate that file on every commit, though. Maybe its better to switch to that approach only when you're done testing. |
|
@mislav that was my plan. i have a lot more finicky debugging and pushing ahead of me. |
775a8b0 to
54b2465
Compare
270a813 to
10116b0
Compare
mislav
left a comment
There was a problem hiding this comment.
Looks great! Thank you for the hard work on this 🏆 🏆
Final note on housekeeping: could we move all release-related things under the script/ directory? This would be mostly to reduce clutter in the root directory.
.github/actions/build-msi/index.js
Outdated
| async function go_msi(version, exePath) { | ||
| const options = {}; | ||
| options.listeners = { | ||
| stdout: logData, |
There was a problem hiding this comment.
I think that if we don't specify listeners at all, the default will be to pipe stdout to process.stdout and stderr to process.stderr, which is a good default that lets us clean up logData.
There was a problem hiding this comment.
ah yeah that's leftover from initial debugging
.github/actions/build-msi/index.js
Outdated
|
|
||
| addToPath(wixPath); | ||
|
|
||
| go_msi(version, exePath); |
There was a problem hiding this comment.
This should await, otherwise any async exception thrown in go_msi will not be subject to the catch block below
.github/actions/build-msi/index.js
Outdated
| await exec.exec( | ||
| '"C:\\Program Files\\go-msi\\go-msi.exe"', | ||
| ['make', | ||
| '--msi', 'gh.msi', |
There was a problem hiding this comment.
Could the exact .msi filename be passed in as action input, or at least emitted as action output, to allow scripting that doesn't have to guess the produced filename?
.github/actions/build-msi/index.js
Outdated
| ['make', | ||
| '--msi', 'gh.msi', | ||
| '--out', buildPath, // default build loc fails | ||
| '--keep', // TODO needed? |
There was a problem hiding this comment.
I don't think this is necessary anymore
There was a problem hiding this comment.
evidently not, deleted
.github/actions/build-msi/index.js
Outdated
|
|
||
| try { | ||
| const exePath = core.getInput('exe'); | ||
| const version = github.context.ref.replace('refs/tags/', ''); |
There was a problem hiding this comment.
Should we also strip away the leading v? I wasn't sure whether Wix or Windows installers would handle the leading "v", so I was building installers up until now without the "v" prefix; e.g. 0.3.5.
There was a problem hiding this comment.
the v seems to work fine; it builds, installs, and reports a proper version in settings.
| needs: msi | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - name: Checkout |
There was a problem hiding this comment.
Do we need to run the checkout action here? I wonder if copy-release or bump-homebrew need project files being checked out at all
There was a problem hiding this comment.
we do. i put this in because it failed without it. the github context isn't populated.
| project_name: gh | ||
|
|
||
| release: | ||
| prerelease: auto |
| Set-StrictMode -Version Latest | ||
| $ErrorActionPreference = "Stop" | ||
|
|
||
| $thumbprint = "fb713a60a7fa79dfc03cb301ca05d4e8c1bdd431" |
There was a problem hiding this comment.
I wonder if we could pass this by environment variable too, and specify it in the workflow file? Maybe it would be more visible when the cert needs to be rotated in the future
There was a problem hiding this comment.
i'm okay punting on it, i assume rotation won't be frequent
| ] | ||
| }, | ||
| "shortcuts": {}, | ||
| "choco": { |
There was a problem hiding this comment.
Do we need the "choco" section even though we're not using that part of go-msi functionality?
There was a problem hiding this comment.
i'd like us to be installable via choco eventually so i was going to leave it in.
This commit: - Adds config for building Windows installers - Adds an action for fetching exe files built by goreleaser - Adds an action for building Windows installers - Adds an action for adding MSI files to an existing GH release - Adds MSI signing to our release flow - Disables homebrew formula bumping for prereleases - Allows the release asset copying action to copy windows assets
remove all deprecation messages and deprecated functionality
Adjust correct version variable with goreleaser
This PR:
Closes #155