-
Notifications
You must be signed in to change notification settings - Fork 19
feat: add windows installer #333
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
Changes from 22 commits
111ccb8
cca7a79
1521ce0
3a57786
6370764
8e12d4b
a32d411
e247c8d
23aad3d
65cdc18
c1b01aa
e2f573d
3134006
70b7287
413c192
5476bb9
4a7a7ea
7f4b99d
7fc3c91
6edcc1b
13a809e
312360e
4acaff0
4359f3a
f5b23a7
c3746d7
af27714
73b9de1
3adcb15
8305723
d121000
d76983c
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,53 @@ | ||
| # SPDX-FileCopyrightText: Contributors to Open-TYNDP <https://github.com/open-energy-transition/open-tyndp> | ||
| # | ||
| # SPDX-License-Identifier: MIT | ||
|
|
||
| name: Build and Attach Installer to Release | ||
|
|
||
| on: | ||
| release: | ||
| types: [published] | ||
| workflow_dispatch: | ||
| inputs: | ||
| release_tag: | ||
| description: 'Release tag to attach installer to' | ||
| required: true | ||
| type: string | ||
|
|
||
| jobs: | ||
| build-and-attach-installer: | ||
| name: Build Windows Installer and Attach to Release | ||
| runs-on: ubuntu-latest | ||
| permissions: | ||
| contents: write | ||
| steps: | ||
| - uses: actions/checkout@v6 | ||
| with: | ||
| ref: ${{ github.event.release.tag_name || inputs.release_tag }} | ||
|
|
||
| - name: Setup Pixi | ||
| uses: prefix-dev/setup-pixi@v0.9.3 | ||
| with: | ||
| pixi-version: v0.59.0 | ||
| cache: true | ||
| cache-write: false | ||
|
|
||
| - name: Get version from release tag | ||
| id: get_version | ||
| run: | | ||
| TAG="${{ github.event.release.tag_name || inputs.release_tag }}" | ||
| VERSION=${TAG#v} | ||
| echo "version=$VERSION" >> $GITHUB_OUTPUT | ||
| echo "tag=$TAG" >> $GITHUB_OUTPUT | ||
|
|
||
| - name: Build Windows installer | ||
| env: | ||
| VERSION: ${{ steps.get_version.outputs.version }} | ||
| run: | | ||
| utils/windows-installer/build_installer.sh | ||
|
|
||
| - name: Upload installer to release | ||
| env: | ||
| GH_TOKEN: ${{ github.token }} | ||
| run: | | ||
| gh release upload ${{ steps.get_version.outputs.tag }} utils/windows-installer/open-tyndp-*.exe --clobber |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -13,6 +13,29 @@ The subsequently described installation steps are demonstrated as shell commands | |
| directory in which the commands following the ``%`` should be entered. | ||
|
|
||
|
|
||
| .. _windows_installer: | ||
|
|
||
| Windows Installer (Recommended for Windows) | ||
| ============================================ | ||
|
coroa marked this conversation as resolved.
Outdated
|
||
|
|
||
| For Windows users, the easiest way to install Open-TYNDP is using the automated installer. Download the latest installer executable (e.g., ``open-tyndp-0.4.0-pixi-Windows-x86_64.exe``) from the `GitHub releases page <https://github.com/open-energy-transition/open-tyndp/releases>`__ and run it. | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What do you think about releasing a v0.4.2 to get the installer attached to the latest release?
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. that would be ideal i think. |
||
|
|
||
| The installer will: | ||
|
|
||
| 1. Install pixi package manager to ``%LOCALAPPDATA%\open-tyndp`` | ||
| 2. Extract the repository files to your chosen installation directory | ||
| 3. Set up the conda environment automatically via ``pixi install`` | ||
| 4. Create Start Menu shortcuts for easy access: | ||
|
|
||
| - **Open-TYNDP PowerShell** - Launch PowerShell with environment activated | ||
| - **Open-TYNDP Command Prompt** - Launch Command Prompt with environment activated | ||
|
|
||
| For more details about the installer, see ``utils/windows-installer/README.md`` in the repository. | ||
|
|
||
| .. note:: | ||
| If you prefer manual installation or need more control over the setup process, follow the instructions below for cloning the repository and installing dependencies manually. | ||
|
|
||
|
|
||
| .. _clone_repo: | ||
|
|
||
| Clone the Repository | ||
|
|
||
Large diffs are not rendered by default.
|
tgilon marked this conversation as resolved.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is difficult to review. Have you tested it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, this is still untested. it would need to be run on an existing release. i think i could run it on 0.4.1.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd propose to merge this and #357 now and try to create a 0.4.2a1 release, ie. an alpha release.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good for me to release an alpha. Following the SemVer convention, I would suggest v0.4.2-alpha and mark it as a pre-release.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As always everyone has their own ideas about how stuff ideally looks like: Python packaging user guide, but python is flexible and will be fine with your suggestion too, ie check the section on normalization.