Skip to content

Add release workflow#40

Merged
sapphonie merged 17 commits into
masterfrom
release_ci
Sep 30, 2025
Merged

Add release workflow#40
sapphonie merged 17 commits into
masterfrom
release_ci

Conversation

@Kenzzer

@Kenzzer Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator

No description provided.

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

Welp upload went through but @asherkin you'll have to tell me where they ended up lol. It certainly isn't at builds.limetech.io/?test nor builds.limetech.io/?p=accelerator

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

@sapphonie do not merge this until situation above is solved, because I gotta add few more files to the workflow but I need to confirm upload is working first.

@asherkin

asherkin commented Sep 30, 2025

Copy link
Copy Markdown
Owner

It made it!

Not displayed on the page as the filename doesn't match the expected format - no incrementing ID for sorting builds with the same version number. I can get the regex it uses later, but matching the format of the existing git ones is probably easiest.

EDIT: /(?P<project>[\w-]*)(-(?P<version>[\w.\-]*))?-(hg|git)(?P<build>[\d]*)(-(?P<hash>[a-fA-F\d]*))?-(?P<platform>linux|mac|windows)\..*/

Can make that optional, but think it's needed.

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

Ah yes! I forgot the git rev count tag that's where it failed, fixing that right now.

@asherkin

Copy link
Copy Markdown
Owner

I'm guessing once added properly this'll never be uploading from a PR, but FWIW there's a branch param for non-master builds to stop them getting interleaved together (as the rev count only makes sense per-upstream-branch).

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

Okay well there's a mistake I zip both platform as "window" accelerator-2.6.0-git171-5c18c00-windows.zip hopefully that's why it didn't show up, otherwise this should match the provided regex.

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

This should be it ?

Begin upload...
Uploading accelerator-2.6.0-git172-10d51fc-windows.zip
Uploading accelerator-2.6.0-git172-10d51fc-linux.zip
Upload successful!

Unsure why the builds still don't show up.

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

I'm guessing once added properly this'll never be uploading from a PR, but FWIW there's a branch param for non-master builds to stop them getting interleaved together (as the rev count only makes sense per-upstream-branch).

Ah this comment got eaten while I was replying to the PR, my apologies I didn't mean to ignore. Yes I plan on restricting the upload script to push on master directly, but I'll also add the branch param just in case :)

@asherkin

Copy link
Copy Markdown
Owner

I see all the recent ones with ?test passed.

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

I see all the recent ones with ?test passed.

Oh right, that's where they went oops I forgot! I'll add the branch param then

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

New uploads succeeded but don't show up I assume that's because of the branch name check, which means everything's good ? I'm going to switch off release from PR workflow.

@asherkin

Copy link
Copy Markdown
Owner

That's "worked", but the branch was apparently just called "40"?

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

That's "worked", but the branch was apparently just called "40"?

Okay yeah that's wrong lol, github actions env variables are hard to understand. Time to investigate

@asherkin

Copy link
Copy Markdown
Owner

Turns out it was actually "40/merge", which has rather confused it - not what's expected either way though!

I'll fix it up at some point to turn slashes into hyphens or something though, just in case it is actually expected here.

@asherkin

Copy link
Copy Markdown
Owner

@Kenzzer Actually, I suspect that is the correct branch name, and what we'd want in the case of real test builds from PRs, so this probably is good to go!

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

For paranoia sake I'll add quotation marks around each query param just to ensure no weird parsing can happen. We should be getting "release_ci" though, I suspect it replaced it with "40/merge" because of this PR. I think if I tinker a bit with the triggers I can get "release_ci" to show up once more.

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

@Kenzzer Actually, I suspect that is the correct branch name, and what we'd want in the case of real test builds from PRs, so this probably is good to go!

Oh well same thoughts haha. I'll run one more quick test with the release CI if that's okay

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

We should have release_ci this time (I should have added a print tbh).

We must basically be careful when testing release.yml, we must edit the on.push trigger and not on.pull_requests as it will populate the ref env variable with that PR naming.

@sapphonie

Copy link
Copy Markdown
Collaborator

will this not push random untrusted prs to limetech as written?

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

will this not push random untrusted prs to limetech as written?

Thankfully no, secrets are disabled across forks even if somebody gets the bright idea to disable all the workflows/write their own to print secrets github won't allow it, a maintainer will have to approve the workflows.

Secrets are only shared with branches made on the same repo, so basically only you and I can do something nasty with the upload password.

@sapphonie

sapphonie commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

Do not worry if you see 9 jobs that's normal.

There's 4 jobs (Release) running for this branch release_ci and only this branch (and master ofc)

There's 5 jobs (Pull request) running for all pull requests to master.

So if @asherkin greenlights this, we can merge without further modifications to the workflow files.

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

Given the logs, my suspicions were correct

Begin upload for branch (release_ci)
Uploading accelerator-2.6.0-git175-af33953-windows.zip
Uploading accelerator-2.6.0-git175-af33953-linux.zip
Upload successful!

One simply has to be careful in how the workflow file is invoked; i.e must be limited to (push)

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

The "cool" thing in the way I made this is that we can add any amount of branches we want to the release workflow.

name: Release

on:
  workflow_dispatch:
  push:
    branches: [ master, release_ci ]

This will make any future dev easier, rather than having "if"(s) everywhere in the yml file and getting confused.

That also takes out the "release logic" out of the "build logic" keeping every yml file straight forward.

@asherkin

Copy link
Copy Markdown
Owner

Getting release_ci now, but the quotes are coming in the values themselves, so that's quite broken.

@Kenzzer

Kenzzer commented Sep 30, 2025

Copy link
Copy Markdown
Collaborator Author

Hmm gonna try %22, if it solves nothing then quotation less it is

@asherkin

Copy link
Copy Markdown
Owner

Hmm gonna try %22, if it solves nothing then quotation less it is

You don't want that - encoding them would guarantee them getting to the server, and they already are!

@asherkin

Copy link
Copy Markdown
Owner

https://builds.limetech.io/?p=accelerator&b=release_ci&test 🎉

@sapphonie

Copy link
Copy Markdown
Collaborator

okay yay 💜

@sapphonie sapphonie merged commit 0efbfbe into master Sep 30, 2025
10 checks passed
@sapphonie sapphonie deleted the release_ci branch September 30, 2025 15:19
@asherkin

Copy link
Copy Markdown
Owner

When I'm home and remember (lol), I'll swap the test password for the real one.

@Kenzzer

Kenzzer commented Oct 3, 2025

Copy link
Copy Markdown
Collaborator Author

👀 ?

@Kenzzer

Kenzzer commented Oct 17, 2025

Copy link
Copy Markdown
Collaborator Author

Hopefully this is just a sorting issue and not a bug. I just merged the PR #41 and created commit 3ed1266 and the subsequent test release build isn't at the top builds.limetech.io. Instead 2.6.0-10d51fc remains the "latest" build, even though it should be 2.6.0-3ed1266.

@Kenzzer

Kenzzer commented Oct 17, 2025

Copy link
Copy Markdown
Collaborator Author

Oh... I think I see the problem, this is probably linked to the revision tag. The wrong latest build is tagged with git172 but the real latest build is git162.

Okay nevermind then, this is just an unfortunate side effect of when we tested the CI. This issue won't appear on the real build page.

@asherkin

Copy link
Copy Markdown
Owner

When I'm home and remember (lol), I'll swap the test password for the real one.

It has been done.

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.

3 participants