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

Fix 3.5.3 segfault when running CI #147

Draft
wants to merge 3 commits into
base: 3.5
Choose a base branch
from

Conversation

Razzlegames
Copy link

@Razzlegames Razzlegames commented Aug 4, 2024

Fixes: #121

I went off of tag: 3.5-stable but I'm unsure what branch to make this PR against, as no 3.5 branch exists?

  • Didn't fix mono build in this PR
  • All that I changed was the Dockerfile

@Razzlegames Razzlegames changed the base branch from 3.2 to 3.5 August 4, 2024 22:03
@Calinou
Copy link
Collaborator

Calinou commented Aug 5, 2024

Looks good, the only thing I'm worried about is that I'm not sure if this repository is set up to publish parallel branches correctly. In short, we want to be able to keep publishing releases of both 3.x and 4.x. When a new 3.x release is published however, it should not be considered the latest and cause existing 4.x users to switch over to 3.x until a new 4.x release is made (if they don't pin the Docker image version).

cc @TheOrioli

@Calinou Calinou added the bug Something isn't working label Aug 5, 2024
@TheOrioli
Copy link
Contributor

@Calinou I've looked through the workflows.

It seems that manual builds will not overwrite the latest tag, but the regular release builds will.

Which means in case of a 3.5.4 release, the latest will be overwritten by Godot 3 😟

- name: Build and push Docker images
uses: docker/[email protected]
with:
context: .
file: Dockerfile
push: true
tags: |
ghcr.io/${{ env.IMAGE_OWNER }}/${{ env.IMAGE_NAME }}:${{ needs.version.outputs.version }}
ghcr.io/${{ env.IMAGE_OWNER }}/${{ env.IMAGE_NAME }}:latest
${{ secrets.DOCKERHUB_USERNAME }}/${{ env.IMAGE_NAME }}:latest
${{ secrets.DOCKERHUB_USERNAME }}/${{ env.IMAGE_NAME }}:${{ needs.version.outputs.version }}
build-args: |
GODOT_VERSION=${{ needs.version.outputs.version }}
RELEASE_NAME=${{ needs.version.outputs.release_name }}
GODOT_TEST_ARGS=${{ startsWith( needs.version.outputs.version, '3.' ) && '' || '--headless --quit' }}
GODOT_PLATFORM=${{ startsWith( needs.version.outputs.version, '3.' ) && 'linux_headless.64' || 'linux.x86_64' }}

This best way to fix this might be with some reusable workflows that pass along an override_latest bool as an input, which is figured out by parsing the godot version string.

@Razzlegames
Copy link
Author

Darn, I'm just surprised anyone uses latest for this context at all. I suppose latest is for running against Godot master branch etc.

Any suggested edits, I'm all for :) . If I have time I can play with this but I doubt I'd be allowed to test and validate the push automation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants