Skip to content

Is it possible to use non base editor image? #57

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

Closed
lvgrecords opened this issue Jan 11, 2021 · 7 comments
Closed

Is it possible to use non base editor image? #57

lvgrecords opened this issue Jan 11, 2021 · 7 comments

Comments

@lvgrecords
Copy link

lvgrecords commented Jan 11, 2021

I'm trying to use unityci/editor:2020.1.17f1-ios-0.7.0 but getting an error below:

Run webbertakken/[email protected]
/usr/bin/docker build /home/lvg/actions-runner/_work/_actions/webbertakken/unity-request-manual-activation-file/v2.0-alpha-1/action --file /home/lvg/actions-runner/_work/_actions/webbertakken/unity-request-manual-activation-file/v2.0-alpha-1/action/Dockerfile --build-arg IMAGE=unityci/editor:2020.1.17f1-ios-0.7.0-base-0 --tag unity-action:2020.1.17f1-ios-0.7.0-base-0
Sending build context to Docker daemon  133.1kB

Step 1/12 : ARG IMAGE
Step 2/12 : FROM $IMAGE
manifest for unityci/editor:2020.1.17f1-ios-0.7.0-base-0 not found: manifest unknown: manifest unknown
Error: The process '/usr/bin/docker' failed with exit code 1

My workflow:

name: Continuous Integration

on:
  pull_request: { }
  push: { branches: [ master ] }

env:
  UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
  UNITY_VERSION: 2020.1.17f1-ios-0.7.0

jobs:
  activation:
    name: Request manual activation file 🔑
    #    runs-on: ubuntu-20.04
    runs-on: self-hosted
    if: false #enable this job to request a manual unity license
    steps:
      - name: cleanup #https://github.com/actions/checkout/issues/211
        run: |
          sudo chown -R $USER:$USER $GITHUB_WORKSPACE
      - name: Checkout repository
        uses: actions/checkout@v2
      - name: Request manual activation file
        uses: webbertakken/[email protected]
        id: getManualLicenseFile
        with:
          unityVersion: ${{ env.UNITY_VERSION }}
      #          This will produce a Unity_xxx.alf file
      #          download it in your computer and upload it to
      #          https://license.unity3d.com/manual
      #          That will produce a Unity_xxx.ulf file
      #          add the contents of Unity_xxx.ulf file to your repository's secrets
      #          as UNITY_LICENSE
      #          then disable this job

Looks -base-0 is added on runtime. Are there ability to use editor+modules based docker images eg unityci/editor:2020.1.17f1-ios-0.7.0?
In case it's not supported at that moment I do not mind to add such support myself by PR

@webbertakken
Copy link
Member

webbertakken commented Jan 11, 2021

This is because you're specifying an editor image tag as the unity version, which is incorrect usage of the unityVersion parameter.

-base is added because licenses do not care about the target platform, so the most light weight image is chosen. Recommend first reading the readme at https://game.ci/docs.

@lvgrecords
Copy link
Author

@webbertakken thanks for the reply.

I've read docs before creating a ticket and did not found it. Anyway it looks not obvious to use base version in case exact one is specified. It would be useful either allow use exact version or specify it on docs.
Most probably I'm wrong but sharing same licence across different gableroux docker images for same unity version did not work for me ~8-10month ago. I'll recheck it.

I was sure that this feature is not supported in general for game.ci actions due unity-test-runner has exactly the same issue and I can't use iOS based image to run my tests.
Unfortunately using it's a required workaround for googlesamples/unity-jar-resolver#412
@webbertakken should I open a similar ticket for unity-test-runner repository?

@GabLeRoux
Copy link
Member

GabLeRoux commented Jan 11, 2021

Hi @lvgrecords

Most probably I'm wrong but sharing same licence across different gableroux docker images for same unity version did not work for me ~8-10month ago. I'll recheck it.

gableroux/unity3d docker images are being deprecated and will be replaced by game-ci/docker. Right now, it's still in alpha, but we solved the activation issue you just mentioned by hardocding the new docker image's machine id (and also we fixed many other problems). So your single license will work across all images with different components.

More details about docker images here:
https://game.ci/docs/game-ci/docker-images

@webbertakken
Copy link
Member

webbertakken commented Jan 11, 2021

I've read docs before creating a ticket and did not found it. Anyway it looks not obvious to use base version in case exact one is specified. It would be useful either allow use exact version or specify it on docs.

Unity Actions try to exactly abstract over that and keep things simple. All you should care about when filling out your unityVersion, is the Unity version.

Most probably I'm wrong but sharing same licence across different gableroux docker images for same unity version did not work for me ~8-10month ago. I'll recheck it.

This is one of the reasons to move to new images. We fixed that issue with these newer images that are used in unity actions >= v2.

I was sure that this feature is not supported in general for game.ci actions due unity-test-runner has exactly the same issue and I can't use iOS based image to run my tests.

Not sure which issue you're talking about when you say you can't use iOS images, but you should be able to build for iOS (just not IL2CPP). Please make sure you're using version 2 of the unity actions.

Unfortunately using it's a required workaround for googlesamples/unity-jar-resolver#412
@webbertakken should I open a similar ticket for unity-test-runner repository?

Yes if there is no issue related to the problem you are facing feel free to create one for it.

@GabLeRoux
Copy link
Member

GabLeRoux commented Jan 11, 2021

All you should care about when filling out your unityVersion, is the Unity version.

And we're even making this easier, v2 will auto detect your unity version based on ProjectSettings/ProjectVersion.txt, so no need to specify it at all 🎉

@lvgrecords
Copy link
Author

Unfortunately using it's a required workaround for googlesamples/unity-jar-resolver#412
@webbertakken should I open a similar ticket for unity-test-runner repository?

Yes if there is no issue related to the problem you are facing feel free to create one for it.

created a new one

@webbertakken
Copy link
Member

Example implementation in test runner https://github.com/game-ci/unity-test-runner/pull/84/files

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

No branches or pull requests

3 participants