diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b39e3da8..353b24eb 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -3,12 +3,13 @@ name: Release on: push: - branches: - - next-gen + tags: ["release"] + workflow_dispatch: + jobs: build: # Builds an x64 binary and an installer of TW Blue. - runs-on: windows-2019 + runs-on: windows-latest steps: - name: clone repo uses: actions/checkout@v4 @@ -22,14 +23,6 @@ jobs: - name: Install python packages run: python -m pip install -r requirements.txt - - name: Get nsis - run: | - iwr -useb get.scoop.sh -outfile 'install.ps1' - .\install.ps1 -RunAsAdmin - scoop update - scoop bucket add extras - scoop install nsis - - name: Build binary run: | .\scripts\build.ps1 @@ -37,12 +30,14 @@ jobs: - name: make installer run: | - cd src - python write_version_data.py - cd ../scripts + cd scripts makensis twblue.nsi - name: Create new release env: gh_token: ${{ github.token }} - run: gh release create snapshot -n "This release is a snapshot of the current development version of twblue." -p -t "Snapshot" scripts\TWBlue_setup.exe + run: | + mkdir .release-assets + mv scripts\TWBlue_setup.exe .release-assets\TWBlue_setup_$(cat version.txt).exe + 7z a -tzip .release-assets\TWBlue_portable_$(cat version.txt).zip scripts\TWBlue64 + gh release create release -p -t "Version $(cat version.txt)" .release-assets\TWBlue_setup_$(cat version.txt).exe .release-assets\TWBlue_portable_$(cat version.txt).zip diff --git a/.gitignore b/.gitignore index b28d20b6..d769453c 100644 --- a/.gitignore +++ b/.gitignore @@ -20,4 +20,5 @@ release-snapshot/ src/com_cache/ doc/strings.py doc/changelog.py -env/ \ No newline at end of file +env/ +version.txt diff --git a/scripts/build.ps1 b/scripts/build.ps1 index 0f92d849..0c37577a 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -10,6 +10,7 @@ echo "done." echo "Building binary..." cd src +python write_version_data.py python setup.py build cd .. echo "done." diff --git a/src/write_version_data.py b/src/write_version_data.py index 2136c3a0..7d097372 100644 --- a/src/write_version_data.py +++ b/src/write_version_data.py @@ -10,9 +10,10 @@ commit_info = requests.get("https://gitlab.com/api/v4/projects/23482196/reposito commit_info = commit_info.json() commit = commit_info["short_id"] print("Got new version info: {commit}".format(commit=commit,)) +new_version = commit_info["created_at"][:10].replace("-", ".") file = open("application.py", "r", encoding="utf-8") lines = file.readlines() -lines[-1] = 'version = "{}"'.format(commit_info["created_at"][:10].replace("-", ".")) +lines[-1] = 'version = "{}"'.format(new_version) file.close() file2 = open("application.py", "w", encoding="utf-8") file2.writelines(lines) @@ -22,9 +23,15 @@ print("Wrote application.py with the new version info.") print("Updating next version on installer setup...") file = open("..\\scripts\\twblue.nsi", "r", encoding="utf-8") contents = file.read() -contents = contents.replace("0.95", commit_info["created_at"][:10].replace("-", ".")) +contents = contents.replace("0.95", new_version) file.close() file2 = open("..\\scripts\\twblue.nsi", "w", encoding="utf-8") file2.write(contents) file2.close() print("done") + +print("Writing new version to version.txt") +version_txt = open("../version.txt", "w", encoding="utf8") +version_txt.write(new_version) +version_txt.close() +print("Done.")