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: Bump image version from 2 to 3 in Ubuntu #67

Merged
merged 4 commits into from
Jun 12, 2024

Conversation

thedrhax14
Copy link
Contributor

Changes

  • Bump image version in the ubuntu

Checklist

  • Read the contribution guide and accept the code of conduct
  • Documentation (updated or not needed)=not needed
  • Tests (added, updated or not needed)=not needed

Additional changes still need

The orb needs to clarify which image versions or Docker repo versions are supported in circle ci otherwise developers may stuck when getting this error in more latest versions of unity editor:

Starting container unityci/editor:ubuntu-2022.3.27f1-linux-il2cpp-2
Warning: No authentication provided, using CircleCI credentials for pulls from Docker Hub.
  image cache not found on this host, downloading unityci/editor:ubuntu-2022.3.*-linux-il2cpp-2

Error response from daemon: manifest for unityci/editor:ubuntu-2022.3.*-linux-il2cpp-2 not found: manifest unknown: manifest unknown

The issue is discussed more in details here #64

Changes
- Bump image version in the ubuntu
@thedrhax14
Copy link
Contributor Author

I just realized that it worth to specify image version number from params instead like it is achieved in forked repo here but not sure what changes should be made

src/executors/ubuntu.yml Outdated Show resolved Hide resolved
@thedrhax14 thedrhax14 changed the title fix: Bump image version from 2 to 3.1.0 in Ubuntu and Windows fix: Bump image version from 2 to 3.1.0 in Ubuntu Jun 12, 2024
src/executors/ubuntu.yml Outdated Show resolved Hide resolved
@GabLeRoux GabLeRoux changed the title fix: Bump image version from 2 to 3.1.0 in Ubuntu fix: Bump image version from 2 to 3 in Ubuntu Jun 12, 2024
@GabLeRoux GabLeRoux merged commit 1e392fe into game-ci:main Jun 12, 2024
@merthekimci-rg
Copy link

@GabLeRoux how come the version published on CircleCI repo does not reflect the change from 2->3 for Ubuntu docker images?

@GabLeRoux
Copy link
Member

GabLeRoux commented Nov 22, 2024

I think we need to create a new release for it. By digging slightly deeper, I've found some issues related to activation as well. I'll see what I can do.

I think the plan should look as follows:

Step Status Details
1 ✅ Done Setup versions (tags and releases) for the related GitLab project. Releases available here.
2 ✅ Done Merge support for version 3 images on the GitLab project, including activation fixes. See v4.0.0 release.
3 ✅ In progress Update GitLab orb usage to reference working scripts. See issues: #82 and #83.
4 ⏸️ Pending Create a blank Unity project to test the orb integration.
5 ⏸️ Pending Create a release for the updated orb integration.

edit: Created a hotfix to reference working script: https://github.com/game-ci/unity-orb/releases/tag/v1.7.1

I'll try to do this for the next few hours, this should help us unblock the orb usage.

Also note that the dependency on the gitlab project is not the best thing ever, but I'll make sure to document it. We had some discussions about creating some kind of cli or shared logic to ease the maintenance of several tools using our build tools, this would be ideal, but in the meantime, I'm sure we can get this orb back on track.

A simple solution would probably be to host a copy of the before_script.sh here instead, but pointing to a version would still be better than how it is currently setup anyway.

You can subscribe to the releases of this project so you should get notified when there's something to test:

On project's home page:

Watch > Custom

CleanShot 2024-11-21 at 19 20 59@2x

Then check Releases:

CleanShot 2024-11-21 at 19 16 59@2x

@merthekimci-rg
Copy link

Wow, that's what I call an answer :D Thanks for the detailed help. I've subscribed to the releases. Good news is I've found out that I'm not an idiot, and my CircleCI pipeline was failing for a valid reason not of my own doing. Bad news is I've spent 4 hrs to notice this and convince myself :) Looking forward to that release.

@GabLeRoux
Copy link
Member

I've updated above comment with the plan that is currently in progress.

@merthekimci-rg
Copy link

@GabLeRoux any chance of getting that update on the public Orb so we can move on with our CI/CD pipeline?

@GabLeRoux
Copy link
Member

GabLeRoux commented Nov 26, 2024

I’ve created a hotfix release for the GitLab CI project update (v1.7.1), but it doesn't include the changes from PR #83. We're close to a working solution, but we need to do some testing before getting to a stable release.

To publish a new orb version, we need the tests to pass in the main repository. I’ve done the hotfix version as described in #87, but it'd be best to get the tests passing before moving forward.

Right now, we need to get the tests for PR #83 to work.

Here’s the status:

Edit: the tests had time to pass while I was writing this message 🎉

The PR #83 seems ready to merge (tests are passing 🚀), but it would be great if people could test it too. Also, extracting the serial from the Unity license isn’t ideal, but it works. If we go forward with this, we'll need to update some documentation.

If you'd like to give it a try here's an untested draft based on what I've found in the ReadMe of the project:

#!/bin/bash

# Set variables
ORG_ID="<your-organization-id>"           # Replace with your CircleCI organization ID
NAMESPACE="<my-namespace>"                # Replace with your desired namespace
ORB_NAME="<my-orb-name>"                  # Replace with your desired orb name

REPO_URL="[email protected]:game-ci/unity-orb.git"
BRANCH_NAME="feature/refactor-orb-activation-to-serial"

# Clone the Unity Orb repository and checkout the feature branch
git clone $REPO_URL
cd unity-orb
git checkout $BRANCH_NAME

# Create the namespace on CircleCI
echo "Creating CircleCI namespace..."
circleci namespace create $NAMESPACE --org-id $ORG_ID

# Create the orb in the specified namespace
echo "Creating CircleCI orb..."
circleci orb create $NAMESPACE/$ORB_NAME --private

# Pack the orb from the src directory
echo "Packing the orb..."
circleci orb pack src > unity-orb.yml

# Publish the orb to CircleCI with version `dev:$BRANCH_NAME`
echo "Publishing the orb..."
circleci orb publish unity-orb.yml $NAMESPACE/$ORB_NAME@dev:$BRANCH_NAME

# Promote the orb to a patch version
# echo "Promoting the orb..."
# circleci orb publish promote $NAMESPACE/$ORB_NAME@dev:$BRANCH_NAME patch

echo "Orb has been created, packed, published, and promoted successfully!"

I plan to improve these instructions once I have some time to test them with #80

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